PMDK C++ bindings  1.13.0-git107.g7e59f08f
This is the C++ bindings documentation for PMDK's libpmemobj.
common.hpp File Reference

Commonly used functionality. More...

#include <libpmemobj++/pexceptions.hpp>
#include <libpmemobj/tx_base.h>
#include <string>
#include <typeinfo>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 pmem
 Persistent memory namespace.
 
 pmem::obj
 Main libpmemobj namespace.
 
 pmem::obj::experimental
 Experimental implementations.
 
 pmem::detail
 Implementation details.
 

Macros

#define POBJ_CPP_DEPRECATED
 
#define LIBPMEMOBJ_CPP_ANNOTATE_HAPPENS_BEFORE(order, ptr)
 
#define LIBPMEMOBJ_CPP_ANNOTATE_HAPPENS_AFTER(order, ptr)
 
#define LIBPMEMOBJ_CPP_USE_HAS_TRIVIAL_COPY   0
 
#define LIBPMEMOBJ_CPP_IS_TRIVIALLY_COPYABLE(T)    std::is_trivially_copyable<T>::value
 

Functions

template<typename T >
void pmem::detail::conditional_add_to_tx (const T *that, std::size_t count=1, uint64_t flags=0)
 Conditionally add 'count' objects to a transaction. More...
 
template<typename T >
uint64_t pmem::detail::type_num ()
 Return type number for given type.
 
uint64_t pmem::detail::next_pow_2 (uint64_t v)
 Round up to the next lowest power of 2. More...
 
uint64_t pmem::detail::next_pow_2 (uint32_t v)
 Round up to the next lowest power of 2. More...
 
static int pmem::detail::Log2 (uint64_t x)
 
static uint8_t pmem::detail::mssb_index64 (unsigned long long value)
 Returns index of most significant set bit.
 
static uint8_t pmem::detail::mssb_index (unsigned int value)
 Returns index of most significant set bit.
 
static constexpr size_t pmem::detail::align_up (size_t size, size_t align)
 
static constexpr size_t pmem::detail::align_down (size_t size, size_t align)
 

Detailed Description

Commonly used functionality.