Components/IFS/src/include/IFS/FileSystem.h
Go to the documentation of this file.
242 int res2 = setAttribute(file, AttributeTag::WriteAce, &acl.writeAccess, sizeof(acl.writeAccess));
Definition: Delegate.h:20
Installable File System base class.
Definition: Components/IFS/src/include/IFS/FileSystem.h:40
String getAttribute(const T &file, AttributeTag tag)
Definition: Components/IFS/src/include/IFS/FileSystem.h:199
int getAttribute(const char *file, AttributeTag tag, void *buffer, size_t size)
Definition: Components/IFS/src/include/IFS/FileSystem.h:170
int makedirs(const char *path)
Create a directory and any intermediate directories if they do not already exist.
int removeAttribute(const T &file, AttributeTag tag)
Definition: Components/IFS/src/include/IFS/FileSystem.h:206
int settime(const T &file, time_t mtime)
Set modification time for file.
Definition: Components/IFS/src/include/IFS/FileSystem.h:263
int setContent(const String &fileName, const char *content)
Definition: Components/IFS/src/include/IFS/FileSystem.h:386
int setattr(const T &file, FileAttributes attr)
Set file attributes.
Definition: Components/IFS/src/include/IFS/FileSystem.h:252
int setcompression(const T &file, const Compression &compression)
Set file compression information.
Definition: Components/IFS/src/include/IFS/FileSystem.h:276
bool removeUserAttribute(const T &file, uint8_t tagValue)
Definition: Components/IFS/src/include/IFS/FileSystem.h:228
virtual int opendir(const char *path, DirHandle &dir)=0
open a directory for reading
int stat(const String &path, Stat *s)
Definition: Components/IFS/src/include/IFS/FileSystem.h:81
file_size_t getSize(const String &fileName)
Definition: Components/IFS/src/include/IFS/FileSystem.h:293
int setContent(const char *fileName, const char *content)
Definition: Components/IFS/src/include/IFS/FileSystem.h:381
size_t getContent(const char *fileName, char *buffer, size_t bufSize)
FileHandle open(const String &path, OpenFlags flags=OpenFlag::Read)
Definition: Components/IFS/src/include/IFS/FileSystem.h:97
int getUserAttribute(const T &file, uint8_t tagValue, ParamTypes... params)
Definition: Components/IFS/src/include/IFS/FileSystem.h:218
file_offset_t readContent(FileHandle file, ReadContentCallback callback)
Read from current file position to end of file and invoke callback for each block read.
int setContent(const char *fileName, const void *content, size_t length)
int setContent(const String &fileName, const void *content, size_t length)
Definition: Components/IFS/src/include/IFS/FileSystem.h:391
int ftruncate(FileHandle file)
Definition: Components/IFS/src/include/IFS/FileSystem.h:103
size_t getContent(const String &fileName, char *buffer, size_t bufSize)
Definition: Components/IFS/src/include/IFS/FileSystem.h:350
int makedirs(const String &path)
Definition: Components/IFS/src/include/IFS/FileSystem.h:75
int setAttribute(const char *file, AttributeTag tag, const void *data, size_t size)
Definition: Components/IFS/src/include/IFS/FileSystem.h:150
int setUserAttribute(const T &file, uint8_t tagValue, ParamTypes... params)
Definition: Components/IFS/src/include/IFS/FileSystem.h:212
file_offset_t readContent(const String &filename, ReadContentCallback callback)
Read entire file content in blocks, invoking callback after every read.
int opendir(const String &path, DirHandle &dir)
open a directory for reading
Definition: Components/IFS/src/include/IFS/FileSystem.h:56
int setAttribute(const String &file, AttributeTag tag, const void *data, size_t size)
Definition: Components/IFS/src/include/IFS/FileSystem.h:155
virtual int ftruncate(FileHandle file, file_size_t new_size)=0
Truncate (reduce) the size of an open file.
int setContent(const String &fileName, const String &content)
Definition: Components/IFS/src/include/IFS/FileSystem.h:396
int getAttribute(const String &file, AttributeTag tag, void *buffer, size_t size)
Definition: Components/IFS/src/include/IFS/FileSystem.h:175
int stat(const String &path, Stat &s)
Definition: Components/IFS/src/include/IFS/FileSystem.h:85
int setAttribute(FileHandle file, AttributeTag tag, const void *data, size_t size)
Definition: Components/IFS/src/include/IFS/FileSystem.h:145
int setAttribute(const T &file, AttributeTag tag, const String &data)
Definition: Components/IFS/src/include/IFS/FileSystem.h:160
file_offset_t readContent(FileHandle file, size_t size, ReadContentCallback callback)
Read from current file position and invoke callback for each block read.
int rename(const String &oldpath, const String &newpath)
Definition: Components/IFS/src/include/IFS/FileSystem.h:129
int fstat(FileHandle file, Stat &stat)
Definition: Components/IFS/src/include/IFS/FileSystem.h:91
int truncate(const char *fileName, file_size_t newSize)
Truncate a file to a specific size.
String getUserAttribute(const T &file, uint8_t tagValue)
Definition: Components/IFS/src/include/IFS/FileSystem.h:223
int truncate(const String &fileName, file_size_t newSize)
Definition: Components/IFS/src/include/IFS/FileSystem.h:116
int getAttribute(const T &file, AttributeTag tag, String &value)
Definition: Components/IFS/src/include/IFS/FileSystem.h:180
static constexpr FileSystem * cast(IFileSystem *fs)
Definition: Components/IFS/src/include/IFS/FileSystem.h:47
virtual FileHandle open(const char *path, OpenFlags flags)=0
open a file (or directory) by path
int getAttribute(FileHandle file, AttributeTag tag, void *buffer, size_t size)
Definition: Components/IFS/src/include/IFS/FileSystem.h:165
int mkdir(const String &path)
Definition: Components/IFS/src/include/IFS/FileSystem.h:63
int remove(const String &path)
remove (delete) a file by path
Definition: Components/IFS/src/include/IFS/FileSystem.h:140
int setacl(const T &file, const ACL &acl)
Set access control information for file.
Definition: Components/IFS/src/include/IFS/FileSystem.h:239
static constexpr FileSystem & cast(IFileSystem &fs)
Definition: Components/IFS/src/include/IFS/FileSystem.h:42
IFS implementation of Host filing system.
Definition: Components/IFS/src/Arch/Host/include/IFS/Host/FileSystem.h:37
virtual int fsetxattr(FileHandle file, AttributeTag tag, const void *data, size_t size)=0
Set an extended attribute on an open file.
virtual int opendir(const char *path, DirHandle &dir)=0
open a directory for reading
virtual int getxattr(const char *path, AttributeTag tag, void *buffer, size_t size)=0
Get an attribute from a file given its path.
virtual int fgetxattr(FileHandle file, AttributeTag tag, void *buffer, size_t size)=0
Get an extended attribute from an open file.
virtual int ftruncate(FileHandle file, file_size_t new_size)=0
Truncate (reduce) the size of an open file.
virtual int setxattr(const char *path, AttributeTag tag, const void *data, size_t size)=0
Set an extended attribute for a file given its path.
virtual FileHandle open(const char *path, OpenFlags flags)=0
open a file (or directory) by path
const char * c_str() const
Get a constant (un-modifiable) pointer to String content.
Definition: WString.h:616
bool setLength(size_t length)
set the string length accordingly, expanding if necessary
void setString(const char *cstr)
size_t length(void) const
Obtain the String length in characters, excluding NUL terminator.
Definition: WString.h:243
Definition: Streams.h:25
FileSystem & getFileSystem()
Definition: DirectoryTemplate.h:37
Definition: Access.h:34