The Gaudi Framework
master (bdbe7744)
Toggle main menu visibility
Loading...
Searching...
No Matches
NTupleItems.cpp
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#include <
GaudiKernel/ContainedObject.h
>
12
#include <
GaudiKernel/DataObject.h
>
13
#include <
GaudiKernel/NTupleItems.h
>
14
15
typedef
const
std::string&
CSTR
;
16
typedef
const
std::type_info&
CTYPE
;
17
19
template
<
class
TYP>
20
NTuple::_Item<TYP>
*
NTuple::_Item<TYP>::create
(
INTuple
* tup,
const
std::string&
name
,
const
std::type_info& info,
21
TYP min, TYP max, TYP def ) {
22
return
new
_ItemImp<TYP>
( tup,
name
, info, min, max, def );
23
}
24
26
template
<
class
TYP>
27
NTuple::_Array<TYP>
*
NTuple::_Array<TYP>::create
(
INTuple
* tup,
const
std::string&
name
,
const
std::type_info& info,
28
const
std::string& idx,
long
len, TYP min, TYP max, TYP def ) {
29
return
new
_ArrayImp<TYP>
( tup,
name
, info, idx, len, min, max, def );
30
}
31
33
template
<
class
TYP>
34
NTuple::_Matrix<TYP>
*
NTuple::_Matrix<TYP>::create
(
INTuple
* tup,
const
std::string&
name
,
const
std::type_info& info,
35
const
std::string& idx,
long
ncol,
long
nrow, TYP min, TYP max,
36
TYP def ) {
37
return
new
_MatrixImp<TYP>
( tup,
name
, info, idx, ncol, nrow, min, max, def );
38
}
39
40
#define INSTANTIATE( TYP ) \
41
template class NTuple::_Item<TYP>; \
42
template class NTuple::_Array<TYP>; \
43
template class NTuple::_Matrix<TYP>;
44
// This makes the stuff accessible from outside
45
// (instruct the compiler to explicitly instantiate specific instances....)
46
INSTANTIATE
(
bool
)
47
INSTANTIATE
(
char
)
48
INSTANTIATE
(
unsigned
char
)
49
INSTANTIATE
(
short
)
50
INSTANTIATE
(
unsigned
short
)
51
INSTANTIATE
(
int
)
52
INSTANTIATE
(
unsigned
int
)
53
INSTANTIATE
(
long
)
54
INSTANTIATE
(
long
long
)
55
INSTANTIATE
(
unsigned
long
)
56
INSTANTIATE
(
unsigned
long
long
)
57
INSTANTIATE
(
float
)
58
INSTANTIATE
(
double
)
59
INSTANTIATE
(
void
* )
60
INSTANTIATE
(
IOpaqueAddress
* )
61
INSTANTIATE
( std::string )
62
63
#undef INSTANTIATE
ContainedObject.h
DataObject.h
CTYPE
const std::type_info & CTYPE
Definition
NTupleItems.cpp:16
CSTR
const std::string & CSTR
Definition
NTupleItems.cpp:15
INSTANTIATE
#define INSTANTIATE(TYP)
Definition
NTupleItems.cpp:40
NTupleItems.h
INTuple
NTuple interface class definition.
Definition
INTuple.h:86
INTupleItem::name
virtual const std::string & name() const =0
Access _Item name.
IOpaqueAddress
Opaque address interface definition.
Definition
IOpaqueAddress.h:28
NTuple::_Array
Abstract class describing a column-array in a N tuple.
Definition
NTuple.h:159
NTuple::_Array::create
static _Array * create(INTuple *tup, const std::string &name, const std::type_info &info, const std::string &index, long len, TYP min, TYP max, TYP def)
Create instance.
Definition
NTupleItems.cpp:27
NTuple::_ArrayImp
Concrete class discribing a column-array in a N tuple.
Definition
NTupleItems.h:186
NTuple::_Item
Abstract class describing a column in a N tuple.
Definition
NTuple.h:139
NTuple::_Item::create
static _Item * create(INTuple *tup, const std::string &name, const std::type_info &info, TYP min, TYP max, TYP def)
Create instance.
Definition
NTupleItems.cpp:20
NTuple::_ItemImp
Concrete class discribing a column in a N tuple.
Definition
NTupleItems.h:165
NTuple::_Matrix
Abstract class describing a matrix column in a N tuple.
Definition
NTuple.h:188
NTuple::_Matrix::create
static _Matrix * create(INTuple *tup, const std::string &name, const std::type_info &info, const std::string &index, long ncol, long nrow, TYP min, TYP max, TYP def)
Create instance.
Definition
NTupleItems.cpp:34
NTuple::_MatrixImp
Concrete class discribing a matrix column in a N tuple.
Definition
NTupleItems.h:211
GaudiKernel
src
Lib
NTupleItems.cpp
Generated on
for The Gaudi Framework by
1.17.0