ACKme Logo WiConnect Host Library- API Reference Guide
 
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
File.h
1 
29 #pragma once
30 
31 
32 #include "Wiconnect.h"
33 
34 namespace wiconnect
35 {
36 
37 
44 class File
45 {
46 public:
47  File(int rxBufferLen = 0, void *rxBuffer = NULL);
48  ~File();
49 
50  const char* getName() const;
51  uint32_t getSize() const;
52  FileType getType() const;
53  FileFlags getFlags() const;
54  uint32_t getVersion() const;
55  const char* getVersionStr(char *buffer = NULL) const;
56 
57  WiconnectResult close();
58  WiconnectResult read(void* buffer, uint16_t maxLength, uint16_t *bytesRead);
59  WiconnectResult read(uint8_t **bufferPtr = NULL, uint16_t *bytesReadPtr = NULL);
60  WiconnectResult getc(uint8_t *c);
61  void clearRxBuffer();
62 
63  const File* getNext() const;
64  const File* getPrevious() const;
65 
66 protected:
67  WiconnectResult openForRead(uint8_t handle, const char *filename);
68  WiconnectResult initWithListing(const char *typeStr, const char *flagsStr, const char* sizeStr, const char *versionStr, const char *nameStr);
69 
70  uint8_t handle;
71  bool readEnabled;
72  char name[WICONNECT_MAX_FILENAME_SIZE];
73  uint32_t size;
74  FileType type;
75  FileFlags flags;
76  uint32_t version;
77  Wiconnect *wiconnect;
78  File *next;
79  File *previous;
80 
81  Buffer rxBuffer;
82 
83  void* operator new(size_t size);
84  void operator delete(void*);
85 
86  friend class FileInterface;
87  friend class FileList;
88 };
89 
90 }
WiConnect WiFi module file object.
Definition: File.h:44
WiconnectResult
API Result code.
WiConnect WiFi module file listing.
Definition: FileList.h:44
FileType
File type type.
FileFlags
File flags type.
#define WICONNECT_MAX_FILENAME_SIZE
The maximum Wiconnect Module flash filesystem filename length.
The root WiConnect library class. This class inheriets all WiConnect functionality.
The provides an interface for creating TCP/UDP/TLS/HTTP client sockets. A client socket connects to a...
Definition: FileInterface.h:68