remove bytereader/writer
This commit is contained in:
parent
29ccd43c7a
commit
ab981ee778
44
src/fs.hpp
44
src/fs.hpp
@ -149,48 +149,4 @@ private:
|
||||
BlocksBitmap m_blocks_bitmap = {};
|
||||
};
|
||||
|
||||
class ByteReader {
|
||||
public:
|
||||
template <typename Data>
|
||||
ByteReader(const Data* data)
|
||||
: m_data(reinterpret_cast<const u8*>(data)) {};
|
||||
|
||||
template <typename Data>
|
||||
requires std::is_integral_v<Data>
|
||||
auto operator>>(Data& v) -> ByteReader&
|
||||
{
|
||||
v = 0;
|
||||
for (std::size_t i = 0; i < sizeof(Data); ++i) {
|
||||
v |= *m_data << (sizeof(Data) - i - 1) * 8;
|
||||
m_data++;
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
private:
|
||||
const u8* m_data;
|
||||
};
|
||||
|
||||
class ByteWriter {
|
||||
public:
|
||||
template <typename Data>
|
||||
ByteWriter(Data* data)
|
||||
: m_data(reinterpret_cast<u8*>(data)) {};
|
||||
|
||||
template <typename Data>
|
||||
requires std::is_integral_v<Data>
|
||||
auto operator>>(Data& v) -> ByteWriter&
|
||||
{
|
||||
v = 0;
|
||||
for (std::size_t i = 0; i < sizeof(Data); ++i) {
|
||||
*m_data = v >> (sizeof(Data) - i - 1) * 8 & 0xff;
|
||||
m_data++;
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
private:
|
||||
u8* m_data;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user