|
| | Volatile (const std::function< std::unique_ptr< ObjectType >(void)> &object_factory, const char *object_name=nullptr, PersistentRegistry *persistent_registry=nullptr, mutils::DeserializationManager dm={{}}) noexcept(false) |
| | constructor 1 is for building a persistent<T> locally, load/create a log and register itself to a persistent registry. More...
|
| |
| | Volatile (Volatile &&other) noexcept(false) |
| | constructor 2 is move constructor. More...
|
| |
| | Volatile (const std::function< std::unique_ptr< ObjectType >(void)> &object_factory, const char *object_name, std::unique_ptr< ObjectType > &wrapped_obj_ptr, std::unique_ptr< PersistLog > &log_ptr, PersistentRegistry *persistent_registry=nullptr, mutils::DeserializationManager dm={{}}) noexcept(false) |
| | constructor 3 is for deserialization. More...
|
| |
| | Volatile (const Volatile &)=delete |
| | constructor 4, the default copy constructor, is disabled More...
|
| |
| virtual | ~Volatile () noexcept(true) |
| |
| | Persistent (const std::function< std::unique_ptr< ObjectType >(void)> &object_factory, const char *object_name=nullptr, PersistentRegistry *persistent_registry=nullptr, mutils::DeserializationManager dm={{}}) noexcept(false) |
| | constructor 1 is for building a persistent<T> locally, load/create a log and register itself to a persistent registry. More...
|
| |
| | Persistent (Persistent &&other) noexcept(false) |
| | constructor 2 is move constructor. More...
|
| |
| | Persistent (const char *object_name, std::unique_ptr< ObjectType > &wrapped_obj_ptr, const char *log_tail=nullptr, PersistentRegistry *persistent_registry=nullptr, mutils::DeserializationManager dm={{}}) noexcept(false) |
| | constructor 3 is for deserialization. More...
|
| |
| | Persistent (const Persistent &)=delete |
| | constructor 4, the default copy constructor, is disabled More...
|
| |
| virtual | ~Persistent () noexcept(true) |
| | destructor: release the resources More...
|
| |
| ObjectType & | operator* () |
| |
| ObjectType * | operator-> () |
| | overload the '->' operator to access the wrapped object More...
|
| |
| const ObjectType & | getConstRef () const |
| | get a const reference to the wrapped object More...
|
| |
| const std::string & | getObjectName () |
| | get object name More...
|
| |
| auto | get (const Func &fun, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get the latest Value of T. More...
|
| |
| std::unique_ptr< ObjectType > | get (mutils::DeserializationManager *dm=nullptr) |
| | get the latest Value of T, returns a unique pointer to the object More...
|
| |
| auto | get (const int64_t &ver, const Func &fun, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get a version of Value T, specified by version. More...
|
| |
| std::unique_ptr< ObjectType > | get (const int64_t &ver, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get a version of value T. More...
|
| |
| auto | get (const HLC &hlc, const Func &fun, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get a version of Value T, specified by HLC clock. More...
|
| |
| std::unique_ptr< ObjectType > | get (const HLC &hlc, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get a version of value T. More...
|
| |
| auto | getByIndex (int64_t idx, const Func &fun, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get a version of Value T. More...
|
| |
| std::unique_ptr< ObjectType > | getByIndex (int64_t idx, mutils::DeserializationManager *dm=nullptr) noexcept(false) |
| | get a version of value T. More...
|
| |
| void | trim (const TKey &k) noexcept(false) |
| | trim by version or index More...
|
| |
| void | truncate (const int64_t &ver) |
| | truncate the log More...
|
| |
| std::unique_ptr< ObjectType > | operator[] (const int64_t ver) noexcept(false) |
| | syntax sugar: get a specified version of T without DSM More...
|
| |
| std::unique_ptr< ObjectType > | operator[] (const HLC &hlc) noexcept(false) |
| | syntax sugar: get a specified version of T without DSM More...
|
| |
| virtual int64_t | getNumOfVersions () noexcept(false) |
| | get the number of versions excluding trimmed ones. More...
|
| |
| virtual int64_t | getEarliestIndex () noexcept(false) |
| | get the earliest index excluding trimmed ones. More...
|
| |
| virtual int64_t | getEarliestVersion () noexcept(false) |
| | get the earliest version excluding trimmed ones. More...
|
| |
| virtual int64_t | getLatestIndex () noexcept(false) |
| | get the latest index excluding truncated ones. More...
|
| |
| virtual int64_t | getLatestVersion () noexcept(false) |
| | get the lastest version excluding truncated ones. More...
|
| |
| virtual const int64_t | getLastPersisted () noexcept(false) |
| | get the last persisted index. More...
|
| |
| virtual void | set (ObjectType &v, const version_t &ver, const HLC &mhlc) noexcept(false) |
| | make a version with a version number and mhlc clock More...
|
| |
| virtual void | set (ObjectType &v, const version_t &ver) noexcept(false) |
| | make a version with only a version number More...
|
| |
| virtual void | version (const version_t &ver) noexcept(false) |
| | make a version with only a version number, using the current state. More...
|
| |
| virtual const int64_t | persist () noexcept(false) |
| | persist till version More...
|
| |
| std::size_t | to_bytes (char *ret) const |
| | Write this class's marshalled representation into the array found at v. More...
|
| |
| std::size_t | bytes_size () const |
| | the size of the marshalled representation of this object. More...
|
| |
| void | post_object (const std::function< void(char const *const, std::size_t)> &f) const |
| | Pass a pointer to a buffer containing this class's marshalled representation into the function f. More...
|
| |
| virtual void | ensure_registered (mutils::DeserializationManager &) |
| |
| void | applyLogTail (mutils::DeserializationManager *dsm, char const *v) |
| |
| virtual void | print_performance_stat () |
| |
| virtual | ~ByteRepresentable () |
| |
template<typename ObjectType>
class persistent::Volatile< ObjectType >
Definition at line 601 of file Persistent.hpp.