ACKme Logo WiConnect Host Library- API Reference Guide
 
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
FileInterface.h
1 
29 #pragma once
30 
31 
32 #include "WiconnectTypes.h"
33 #include "types/FileList.h"
34 
35 
40 #define FILE_NAME_MAX_SIZE 96
41 
47 #define FILE_MAKE_VERSION(major, minor, patch, rc) ((unsigned int)((major) << 27)|(unsigned int)((minor) << 21)|(unsigned int)((patch) << 8)|(unsigned int)((rc) << 0))
48 
53 #define FILE_VERSION_ARGS(version) (unsigned int)((version >> 27) & 0x1F),(unsigned int)((version >> 21) & 0x3F),(unsigned int)((version >> 8) & 0x1FFF),(unsigned int)(version & 0xFF)
54 
55 
56 namespace wiconnect {
57 
58 
69 {
70 public:
93  WiconnectResult createFile(const ReaderFunc &reader, void *user, const char *name, uint32_t size, uint32_t version = 0, FileType type = FILE_TYPE_ANY, bool isEssential = false, int32_t checksum = -1);
94 
106  WiconnectResult openFile(WiconnectFile &file, const char *name);
107 
116  WiconnectResult deleteFile(const char *name);
117 
127 
145  WiconnectResult listFiles(FileList &list, const char *name = NULL, FileType type = FILE_TYPE_ANY, uint32_t version = 0);
146 
147 
148  // ------------------------------------------------------------------------
149 
150 
156  static const char* fileVersionIntToStr(uint32_t version, bool verbose = true, char *buffer = NULL);
157 
163  static bool fileVersionStrToInt(const char *versionStr, uint32_t *versionIntPtr);
164 
170  static const char* fileTypeToStr(FileType type);
171 
177  static const char* fileFlagsToStr(FileFlags flags, char *buffer = NULL);
178 
179 protected:
180  FileInterface(Wiconnect *wiconnect);
181 
182  WiconnectResult processFileList(char *responseStr, FileList &list, const char *name, FileType type, uint32_t version);
183 private:
184  Wiconnect *wiconnect;
185 };
186 
187 }
WiconnectResult
API Result code.
static bool fileVersionStrToInt(const char *versionStr, uint32_t *versionIntPtr)
Convert string to file version uint32.
static const char * fileTypeToStr(FileType type)
WiconnectResult listFiles(FileList &list, const char *name=NULL, FileType type=FILE_TYPE_ANY, uint32_t version=0)
List the files on the Wiconnect WiFi module filesystem.
WiConnect WiFi module file object.
Definition: WiconnectFile.h:44
WiConnect WiFi module file listing.
Definition: FileList.h:44
Generic data reading callback function.
Definition: ReaderFunc.h:45
WiconnectResult openFile(WiconnectFile &file, const char *name)
Open a file on the Wiconnect WiFi module filesystem for reading.
WiconnectResult deleteFile(const char *name)
Delete a file for the Wiconnect WiFi module filesystem.
FileType
File type type.
WiconnectResult createFile(const ReaderFunc &reader, void *user, const char *name, uint32_t size, uint32_t version=0, FileType type=FILE_TYPE_ANY, bool isEssential=false, int32_t checksum=-1)
Create a file on the Wiconnect WiFi module filesystem.
static const char * fileVersionIntToStr(uint32_t version, bool verbose=true, char *buffer=NULL)
Convert file version uint32 to string.
FileFlags
File flags type.
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
static const char * fileFlagsToStr(FileFlags flags, char *buffer=NULL)
Convert FileFlags to string.