Components/IFS/src/include/IFS/FWFS/Object.h
Go to the documentation of this file.
43 * A file object may contain multiple data objects. These are treated as a contiguous block for file operations.
44 * This would potentially allow a file system builder to place common file blocks into shared data objects.
46 * Object names are from 0 to 255 characters, inclusive. The root directory has a zero-length name.
51 * non-directory named objects. For exaample, file object may contain named objects accessible thus:
62 * all the features of FWFS in a rewritable system, with all the benefits of SPIFFS wear-levelling.
109 // Everything in this header must be portable (at least, with other little-endian systems) so byte-align and pack it
305 }
345 }
416 }
439 };
470 }
uint8_t _contentSize
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:377
uint32_t value
32-bit identifier, e.g. volume ID
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:403
Object obj
The object structure.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:590
uint32_t checksum
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:432
bool isNamed() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:354
uint32_t contentSize() const
return size of object content, excluding header and size fields
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:537
constexpr uint32_t FWFILESYS_START_MARKER
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:244
constexpr size_t FWFS_BASE_OFFSET
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:241
struct IFS::FWFS::Object::@26::@28::@31::@35 objectAttributes
struct IFS::FWFS::Object::@26::@28::@31::@39 end
struct IFS::FWFS::Object::@26::@28::@31::@38 userAttribute
FileAttributes getFileAttributes(Object::Attributes objattr)
struct IFS::FWFS::Object::@26::@28::@31::@34 id32
size_t contentOffset() const
return offset to start of object content
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:522
#define FWFS_OBJTYPE_MAP(XX)
Object type identifiers.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:259
bool isMountPoint() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:369
uint32_t ID
Object identifier (offset from start of image)
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:290
struct IFS::FWFS::Object::@26::@28 data8
bool isRef() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:340
Definition: DirectoryTemplate.h:36
constexpr uint32_t FWFILESYS_END_MARKER
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:247
Compression compression
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:412
BitSet< uint8_t, Attribute, size_t(Attribute::MAX)> Attributes
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:325
uint32_t size() const
total size this object occupies in the image
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:575
uint8_t namelen
Length of object name.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:470
struct IFS::FWFS::Object::@26::@29 data16
FWObjDesc(Object::ID objId=0)
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:592
struct IFS::FWFS::Object::@26::@28::@31::@37 volumeIndex
struct IFS::FWFS::Object::@26::@30 data24
uint32_t getRef() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:345
Type type() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:327
Object::Attributes getObjectAttributes(FileAttributes fileAttr)
struct IFS::FWFS::Object::@26::@29::@40::@42 named
void setContentSize(size_t size)
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:548
Attribute
Object attributes.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:305
bool isData() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:359
uint8_t typeData
Stored type plus flag.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:285
struct IFS::FWFS::Object::@26::@28::@31::@33 ref
static constexpr uint8_t FWOBT_REF
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:299
uint32_t offset() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:596
void setType(Type type, bool isRef=false)
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:332
uint32_t childTableOffset() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:617
uint8_t _contentSizeHigh
Allows data up to 16MByte.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:494
bool isDir() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:364
uint32_t contentOffset() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:612
uint32_t childTableOffset() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:559
Object::ID id
location
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:589
struct IFS::FWFS::Object::@26::@28::@31::@36 ace
XX(value, tag, text)
uint8_t tagValue
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:426
uint32_t packedOffset
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:398
uint32_t childTableSize() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:565
FWFS Object Descriptor.
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:588
uint32_t nextOffset() const
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:601
static T at_offset(const void *current, int offset)
Definition: Components/IFS/src/include/IFS/FWFS/Object.h:228