36#ifndef NEKTAR_LIB_UTILITIES_BASIC_UTILS_CONSISTENT_ACCESS_OBJECT_HPP
37#define NEKTAR_LIB_UTILITIES_BASIC_UTILS_CONSISTENT_ACCESS_OBJECT_HPP
73 ASSERTL1(o !=
nullptr,
"Can't dereference null pointer.");
87 ASSERTL1(o !=
nullptr,
"Can't dereference null pointer.");
96template <
typename DataType>
101 ASSERTL1(o,
"Can't dereference null pointer.");
108 static DataType &
reference(
const std::shared_ptr<DataType> &o)
110 ASSERTL1(o,
"Can't dereference null pointer.");
113 static DataType *
pointer(
const std::shared_ptr<DataType> &o)
#define ASSERTL1(condition, msg)
Assert Level 1 – Debugging which is used whether in FULLDEBUG or DEBUG compilation mode....
static DataType * pointer(DataType *o)
static DataType & reference(DataType *o)
static bool ReferencesObject(DataType *o)
static const DataType & const_reference(DataType *o)
static const DataType * const_pointer(DataType *o)
static DataType & reference(const std::shared_ptr< DataType > &o)
static const DataType * const_pointer(const std::shared_ptr< DataType > &o)
static DataType * pointer(const std::shared_ptr< DataType > &o)
static const DataType & const_reference(const std::shared_ptr< DataType > &o)
static bool ReferencesObject(const std::shared_ptr< DataType > &o)
static const DataType * const_pointer(const DataType &o)
static bool ReferencesObject(const DataType &o)
static DataType * pointer(DataType &o)
static DataType & reference(DataType &o)
static const DataType & const_reference(const DataType &o)