36 #ifndef NEKTAR_LIB_UTILITIES_BASIC_UTILS_CONSISTENT_ACCESS_OBJECT_HPP
37 #define NEKTAR_LIB_UTILITIES_BASIC_UTILS_CONSISTENT_ACCESS_OBJECT_HPP
39 #include <boost/core/ignore_unused.hpp>
67 boost::ignore_unused(o);
76 ASSERTL1(o != 0,
"Can't dereference null pointer.");
90 ASSERTL1(o != 0,
"Can't dereference null pointer.");
99 template <
typename DataType>
104 ASSERTL1(o,
"Can't dereference null pointer.");
111 static DataType &
reference(
const std::shared_ptr<DataType> &o)
113 ASSERTL1(o,
"Can't dereference null pointer.");
116 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....
The above copyright notice and this permission notice shall be included.
static DataType * pointer(DataType *o)
static DataType & reference(DataType *o)
static const DataType * const_pointer(DataType *o)
static const DataType & const_reference(DataType *o)
static bool ReferencesObject(DataType *o)
static const DataType * const_pointer(const std::shared_ptr< DataType > &o)
static const DataType & const_reference(const std::shared_ptr< DataType > &o)
static DataType & reference(const std::shared_ptr< DataType > &o)
static bool ReferencesObject(const std::shared_ptr< DataType > &o)
static DataType * pointer(const std::shared_ptr< DataType > &o)
static const DataType & const_reference(const DataType &o)
static bool ReferencesObject(const DataType &o)
static DataType * pointer(DataType &o)
static DataType & reference(DataType &o)
static const DataType * const_pointer(const DataType &o)