| 68 | } |
| 69 | |
| 70 | bool SegmentDataSource::loadData(std::uint64_t loadOffset, std::uint64_t loadSize, std::vector<std::uint8_t>& data) const |
| 71 | { |
| 72 | data.clear(); |
| 73 | |
| 74 | if (!isDataSet()) |
| 75 | return false; |
| 76 | |
| 77 | if (loadOffset >= getDataSize()) |
| 78 | return false; |
| 79 | |
| 80 | loadSize = loadOffset + loadSize >= getDataSize() ? getDataSize() - loadOffset : loadSize; |
| 81 | std::copy(_data.data() + loadOffset, _data.data() + loadOffset + loadSize, std::back_inserter(data)); |
| 82 | return true; |
| 83 | } |
| 84 | |
| 85 | bool SegmentDataSource::saveData(std::uint64_t saveOffset, std::uint64_t saveSize, const std::vector<std::uint8_t>& data) |
| 86 | { |