5 #include "Reflex/Object.h"
13 m_ptr( const_cast<void*>(ptr) ),
18 m_ptr( const_cast<void*>(ptr) ),
19 m_type(Reflex::
Type::ByName( typeName )){
37 if( m_ptr != rhs.
m_ptr )
return false;
38 if( m_type != rhs.
m_type )
return false;
55 return m_type.Name( Reflex::SCOPED );
61 throwException(
"Object input class has not been found in the dictionary.",
69 return boost::shared_ptr<void>( m_ptr,
RflxDeleter( m_type ) );
74 throwException(
"Object input class has not been found in the dictionary.",
79 m_type.Destruct( m_ptr );
boost::shared_ptr< void > makeShared() const
std::string typeName() const
bool operator==(const CaloTower &t1, const CaloTower &t2)
bool operator==(const Object &rhs) const
Object & operator=(const Object &rhs)
void throwException(const std::string &message, const std::string &methodName) __attribute__((noreturn))
bool operator!=(const Object &rhs) const
const Reflex::Type & type() const
void * upCast(const Reflex::Type &type, void *ptr, const Reflex::Type &asType)
Reflex::Type lookupDictionary(const std::type_info &typeInfo, bool throwFlag=true)