libfoedus-core
FOEDUS Core Library
log_type.hpp File Reference
Include dependency graph for log_type.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 foedus
 Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
 
 foedus::log
 Log Manager, which writes out transactional logs.
 

Macros

#define X(a, b, c)   /** b: c. @copydoc c */ a = b,
 
#define X(a, b, c)   case a: return true;
 
#define X(a, b, c)   template <> inline CXX11_CONSTEXPR LogCode get_log_code< c >() { return a ; }
 

Enumerations

enum  foedus::log::LogCode {
  foedus::log::kLogCodeInvalid = 0, foedus::log::kLogCodeFiller = 0x3001, foedus::log::kLogCodeEpochMarker = 0x3002, foedus::log::kLogCodeDropLogType = 0x1011,
  foedus::log::kLogCodeArrayCreate = 0x1021, foedus::log::kLogCodeArrayOverwrite = 0x0022, foedus::log::kLogCodeArrayIncrement = 0x0023, foedus::log::kLogCodeSequentialTruncate = 0x1024,
  foedus::log::kLogCodeSequentialCreate = 0x1025, foedus::log::kLogCodeSequentialAppend = 0x0026, foedus::log::kLogCodeHashCreate = 0x1027, foedus::log::kLogCodeHashOverwrite = 0x0028,
  foedus::log::kLogCodeHashInsert = 0x0029, foedus::log::kLogCodeHashDelete = 0x002A, foedus::log::kLogCodeHashUpdate = 0x002B, foedus::log::kLogCodeMasstreeCreate = 0x1031,
  foedus::log::kLogCodeMasstreeOverwrite = 0x0032, foedus::log::kLogCodeMasstreeInsert = 0x0033, foedus::log::kLogCodeMasstreeDelete = 0x0034, foedus::log::kLogCodeMasstreeUpdate = 0x0035
}
 A unique identifier of all log types. More...
 
enum  foedus::log::LogCodeKind { foedus::log::kRecordLogs = 0, foedus::log::kStorageLogs = 1, foedus::log::kEngineLogs = 2, foedus::log::kMarkerLogs = 3 }
 Represents the kind of log types. More...
 

Functions

LogCodeKind foedus::log::get_log_code_kind (LogCode code)
 Returns the kind of the given log code. More...
 
bool foedus::log::is_valid_log_type (LogCode code)
 Returns if the LogCode value exists. More...
 
const char * foedus::log::get_log_type_name (LogCode code)
 Returns the names of LogCode enum defined in log_type.xmacro. More...
 
template<typename LOG_TYPE >
constexpr LogCode foedus::log::get_log_code ()
 Returns LogCode for the log type defined in log_type.xmacro. More...
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::log::FillerLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::log::EpochMarkerLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::DropLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::array::ArrayCreateLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::array::ArrayOverwriteLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::array::ArrayIncrementLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::sequential::SequentialTruncateLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::sequential::SequentialCreateLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::sequential::SequentialAppendLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::hash::HashCreateLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::hash::HashOverwriteLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::hash::HashInsertLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::hash::HashDeleteLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::hash::HashUpdateLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::masstree::MasstreeCreateLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::masstree::MasstreeOverwriteLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::masstree::MasstreeInsertLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::masstree::MasstreeDeleteLogType > ()
 
template<>
constexpr LogCode foedus::log::get_log_code< foedus::storage::masstree::MasstreeUpdateLogType > ()
 

Macro Definition Documentation

#define X (   a,
  b,
 
)    /** b: c. @copydoc c */ a = b,

Definition at line 157 of file log_type.hpp.

#define X (   a,
  b,
 
)    case a: return true;

Definition at line 157 of file log_type.hpp.

#define X (   a,
  b,
 
)    template <> inline CXX11_CONSTEXPR LogCode get_log_code< c >() { return a ; }

Definition at line 157 of file log_type.hpp.