| # Gaudi Framework, version v21r6 |

Home |  | Generated: 11 Nov 2009

# Gaudi::Utils::GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > > Struct Template Reference

`#include <GetData.h>`

List of all members.

## Detailed Description

### template<class TYPE>
struct Gaudi::Utils::GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > >

the template specialization for named ranges

Definition at line 177 of file GetData.h.

## Public Types
typedef Gaudi::NamedRange_ < std::vector< const TYPE * > > | Type
| the actual return type
typedef _GetType< Type > ::return_type | return_type
## Public Member Functions
template<class COMMON>
return_type | operator() (const COMMON &common, IDataProviderSvc *service, const std::string &location) const
| the only one essential method
## Private Member Functions
template<class ITERATOR>
return_type | make_range (ITERATOR first, ITERATOR last, const std::string &location) const

## Member Typedef Documentation

template<class TYPE>

typedef Gaudi::NamedRange_<std::vector<const TYPE*> > Gaudi::Utils::GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > >::Type

the actual return type

Definition at line 182 of file GetData.h.

template<class TYPE>

typedef _GetType<Type>::return_type Gaudi::Utils::GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > >::return_type

Definition at line 183 of file GetData.h.

## Member Function Documentation

template<class TYPE>
template<class COMMON>

return_type Gaudi::Utils::GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > >::operator() | ( | const COMMON & | common,
|  | IDataProviderSvc * | service,
|  | const std::string & | location |
| ) |  |  | 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 195 of file GetData.h.

    00198       {
    00199         { // try to get the selection from TES
    00200           SmartDataPtr<typename TYPE::Selection> obj ( service , location ) ;
    00201           typename TYPE::Selection* aux = obj ;
    00202           if ( 0 != obj )
    00203           {
    00204             if ( common.msgLevel ( MSG::DEBUG ) )
    00205             { common.debug() << "The object of type '"
    00206                              << System::typeinfoName(typeid(*aux))
    00207                              << "' has been retrieved from TS at address '"
    00208                              << location << "'" << endmsg ; }
    00209             return make_range ( aux -> begin() , aux -> end() , location ) ;
    00210           }
    00211         }
    00212         { // get from TES the container
    00213           SmartDataPtr<typename TYPE::Container> obj ( service , location ) ;
    00214           typename TYPE::Container* aux = obj ;
    00215           if ( 0 != obj )
    00216           {
    00217             if ( common.msgLevel ( MSG::DEBUG ) )
    00218             { common.debug() << "The object of type '"
    00219                              << System::typeinfoName(typeid(*aux))
    00220                              << "' has been retrieved from TS at address '"
    00221                              << location << "'" << endmsg ; }
    00222             return make_range ( aux -> begin() , aux -> end() , location ) ;
    00223           }
    00224         }
    00225         // no valid data
    00226         common.Assert ( false , "get():: No valid data at '" + location + "'"  ) ;
    00227         // the fictive return
    00228         return return_type () ;
    00229       }

template<class TYPE>
template<class ITERATOR>

return_type Gaudi::Utils::GetData< Gaudi::NamedRange_< std::vector< const TYPE * > > >::make_range | ( | ITERATOR | first,
|  | ITERATOR | last,
|  | const std::string & | location |
| ) |  |  | const`[inline, private]`

Definition at line 235 of file GetData.h.

    00238       {
    00239         typename return_type::const_iterator* _begin = reinterpret_cast<typename return_type::const_iterator*>(&first);
    00240         typename return_type::const_iterator* _end   = reinterpret_cast<typename return_type::const_iterator*>(&last);
    00241         return return_type(*_begin, *_end, location);
    00242       }

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

- /afs/cern.ch/sw/Gaudi/releases/GAUDI/GAUDI_v21r6/GaudiAlg/GaudiAlg/GetData.h