Components/IFS/src/include/IFS/FWFS/ArchiveStream.h
Go to the documentation of this file.
107 template <typename... ParamTypes> int setUserAttribute(uint8_t tagValue, const ParamTypes&... params)
130 ArchiveStream(FileSystem* fileSystem, const VolumeInfo& volumeInfo, const String& rootPath = nullptr,
Passed to callbacks to allow modification of output data.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:77
FileSystem * getFileSystem() const
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:84
int setUserAttribute(uint8_t tagValue, const ParamTypes &... params)
Set an additional user attribute.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:107
FileInfo(ArchiveStream &stream, DirInfo &dir, FileHandle handle, const Stat &stat)
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:79
const Stat & stat
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:113
int setAttribute(AttributeTag tag, const void *data, size_t size)
Set an additional attribute on the file.
int setAttribute(AttributeTag tag, const String &data)
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:99
const FileHandle handle
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:112
Supports direct streaming into FWFS archive format.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:49
void onCreateEncoder(CreateEncoderCallback callback)
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:171
~ArchiveStream()
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:136
virtual IBlockEncoder * createEncoder(FileInfo &file)
Override this method to implement custom encoding such as compression or encryption.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:166
ArchiveStream(FileSystem *fileSystem, const VolumeInfo &volumeInfo, const String &rootPath=nullptr, Flags flags=0)
Construct an archive stream.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:130
int seekFrom(int offset, SeekOrigin origin) override
Change position in stream.
MimeType getMimeType() const override
Get MIME type for stream content.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:193
Delegate< bool(const Stat &stat)> FilterStatCallback
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:120
Delegate< IBlockEncoder *(FileInfo &file)> CreateEncoderCallback
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:121
bool isFinished() override
Check if all data has been read.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:188
bool isSuccess() const
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:198
Flag
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:53
@ IncludeMountPoints
Set to include mountpoints in archive.
void onFilterStat(FilterStatCallback callback)
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:153
uint16_t readMemoryBlock(char *data, int bufSize) override
Read a block of memory.
const String & getCurrentPath() const
Get the current path being processed.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:179
virtual bool filterStat(const Stat &stat)
Override this method to filter items.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:148
BitSet< uint8_t, Flag, 1 > Flags
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:57
Implementation of firmware filing system using IFS.
Definition: Components/IFS/src/include/IFS/FWFS/FileSystem.h:95
Virtual base class to support (file) data encryption and compression.
Definition: BlockEncoder.h:38
Definition: FsBase.h:34
const char * c_str() const
Get a constant (un-modifiable) pointer to String content.
Definition: WString.h:609
size_t length(void) const
Obtain the String length in characters, excluding NUL terminator.
Definition: WString.h:238
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:28
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:59
VolumeInfo & operator=(const IFileSystem::Info &fsinfo)
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:64
TimeStamp creationTime
Volume creation time, default is current system time (UTC)
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:62
String name
Volume Name.
Definition: Components/IFS/src/include/IFS/FWFS/ArchiveStream.h:60
uint32_t volumeID
Unique identifier for volume.
Definition: IFileSystem.h:127
1.9.1