12 #ifndef GAUDIKERNEL_SMARTDATASTOREPTR_H 13 #define GAUDIKERNEL_SMARTDATASTOREPTR_H 1 44 template <
class TYPE,
class LOADER>
73 m_pObject = dynamic_cast<TYPE*>( const_cast<DataObject*>( pObj ) );
79 this->
m_pObject = dynamic_cast<TYPE*>( const_cast<SmartDataObjectPtr*>( © ) );
131 template <
class A,
class LDA,
class B,
class LDB>
151 template <
class B,
class LDB>
154 if ( 0 !=
object.accessTypeSafeData() ) {
171 template <
class B,
class LDB>
174 if ( 0 !=
object.accessTypeSafeData() ) {
195 template <
class A,
class LDA,
class B,
class LDB>
216 template <
class B,
class LDB>
221 if ( 0 !=
object.accessTypeSafeData() ) {
237 template <
class B,
class LDB>
242 if ( 0 !=
object.accessTypeSafeData() ) {
247 #endif // GAUDIKERNEL_SMARTDATASTOREPTR_H TYPE * accessTypeSafeData()
Internal type safe accessor to data.
bool operator &&(SmartDataStorePtr< A, LDA > &object_1, SmartDataStorePtr< B, LDB > &object_2)
Helper to test Smart data objects efficiently This construct allows statements like: SmartDataPtr<MCV...
SmartDataStorePtr & operator=(DataObject *pObj)
Automatic conversion to data type.
Data provider interface definition.
SmartDataStorePtr & operator=(const SmartDataObjectPtr ©) override
unhides assignment operator of base class
TYPE * ptr()
Automatic conversion to data type.
const std::string & path() const
Path name.
DataObject * accessData()
Static Object retrieval method: must call specific function.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
TYPE * operator->()
Dereference operator: the heart of the smart pointer.
SmartDataStorePtr & operator=(const DataObject *pObj)
Automatic conversion to data type.
A small class used to access easily (and efficiently) data items residing in data stores.
A small class used to access easily (and efficiently) data items residing in data stores.
bool operator||(SmartDataStorePtr< A, LDA > &object_1, SmartDataStorePtr< B, LDB > &object_2)
Helper to test Smart data objects efficiently This construct allows statements like: SmartDataPtr<MCV...
bool operator!()
operator ! for statements like: if ( !SmartDataStorePtr<XXX>(...) ) {}
SmartDataStorePtr(IDataProviderSvc *pService, IRegistry *pRegistry, const std::string &path)
Standard constructor: Construct an SmartDataStorePtr instance which is able to connect to a DataObjec...
TYPE & operator *()
Dereference operator: the heart of the smart pointer.
A DataObject is the base class of any identifiable object on any data store.
TYPE * m_pObject
Pointer to data store object.
virtual ~SmartDataStorePtr()
Standard Destructor.
SmartDataStorePtr(const SmartDataObjectPtr ©)
Copy constructor: Construct an copy of a SmartDataStorePtr instance.