#include <Object.h>
Public Member Functions | |
void * | address () const |
void * | cast (const std::type_info &asType) const |
template<typename T > | |
T * | cast () const |
void | destruct () |
Object (const Object &rhs) | |
Object (const void *ptr, const Reflex::Type &type) | |
Object () | |
bool | operator!= (const Object &rhs) const |
Object & | operator= (const Object &rhs) |
bool | operator== (const Object &rhs) const |
const Reflex::Type & | type () const |
std::string | typeName () const |
virtual | ~Object () |
Private Attributes | |
void * | m_ptr |
Reflex::Type | m_type |
ora::Object::Object | ( | const void * | ptr, |
const Reflex::Type & | type | ||
) |
ora::Object::Object | ( | const Object & | rhs | ) |
void * ora::Object::address | ( | ) | const |
Definition at line 41 of file Object.cc.
Referenced by cond::PayLoadInspector< DataT >::dumpXML(), ora::Container::insertItem(), cond::PayLoadInspector< DataT >::load(), and ora::Container::updateItem().
{ return m_ptr; }
T * ora::Object::cast | ( | ) | const [inline] |
void * ora::Object::cast | ( | const std::type_info & | asType | ) | const |
Definition at line 53 of file Object.cc.
References ora::ClassUtils::lookupDictionary(), ora::throwException(), and ora::ClassUtils::upCast().
Referenced by cond::PayLoadInspector< DataT >::object().
{ Reflex::Type castType = ClassUtils::lookupDictionary( typeInfo ); if( ! m_type ){ throwException( "Object input class has not been found in the dictionary.", "Object::cast" ); } return ClassUtils::upCast( m_type, m_ptr, castType ); }
void ora::Object::destruct | ( | ) |
Definition at line 63 of file Object.cc.
References ora::throwException().
Referenced by cond::DbSession::importObject(), and cond::PayLoadInspector< DataT >::~PayLoadInspector().
bool ora::Object::operator!= | ( | const Object & | rhs | ) | const |
ora::Object & ora::Object::operator= | ( | const Object & | rhs | ) |
bool ora::Object::operator== | ( | const Object & | rhs | ) | const |
const Reflex::Type & ora::Object::type | ( | ) | const |
Definition at line 45 of file Object.cc.
Referenced by ora::Container::insertItem(), ora::Database::insertItem(), and ora::Container::updateItem().
{ return m_type; }
std::string ora::Object::typeName | ( | ) | const |
Definition at line 49 of file Object.cc.
Referenced by cond::PayLoadInspector< DataT >::dumpXML().
{ return m_type.Name( Reflex::SCOPED ); }
void* ora::Object::m_ptr [private] |
Definition at line 27 of file Object.h.
Referenced by operator=(), and operator==().
Reflex::Type ora::Object::m_type [private] |
Definition at line 28 of file Object.h.
Referenced by operator=(), and operator==().