| The Gaudi Framework v32r1 (f65d50dc)

Namespaces | Classes | Typedefs | Enumerations | Functions
Tuples Namespace Reference

General namespace for Tuple properties. More...

## Namespaces
| detail
| Local

## Classes
class | ItemStore
| Simple class, which represents the local storage of N-tuple items of the given type. More...
class | Tuple
| A simple wrapper class over standard Gaudi NTuple::Tuple facility. More...
class | TupleColumn
| Helper class which allows to extend the functionality of Tuple with possibility to use your own representation of complex objects. More...
class | TupleItem
class | TupleObj
| A simple wrapper class over standard Gaudi NTuple::Tuple facility. More...

## Typedefs
typedef GaudiAlg::ID | TupleID
| the actual type for N-Tuple identifier (HBOOK-style) More...

## Enumerations
enum | Type { NTUPLE, EVTCOL }
| the list of available types for ntuples More...
enum | ErrorCodes : StatusCode::code_t { ErrorCodes::InvalidTuple = 100, ErrorCodes::InvalidColumn, ErrorCodes::InvalidOperation, ErrorCodes::InvalidObject, ErrorCodes::InvalidItem, ErrorCodes::TruncateValue = 200 }
| Tuple error codes. More...

## Functions
template<class ITEM >
TupleColumn< ITEM > | make_column (std::string name, const ITEM &item)
| helper function to create 'on-the-fly' the helper object Tuples::TupleColumn More...
template<class ITEM >
TupleColumn< const ITEM * > | make_column (std::string name, const ITEM *item)
| helper function to create 'on-the-fly' the helper object Tuples::TupleColumn More...
template<class ITEM >
TupleColumn< ITEM * > | make_column (std::string name, ITEM *item)
| helper function to create 'on-the-fly' the helper object Tuples::TupleColumn More...
template<class ITEM >
TupleColumn< ITEM > | Column (std::string name, const ITEM &item)
template<class ITEM >
TupleColumn< const ITEM * > | Column (std::string name, const ITEM *item)
template<class ITEM >
TupleColumn< ITEM * > | Column (std::string name, ITEM *item)
template<class OWNER >
auto | createTupleObj (const OWNER *owner, const std::string &name, NTuple::Tuple *tuple, const CLID &clid=CLID_ColumnWiseTuple, const Tuples::Type type=Tuples::NTUPLE)
| Templated helper functions allow to avoid heavy semantics of dealing with explicit type of class TupleObjImp. More...
std::size_t | hash_value (TupleID const &b)

## Detailed Description

General namespace for Tuple properties.

Tuples.h GaudiAlg/Tuples.h helper namespace to collect useful definitions, types, constants and functions, related to manipulations with N-Tuples and event tag collections.

helper namespace to collect useful definitions, types, constants and functions, related to manipulations with N-Tuples

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@i.nosp@m.tep..nosp@m.ru

Date
  2004-01-23

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@l.nosp@m.app..nosp@m.in2p3.nosp@m..fr

Date
  2005-08-06

## Typedef Documentation

## ◆ TupleID

typedef GaudiAlg::ID Tuples::TupleID

the actual type for N-Tuple identifier (HBOOK-style)

Definition at line 22 of file TupleID.h.

## Enumeration Type Documentation

## ◆ ErrorCodes

enum Tuples::ErrorCodes : StatusCode::code_t
| strong

Tuple error codes.

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@i.nosp@m.tep..nosp@m.ru

Date
  2004-01-23

Enumerator
InvalidTuple |
InvalidColumn |
InvalidOperation |
InvalidObject |
InvalidItem |
TruncateValue |

Definition at line 91 of file TupleObj.h.

91 : StatusCode::code_t {
92 InvalidTuple = 100,
93 InvalidColumn,
94 InvalidOperation,
95 InvalidObject,
96 InvalidItem,
97 TruncateValue = 200
98 };
Tuples::ErrorCodes::InvalidItem
Tuples::ErrorCodes::InvalidOperation
Tuples::ErrorCodes::InvalidTuple
Tuples::ErrorCodes::InvalidColumn
Tuples::ErrorCodes::TruncateValue
Tuples::ErrorCodes::InvalidObject
StatusCode::code_t
unsigned long code_t
type of StatusCode value
Definition: StatusCode.h:52

## ◆ Type

enum Tuples::Type

the list of available types for ntuples

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@i.nosp@m.tep..nosp@m.ru

Date
  2004-01-23

Enumerator
NTUPLE |
EVTCOL |

Definition at line 79 of file TupleObj.h.

79 {
80 NTUPLE, // Analysis nTuple
81 EVTCOL // Event Collection
82 };
Tuples::EVTCOL
Definition: TupleObj.h:81
Tuples::NTUPLE
Definition: TupleObj.h:80

## Function Documentation

## ◆ Column() [1/3]

template<class ITEM >

TupleColumn<ITEM> Tuples::Column | ( | std::string | name,
|  | const ITEM & | item
| ) |  |
| inline

Definition at line 294 of file Tuple.h.

294 {
295 return make_column( std::move( name ), item );
296 }
Tuples::make_column
TupleColumn< ITEM * > make_column(std::string name, ITEM *item)
helper function to create 'on-the-fly' the helper object Tuples::TupleColumn
Definition: Tuple.h:289
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
std::move
T move(T... args)

## ◆ Column() [2/3]

template<class ITEM >

TupleColumn<const ITEM*> Tuples::Column | ( | std::string | name,
|  | const ITEM * | item
| ) |  |
| inline

Definition at line 299 of file Tuple.h.

299 {
300 return make_column( std::move( name ), item );
301 }
Tuples::make_column
TupleColumn< ITEM * > make_column(std::string name, ITEM *item)
helper function to create 'on-the-fly' the helper object Tuples::TupleColumn
Definition: Tuple.h:289
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
std::move
T move(T... args)

## ◆ Column() [3/3]

template<class ITEM >

TupleColumn<ITEM*> Tuples::Column | ( | std::string | name,
|  | ITEM * | item
| ) |  |
| inline

Definition at line 304 of file Tuple.h.

304 {
305 return make_column( std::move( name ), item );
306 }
Tuples::make_column
TupleColumn< ITEM * > make_column(std::string name, ITEM *item)
helper function to create 'on-the-fly' the helper object Tuples::TupleColumn
Definition: Tuple.h:289
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
std::move
T move(T... args)

## ◆ createTupleObj()

template<class OWNER >

auto Tuples::createTupleObj | ( | const OWNER * | owner,
|  | const std::string & | name,
|  | NTuple::Tuple * | tuple,
|  | const CLID & | clid = `CLID_ColumnWiseTuple`,
|  | const Tuples::Type | type = `Tuples::NTUPLE`
| ) |  |

Templated helper functions allow to avoid heavy semantics of dealing with explicit type of class TupleObjImp.

const GaudiAlgorithm* algo = ... ;
NTuple::Tuple* tuple = ... ;
TupleObj* obj = createTupleObj( algo , " my tuple 1 " , ntuple ) ;
const GaudiTool* tool = ... ;
NTuple::Tuple* tuple2 = ... ;
TupleObj* obj2 = createTupleObj( tool , " my tuple 2 " , ntuple2 ) ;

Author
  Vanya BELYAEV Ivan..nosp@m.Bely.nosp@m.aev@i.nosp@m.tep..nosp@m.ru

Date
  2004-1-24

Definition at line 215 of file TupleDetail.h.

216 {
217 return detail::createTupleObj( detail::make_handler( owner, &OWNER::Error ),
218 detail::make_handler( owner, &OWNER::Warning ), name, tuple, clid, type );
219 }
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
gaudirun.type
type
Definition: gaudirun.py:142
Tuples::createTupleObj
auto createTupleObj(const OWNER *owner, const std::string &name, NTuple::Tuple *tuple, const CLID &clid=CLID_ColumnWiseTuple, const Tuples::Type type=Tuples::NTUPLE)
Templated helper functions allow to avoid heavy semantics of dealing with explicit type of class Tupl...
Definition: TupleDetail.h:215
Tuples::detail::make_handler
ErrorHandler< OBJECT, FUNCTION > make_handler(const OBJECT *object, FUNCTION function)
Templated helper functions allow to avoid heavy semantics of dealing with explicit type of class Erro...
Definition: TupleDetail.h:191

## ◆ hash_value()

std::size_t Tuples::hash_value | ( | TupleID const & | b | ) |
| inline

Definition at line 23 of file TupleID.h.

23 { return b.hash(); }

## ◆ make_column() [1/3]

template<class ITEM >

TupleColumn<ITEM> Tuples::make_column | ( | std::string | name,
|  | const ITEM & | item
| ) |  |
| inline

helper function to create 'on-the-fly' the helper object Tuples::TupleColumn

Definition at line 273 of file Tuple.h.

273 {
274 return {std::move( name ), item};
275 }
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
std::move
T move(T... args)

## ◆ make_column() [2/3]

template<class ITEM >

TupleColumn<const ITEM*> Tuples::make_column | ( | std::string | name,
|  | const ITEM * | item
| ) |  |
| inline

helper function to create 'on-the-fly' the helper object Tuples::TupleColumn

Definition at line 281 of file Tuple.h.

281 {
282 return {std::move( name ), item};
283 }
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
std::move
T move(T... args)

## ◆ make_column() [3/3]

template<class ITEM >

TupleColumn<ITEM*> Tuples::make_column | ( | std::string | name,
|  | ITEM * | item
| ) |  |
| inline

helper function to create 'on-the-fly' the helper object Tuples::TupleColumn

Definition at line 289 of file Tuple.h.

289 {
290 return {std::move( name ), item};
291 }
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
std::move
T move(T... args)