Class faabric::util::SnapshotData

class SnapshotData

Public Functions

SnapshotData() = default
explicit SnapshotData(size_t sizeIn)
SnapshotData(size_t sizeIn, size_t maxSizeIn)
explicit SnapshotData(std::span<const uint8_t> dataIn)
SnapshotData(std::span<const uint8_t> dataIn, size_t maxSizeIn)
SnapshotData(const SnapshotData&) = delete
SnapshotData &operator=(const SnapshotData&) = delete
~SnapshotData()
void copyInData(std::span<const uint8_t> buffer, uint32_t offset = 0)
const uint8_t *getDataPtr(uint32_t offset = 0)
std::vector<uint8_t> getDataCopy()
std::vector<uint8_t> getDataCopy(uint32_t offset, size_t dataSize)
void mapToMemory(std::span<uint8_t> target)
void addMergeRegion(uint32_t offset, size_t length, SnapshotDataType dataType, SnapshotMergeOperation operation)
void fillGapsWithBytewiseRegions()
void clearMergeRegions()
std::vector<SnapshotMergeRegion> getMergeRegions()
size_t getQueuedDiffsCount()
void applyDiffs(const std::vector<SnapshotDiff> &diffs)
void applyDiff(const SnapshotDiff &diff)
void queueDiffs(const std::vector<SnapshotDiff> &diffs)
int writeQueuedDiffs()
inline size_t getSize() const
inline size_t getMaxSize() const
std::vector<SnapshotDiff> getTrackedChanges()
void clearTrackedChanges()
std::vector<faabric::util::SnapshotDiff> diffWithDirtyRegions(std::span<uint8_t> updated, const std::vector<char> &dirtyRegions)