Components/Storage/src/include/Storage/Device.h
PartitionTable mPartitions
Definition: Components/Storage/src/include/Storage/Device.h:187
String toLongString(Storage::Device::Type type)
Base class template for linked items with type casting.
Definition: LinkedObject.h:61
const PartitionTable & partitions() const
Provide read-only access to partition table.
Definition: Components/Storage/src/include/Storage/Device.h:62
virtual bool erase_range(storage_size_t address, storage_size_t size)=0
Erase a region of storage in preparation for writing.
XX(type, value, desc)
#define STORAGE_TYPE_MAP(XX)
Definition: Components/Storage/src/include/Storage/Device.h:17
~Device()
virtual uint32_t getId() const
Obtain device ID.
Definition: Components/Storage/src/include/Storage/Device.h:102
virtual uint16_t getSectorSize() const
Get sector size, the unit of allocation for block-access devices.
Definition: Components/Storage/src/include/Storage/Device.h:155
PartitionTable & editablePartitions()
Provide full access to partition table.
Definition: Components/Storage/src/include/Storage/Device.h:70
Definition: PartitionTable.h:26
Type
Storage type.
Definition: Components/Storage/src/include/Storage/Device.h:42
virtual storage_size_t getSectorCount() const
Obtain total number of sectors on this device.
Definition: Components/Storage/src/include/Storage/Device.h:163
static constexpr uint16_t defaultSectorSize
Definition: Components/Storage/src/include/Storage/Device.h:182
Definition: FileDevice.h:25
virtual bool sync()
Flush any pending writes to the physical media.
Definition: Components/Storage/src/include/Storage/Device.h:174
virtual bool read(storage_size_t address, void *dst, size_t size)=0
Read data from the storage device.
virtual size_t getBlockSize() const =0
Obtain smallest allocation unit for erase operations.
virtual storage_size_t getSize() const =0
Obtain addressable size of this device.
Represents a storage device (e.g. flash memory)
Definition: Components/Storage/src/include/Storage/Device.h:33
bool operator==(const String &name) const
Definition: Components/Storage/src/include/Storage/Device.h:54
String toString(Storage::Device::Type type)
virtual bool write(storage_size_t address, const void *src, size_t size)=0
Write data to the storage device.
size_t printTo(Print &p) const
bool loadPartitions(uint32_t tableOffset)
Load partition table entries @tableOffset Location of partition table to read.
Definition: Components/Storage/src/include/Storage/Device.h:80