23 std::filesystem::path
path;
31 std::string
encode()
const;
90std::shared_ptr<OwnedCheckpointFile>
copyCheckpointFile(
const std::filesystem::path& source,
92 const std::filesystem::path& staging_base,
93 int source_descriptor = -1);
Definition AtomicOutputFile.hpp:25
void checkpointSeek(FILE *f, uint64_t offset)
Position an existing stream at an absolute checkpoint byte offset.
Definition CheckpointFile.cpp:109
uint64_t checkpointFileSize(const std::filesystem::path &path)
Read a checkpoint companion's validated size.
Definition CheckpointFile.cpp:101
std::shared_ptr< OwnedCheckpointFile > copyCheckpointFile(const std::filesystem::path &source, uint64_t bytes, const std::filesystem::path &base, int source_descriptor)
Copy and verify an exact source prefix into a private companion file.
Definition CheckpointFile.cpp:158
Definition CheckpointFile.hpp:22
uint64_t bytes
Definition CheckpointFile.hpp:24
static CheckpointFile decode(std::string)
Decode and validate a versioned companion-file contract.
Definition CheckpointFile.cpp:128
std::filesystem::path path
Definition CheckpointFile.hpp:23
std::string encode() const
Serialize this companion's path, length and fingerprint contract.
Definition CheckpointFile.cpp:119
uint64_t fingerprint
Definition CheckpointFile.hpp:24
void verify() const
Check the named companion's exact size and fingerprint.
Definition CheckpointFile.cpp:144
Definition CheckpointFile.hpp:52
~OwnedCheckpointFile()
Remove file.path when this owner has not called retain().
Definition CheckpointFile.cpp:151
CheckpointFile file
Definition CheckpointFile.hpp:53
bool owned
Definition CheckpointFile.hpp:54
void retain() noexcept
Release automatic removal responsibility for the companion file.
Definition CheckpointFile.hpp:66