|
Gaudi Framework, version v21r11 |
| Home | Generated: 30 Sep 2010 |
#include <GetData.h>
Public Types | |
| typedef Getter::Type | Type |
| typedef Getter::return_type | return_type |
| the actual return type | |
Public Member Functions | |
| template<class COMMON> | |
| return_type | operator() (const COMMON &common, IDataProviderSvc *service, const std::string &location, const std::string &location2) const |
| the only one essential method | |
Private Types | |
| typedef GetData< TYPE > | Getter |
| the actual data getter | |
Definition at line 380 of file GetData.h.
| typedef Getter::Type Gaudi::Utils::GetOrCreateData< TYPE, TYPE2 >::Type |
| typedef Getter::return_type Gaudi::Utils::GetOrCreateData< TYPE, TYPE2 >::return_type |
| return_type Gaudi::Utils::GetOrCreateData< TYPE, TYPE2 >::operator() | ( | const COMMON & | common, | |
| IDataProviderSvc * | service, | |||
| const std::string & | location, | |||
| const std::string & | location2 | |||
| ) | const [inline] |
the only one essential method
| common | the actual "worker" | |
| service | pointer to Data Provider Service | |
| location | location of objects in TES |
check the data
Definition at line 403 of file GetData.h.
00407 { 00408 SmartDataPtr<TYPE> obj ( service , location ) ; 00409 if ( !obj ) 00410 { 00411 TYPE2* o = new TYPE2() ; 00412 common.put ( service , o , location2 ) ; 00413 if ( common.msgLevel ( MSG::DEBUG ) ) 00414 { common.debug() << "The object of type '" 00415 << System::typeinfoName(typeid(*o)) 00416 << "' has been created from TS at address '" 00417 << location2 << "'" << endmsg ; } 00418 return_type _o = o ; 00419 return _o ; 00420 } 00421 return_type ret = obj ; 00423 common.Assert ( !(!ret) , "get():: No valid data at '" + location + "'" ) ; 00424 if ( common.msgLevel ( MSG::DEBUG ) ) 00425 { common.debug() << "The object of type '" 00426 << System::typeinfoName(typeid(*ret)) 00427 << "' has been retrieved from TS at address '" 00428 << location << "'" << endmsg ; } 00429 // return *VALID* data 00430 return ret ; 00431 // ==================================================================== 00432 }