MCPcopy Create free account
hub / github.com/LemonOSProject/LemonOS / DiskDevice

Class DiskDevice

Kernel/include/device.h:44–64  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

42class PartitionDevice;
43
44class DiskDevice : public Device{
45 friend class PartitionDevice;
46protected:
47 int nextPartitionNumber = 0;
48public:
49 DiskDevice();
50
51 int InitializePartitions();
52
53 virtual int ReadDiskBlock(uint64_t lba, uint32_t count, void* buffer);
54 virtual int WriteDiskBlock(uint64_t lba, uint32_t count, void* buffer);
55
56 virtual ssize_t Read(size_t off, size_t size, uint8_t* buffer);
57 virtual ssize_t Write(size_t off, size_t size, uint8_t* buffer);
58
59 virtual ~DiskDevice();
60
61 List<PartitionDevice*> partitions;
62 int blocksize = 512;
63private:
64};
65
66class PartitionDevice : public Device{
67public:

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected