12 #ifndef GAUDIKERNEL_SMARTDATASTOREPTR_H
13 #define GAUDIKERNEL_SMARTDATASTOREPTR_H 1
149 template <
class A,
class LDA,
class B,
class LDB>
169 template <
class B,
class LDB>
172 if ( 0 !=
object.accessTypeSafeData() ) {
189 template <
class B,
class LDB>
192 if ( 0 !=
object.accessTypeSafeData() ) {
213 template <
class A,
class LDA,
class B,
class LDB>
235 template <
class B,
class LDB>
240 if ( 0 !=
object.accessTypeSafeData() ) {
256 template <
class B,
class LDB>
261 if ( 0 !=
object.accessTypeSafeData() ) {
266 #endif // GAUDIKERNEL_SMARTDATASTOREPTR_H
TYPE * accessTypeSafeData()
Internal type safe accessor to data.
SmartDataStorePtr & operator=(DataObject *pObj)
Automatic conversion to data type.
Data provider interface definition.
TYPE * ptr()
Automatic conversion to data type.
DataObject * accessData()
Static Object retrieval method: must call specific function.
const std::string & path() const
Path name.
TYPE & operator*()
Dereference operator: the heart of the smart pointer.
The IRegistry represents the entry door to the environment any data object residing in a transient da...
bool access(const ContainedObject *from, ContainedObject **to)
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...
SmartDataStorePtr & operator=(const SmartDataObjectPtr ©)
unhides assignment operator of base class
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
bool operator!()
operator ! for statements like: if ( !SmartDataStorePtr(...) ) {}
SmartDataStorePtr(IDataProviderSvc *pService, IRegistry *pRegistry, const std::string &path)
Standard constructor: Construct an SmartDataStorePtr instance which is able to connect to a DataObjec...
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
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.