ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
Columnar
ColumnarExampleTools
ColumnarExampleTools
VectorExampleTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
7
8
#ifndef COLUMNAR_EXAMPLE_TOOLS_VECTOR_EXAMPLE_TOOL_H
9
#define COLUMNAR_EXAMPLE_TOOLS_VECTOR_EXAMPLE_TOOL_H
10
11
#include <
AsgTools/AsgTool.h
>
12
#include <
AsgTools/PropertyWrapper.h
>
13
#include <
ColumnarCore/ColumnAccessor.h
>
14
#include <
ColumnarCore/ColumnarTool.h
>
15
#include <
ColumnarCore/ObjectColumn.h
>
16
#include <
ColumnarCore/ParticleDef.h
>
17
#include <
ColumnarCore/VectorColumn.h
>
18
19
namespace
columnar
20
{
26
27
class
VectorExampleTool
final
28
:
public
asg::AsgTool
,
29
public
ColumnarTool
<>
30
{
31
public
:
32
33
// Create a proper constructor for Athena
34
ASG_TOOL_CLASS
(
VectorExampleTool
,
asg::IAsgTool
)
35
36
VectorExampleTool
(
const
std::string& name);
37
38
virtual
StatusCode
initialize
()
override
;
39
40
void
callSingleEvent
(
ParticleRange
particles)
const
;
41
42
virtual
void
callEvents
(
EventContextRange
events)
const override
;
43
44
46
Gaudi::Property<float>
m_ptCut
{
this
,
"ptCut"
, 10e3,
"pt cut (in MeV)"
};
47
48
54
ParticleAccessor<ObjectColumn>
particlesHandle
{*
this
,
"Particles"
};
55
56
63
ParticleAccessor<float>
ptAcc
{*
this
,
"pt"
};
64
65
71
ParticleAccessor<std::vector<int>
>
trknumAcc
{*
this
,
"NumTrkPt500"
};
72
73
81
ParticleAccessor<std::vector<RetypeColumn<double,float>
>>
trksumptAcc
{*
this
,
"SumPtTrkPt500"
};
82
83
92
ParticleDecorator<char>
selectionDec
{*
this
,
"selection"
};
93
};
94
}
95
96
#endif
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition
AsgToolMacros.h:68
AsgTool.h
ColumnAccessor.h
ColumnarTool.h
ObjectColumn.h
ParticleDef.h
PropertyWrapper.h
VectorColumn.h
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition
AsgTool.h:47
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition
IAsgTool.h:41
columnar::ColumnarTool
the base class for all columnar components
Definition
ColumnAccessorDataArray.h:17
columnar::VectorExampleTool::trknumAcc
ParticleAccessor< std::vector< int > > trknumAcc
a vector column accessor
Definition
VectorExampleTool.h:71
columnar::VectorExampleTool::VectorExampleTool
VectorExampleTool(const std::string &name)
Definition
VectorExampleTool.cxx:20
columnar::VectorExampleTool::initialize
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Definition
VectorExampleTool.cxx:27
columnar::VectorExampleTool::callEvents
virtual void callEvents(EventContextRange events) const override
Definition
VectorExampleTool.cxx:67
columnar::VectorExampleTool::selectionDec
ParticleDecorator< char > selectionDec
the selection decorator for the particles
Definition
VectorExampleTool.h:92
columnar::VectorExampleTool::trksumptAcc
ParticleAccessor< std::vector< RetypeColumn< double, float > > > trksumptAcc
a vector accessor involving retyping
Definition
VectorExampleTool.h:81
columnar::VectorExampleTool::particlesHandle
ParticleAccessor< ObjectColumn > particlesHandle
the object accessor for the particles
Definition
VectorExampleTool.h:54
columnar::VectorExampleTool::ptAcc
ParticleAccessor< float > ptAcc
the pt accessor for the particle container
Definition
VectorExampleTool.h:63
columnar::VectorExampleTool::callSingleEvent
void callSingleEvent(ParticleRange particles) const
Definition
VectorExampleTool.cxx:38
columnar::VectorExampleTool::m_ptCut
Gaudi::Property< float > m_ptCut
the pt cut to apply
Definition
VectorExampleTool.h:46
columnar
Definition
ClusterDef.h:16
columnar::EventContextRange
ObjectRange< EventContextDef > EventContextRange
Definition
ContainerId.h:211
columnar::ParticleAccessor
AccessorTemplate< ParticleDef, CT, ColumnAccessMode::input, CM > ParticleAccessor
Definition
ParticleDef.h:35
columnar::ParticleDecorator
AccessorTemplate< ParticleDef, CT, ColumnAccessMode::output, CM > ParticleDecorator
Definition
ParticleDef.h:36
columnar::ParticleRange
ObjectRange< ParticleDef > ParticleRange
Definition
ParticleDef.h:32
Generated on
for ATLAS Offline Software by
1.17.0