| The Gaudi Framework v29r0 (ff2e7097)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 > Struct Template Reference

`#include <GaudiAlg/GetData.h>`

## Public Types
typedef Getter::Type | Type
typedef Getter::return_type | return_type
| the actual return type More...

## 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 More...

## Private Types
typedef Gaudi::Range_< std::vector< const TYPE * > > | Range
typedef GetData< Range > | Getter
| the actual data getter More...
typedef CheckData< Range > | Checker
| the actual data checker More...

## Private Attributes
Getter | m_getter
| the actual data getter More...

## Detailed Description

### template<class TYPE, class TYPE2>
struct Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >

Definition at line 468 of file GetData.h.

## Member Typedef Documentation

template<class TYPE , class TYPE2 >

typedef CheckData<Range> Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::Checker
| private

the actual data checker

Definition at line 475 of file GetData.h.

template<class TYPE , class TYPE2 >

typedef GetData<Range> Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::Getter
| private

the actual data getter

Definition at line 473 of file GetData.h.

template<class TYPE , class TYPE2 >

typedef Gaudi::Range_<std::vector<const TYPE*> > Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::Range
| private

Definition at line 471 of file GetData.h.

template<class TYPE , class TYPE2 >

typedef Getter::return_type Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::return_type

the actual return type

Definition at line 481 of file GetData.h.

template<class TYPE , class TYPE2 >

typedef Getter::Type Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::Type

Definition at line 479 of file GetData.h.

## Member Function Documentation

template<class TYPE , class TYPE2 >
template<class COMMON >

return_type Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::operator() | ( | const COMMON & | common,
|  | IDataProviderSvc * | service,
|  | const std::string & | location,
|  | const std::string & | location2
| ) |  | const
| inline

the only one essential method

Parameters

  common | the actual "worker"
  service | pointer to Data Provider Service
  location | location of objects in TES

Returns
  the data

Definition at line 492 of file GetData.h.

494 {
495 DataObject* obj = m_getter.getData( service, location );
496 if ( !obj ) {
497 common.put( service, new TYPE2(), location2 );
498 if ( common.msgLevel( MSG::DEBUG ) ) {
499 common.debug() << "The object of type '" << System::typeinfoName( typeid( TYPE2 ) )
500 << "' has been created from TS at address '" << location2 << "'" << endmsg;
501 }
502 }
503 return m_getter( common, service, location );
504 // ====================================================================
505 }
Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::m_getter
Getter m_getter
the actual data getter
Definition: GetData.h:510
System::typeinfoName
GAUDI_API const std::string typeinfoName(const std::type_info &)
Get platform independent information about the class type.
Definition: System.cpp:329
MSG::DEBUG
Definition: IMessageSvc.h:16
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:29
endmsg
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:209

## Member Data Documentation

template<class TYPE , class TYPE2 >

Getter Gaudi::Utils::GetOrCreateData< Gaudi::Range_< std::vector< const TYPE * > >, TYPE2 >::m_getter
| private

the actual data getter

Definition at line 510 of file GetData.h.

The documentation for this struct was generated from the following file:

- GaudiAlg/GaudiAlg/GetData.h