23 #include "pedigree/kernel/machine/Disk.h" 24 #include "pedigree/kernel/processor/types.h" 25 #include "pedigree/kernel/utilities/StaticString.h" 26 #include "pedigree/kernel/utilities/String.h" 49 str2 +=
" partition at 0x";
50 str2.append(m_Start, 16);
52 str2.append(m_Start + m_Length, 16);
56 virtual uintptr_t
read(uint64_t location)
59 if (location > m_Length)
61 else if ((location + 0x1000) > m_Length)
71 pParent->
align(m_Start);
74 return pParent->
read(location + m_Start);
77 virtual void write(uint64_t location)
80 if (location > m_Length)
82 else if ((location + 0x1000) > m_Length)
92 pParent->
align(m_Start);
95 pParent->
write(location + m_Start);
uint64_t getLength() const
virtual size_t getBlockSize() const
Gets the block size of the disk.
virtual void getName(String &str)
String getPartitionType()
virtual uintptr_t read(uint64_t location)
virtual uintptr_t read(uint64_t location)
virtual size_t getBlockSize() const
Gets the block size of the disk.
virtual void write(uint64_t location)
virtual void write(uint64_t location)
virtual void dump(String &str)
virtual size_t getSize() const
Gets the size of the disk.
virtual void align(uint64_t location)
Sets the page boundary alignment after a specific location on the disk.
Device * getParent() const