diff options
author | 2025-03-02 22:32:09 -0500 | |
---|---|---|
committer | 2025-03-02 22:32:09 -0500 | |
commit | 7e62c257243f2fd1b1d29570271e51d6336ebfb9 (patch) | |
tree | 73178285154a3400168eab01d7c04c22f208fb72 /src/lib/formats/fsblk_vec.cpp | |
parent | acf0aeaa4bb4c149faee749043d575875feb53a2 (diff) |
fsblk.cpp: Internal overhaul
- Replace custom reference counting wrapper with std::shared_ptr
- Rename fsblk_t::block_t::copy to write and use it in a few more places
- Add fsblk_t::block_t::read
- Rename fsblk_t::block_t::offset and rooffset due to name collisions and privatize these helper functions
- Rename fsblk_t::fill to fill_all for clarity's sake
Diffstat (limited to 'src/lib/formats/fsblk_vec.cpp')
-rw-r--r-- | src/lib/formats/fsblk_vec.cpp | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/src/lib/formats/fsblk_vec.cpp b/src/lib/formats/fsblk_vec.cpp index e80cad8c51c..a04d60c263c 100644 --- a/src/lib/formats/fsblk_vec.cpp +++ b/src/lib/formats/fsblk_vec.cpp @@ -12,7 +12,7 @@ namespace fs { -const u8 *fsblk_vec_t::blk_t::rodata() +const u8 *fsblk_vec_t::blk_t::rodata() const { return m_data; } @@ -22,23 +22,19 @@ u8 *fsblk_vec_t::blk_t::data() return m_data; } -void fsblk_vec_t::blk_t::drop_weak_references() -{ -} - u32 fsblk_vec_t::block_count() const { return m_data.size() / m_block_size; } -fsblk_t::block_t fsblk_vec_t::get(u32 id) +fsblk_vec_t::block_t::ptr fsblk_vec_t::get(u32 id) { if(id >= block_count()) throw std::out_of_range(util::string_format("Block number overflow: requiring block %d on device of size %d (%d bytes, block size %d)", id, block_count(), m_data.size(), m_block_size)); - return block_t(new blk_t(m_data.data() + m_block_size*id, m_block_size)); + return std::make_shared<blk_t>(m_data.data() + m_block_size*id, m_block_size); } -void fsblk_vec_t::fill(u8 data) +void fsblk_vec_t::fill_all(u8 data) { std::fill(m_data.begin(), m_data.end(), data); } |