1 #ifndef PERSIST_NO_LOG_HPP 2 #define PERSIST_NO_LOG_HPP 4 #if !defined(__GNUG__) && !defined(__clang__) 5 #error PersistLog.hpp only works with clang and gnu compilers 8 #include "detail/util.hpp" 20 namespace fs = std::filesystem;
22 #include <experimental/filesystem> 23 namespace fs = std::experimental::filesystem;
32 template <
typename ObjectType, StorageType storageType = ST_FILE>
35 const char* object_name) noexcept(
false);
37 template <
typename ObjectType>
40 const char* object_name) noexcept(
false) {
41 saveNoLogObjectInFile<ObjectType, ST_MEM>(obj, object_name);
48 template <
typename ObjectType, StorageType storageType = ST_FILE>
50 const char* object_name,
53 template <
typename ObjectType>
55 const char* object_name,
57 return loadNoLogObjectFromFile<ObjectType, ST_MEM>(object_name, dm);
63 #endif //PERSIST_NO_LOG_HPP This file include all common types internal to derecho and not necessarily being known by a client pr...
void saveNoLogObjectInMem(ObjectType &obj, const char *object_name) noexcept(false)
The manager for any RemoteDeserializationContexts.
std::unique_ptr< ObjectType > loadNoLogObjectFromMem(const char *object_name, mutils::DeserializationManager *dm=nullptr) noexcept(false)
std::unique_ptr< ObjectType > loadNoLogObjectFromFile(const char *object_name, mutils::DeserializationManager *dm) noexcept(false)
load data from file
void saveNoLogObjectInFile(ObjectType &obj, const char *object_name) noexcept(false)
save object in file