Core/FileSystem.h
Go to the documentation of this file.
120 template <typename T> inline FileHandle fileOpen(const T& path, FileOpenFlags flags = File::ReadOnly)
232 template <typename TFileName> inline int fileSetContent(const TFileName& fileName, const char* content, size_t length)
238 template <typename TFileName, typename TContent> inline int fileSetContent(const TFileName& fileName, TContent content)
330 template <typename TFileName> inline size_t fileGetContent(const TFileName& fileName, char* buffer, size_t bufSize)
336 template <typename TFileName> inline size_t fileGetContent(const TFileName& fileName, char* buffer)
Definition: Core/FileSystem.h:36
IFS::FileSystem::Type fileSystemType()
Get the type of file system currently mounted (if any)
virtual int write(FileHandle file, const void *data, size_t size)=0
write content to a file at current position and advance cursor
virtual int check()
Perform a file system consistency check.
Definition: IFileSystem.h:496
int fileSetAttr(const T &filename, FileAttributes attr)
Set file attributes.
Definition: Core/FileSystem.h:527
virtual file_offset_t lseek(FileHandle file, file_offset_t offset, SeekOrigin origin)=0
change file read/write position
int createDirectories(const T &path)
Create a directory and all required parent directories.
Definition: Core/FileSystem.h:558
const char * c_str() const
Get a constant (un-modifiable) pointer to String content.
Definition: WString.h:616
int fileSetTime(FileHandle file, time_t mtime)
Set access control information for file.
Definition: Core/FileSystem.h:538
virtual int eof(FileHandle file)=0
determine if current file position is at end of file
virtual FileHandle open(const char *path, OpenFlags flags)=0
open a file (or directory) by path
file_size_t fileGetSize(const TFileName &fileName)
Get size of file.
Definition: Core/FileSystem.h:248
int fileTruncate(FileHandle file, file_size_t newSize)
Truncate (reduce) the size of an open file.
Definition: Core/FileSystem.h:261
bool fileExist(const char *fileName)
Check if a file exists on file system.
Definition: Core/FileSystem.h:398
virtual int opendir(const char *path, DirHandle &dir)=0
open a directory for reading
int fileRename(const char *oldName, const char *newName)
Rename file.
Definition: Core/FileSystem.h:295
String fileGetErrorString(int err)
get the text for a returned error code
Definition: Core/FileSystem.h:215
IFS::FileSystem * fileMountArchive(const String &filename)
Mount a backup archive.
Definition: Core/FileSystem.h:109
String fileGetContent(const TFileName &fileName)
Read content of a file.
Definition: Core/FileSystem.h:313
BitSet< uint8_t, FileAttribute, size_t(FileAttribute::MAX)> FileAttributes
File attributes are stored as a bitmask.
Definition: FileAttributes.h:56
int fileRewindDir(DirHandle dir)
Rewind to start of directory entries.
Definition: Core/FileSystem.h:473
file_offset_t fileTell(FileHandle file)
Get position in file.
Definition: Core/FileSystem.h:195
int fileSetACL(FileHandle file, const IFS::ACL &acl)
Set access control information.
Definition: Core/FileSystem.h:516
int fileCloseDir(DirHandle dir)
close a directory object
Definition: Core/FileSystem.h:452
Installable File System base class.
Definition: Components/IFS/src/include/IFS/FileSystem.h:39
bool fileMountFileSystem(IFS::IFileSystem *fs)
Mount a constructed filesystem with debug messages.
int fileOpenDir(const char *dirName, DirHandle &dir)
Open a named directory for reading.
Definition: Core/FileSystem.h:432
FileSystem * mountArchive(FileSystem &fs, const String &filename)
Mount an FWFS archive.
virtual int read(FileHandle file, void *data, size_t size)=0
read content from a file and advance cursor
int fileSetContent(const TFileName &fileName, const char *content, size_t length)
Create or replace file with defined content.
Definition: Core/FileSystem.h:232
int fileStats(const char *fileName, FileStat &stat)
Get file statistics.
Definition: Core/FileSystem.h:347
int fileWrite(FileHandle file, const void *data, size_t size)
Write to file.
Definition: Core/FileSystem.h:142
IFS::FileSystem * getFileSystem()
Get the currently active file system, if any.
Definition: Core/FileSystem.h:64
virtual int ftruncate(FileHandle file, file_size_t new_size)=0
Truncate (reduce) the size of an open file.
FileHandle fileOpen(const T &path, FileOpenFlags flags=File::ReadOnly)
Open file by path.
Definition: Core/FileSystem.h:120
int fileTouch(FileHandle file)
Update file modification time.
Definition: Core/FileSystem.h:152
virtual int flush(FileHandle file)=0
flush any buffered data to physical media
int createDirectory(const T &path)
Create a directory.
Definition: Core/FileSystem.h:548
Timer2Clock::Ticks< uint32_t > read()
Get elapsed watchdog time since last reset.
bool dirExist(const char *dirName)
Check if a directory exists on file system.
Definition: Core/FileSystem.h:414
int fileRead(FileHandle file, void *data, size_t size)
Read from file.
Definition: Core/FileSystem.h:163
int fileReadDir(DirHandle dir, FileStat &stat)
Read a directory entry.
Definition: Core/FileSystem.h:463
void fileSetFileSystem(IFS::IFileSystem *fileSystem)
Sets the currently active file system.
Definition: Access.h:34
virtual int rewinddir(DirHandle dir)=0
Reset directory read position to start.
int fileSystemFormat()
Format the active file system.
Definition: Core/FileSystem.h:496
int fileGetSystemInfo(IFS::FileSystem::Info &info)
Get basic file system information.
Definition: Core/FileSystem.h:482
int fileSystemCheck()
Perform a consistency check/repair on the active file system.
Definition: Core/FileSystem.h:505
file_offset_t fileSeek(FileHandle file, file_offset_t offset, SeekOrigin origin)
Position file cursor.
Definition: Core/FileSystem.h:175
virtual String getErrorString(int err)
get the text for a returned error code
Definition: IFileSystem.h:214
1.8.13