X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=localdb.h;h=2ffb196666e9916ce13c5f4f5a8a2b06bca26da4;hb=8f5e4e22660dba64b733acdaa9e4ed94731bdb72;hp=5901836f3c47e6ccc8e91f4822a93cc368c0feb6;hpb=64bff41cb3ccdd60e767a5bb9ed8525d2dda1966;p=cumulus.git diff --git a/localdb.h b/localdb.h index 5901836..2ffb196 100644 --- a/localdb.h +++ b/localdb.h @@ -31,6 +31,7 @@ #include +#include #include #include "ref.h" @@ -38,20 +39,21 @@ class LocalDb { public: void Open(const char *path, const char *snapshot_name, - const char *snapshot_scheme, double intent); + const char *snapshot_scheme); void Close(); - void StoreObject(const ObjectReference& ref, - const std::string &checksum, int64_t size, double age); + void StoreObject(const ObjectReference& ref, double age); ObjectReference FindObject(const std::string &checksum, int64_t size); bool IsOldObject(const std::string &checksum, int64_t size, double *age, int *group); bool IsAvailable(const ObjectReference &ref); void UseObject(const ObjectReference& ref); - void UseSegment(const std::string &segment, double utilization); - void SetSegmentChecksum(const std::string &segment, const std::string &path, - const std::string &checksum, int size); - bool GetSegmentChecksum(const std::string &segment, + std::set GetUsedSegments(); + void SetSegmentMetadata(const std::string &segment, const std::string &path, + const std::string &checksum, + const std::string &type, int data_size, + int disk_size); + bool GetSegmentMetadata(const std::string &segment, std::string *seg_path, std::string *seg_checksum); bool LoadChunkSignatures(ObjectReference ref,