ATLAS Offline Software
Loading...
Searching...
No Matches
MetDef.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_MET_MET_DEF_H
9#define COLUMNAR_MET_MET_DEF_H
10
15
16namespace columnar
17{
28
29 namespace ContainerId
30 {
31 struct met : regularCIBase<xAOD::MissingET,xAOD::MissingETContainer>
32 {
33 static constexpr std::string_view idName = "met";
34 };
35 using met0 = met;
37
38 struct met1 : met
39 {
40 static constexpr std::string_view idName = "met1";
41 };
42
43 struct metAssociation : regularCIBase<xAOD::MissingETAssociation,xAOD::MissingETAssociationMap>
44 {
45 static constexpr std::string_view idName = "metAssociation";
46 };
47 }
48
52 template<typename CT,typename CM=ColumnarModeDefault> using MetAccessor = AccessorTemplate<ContainerId::met,CT,ColumnAccessMode::input,CM>;
53 template<typename CT,typename CM=ColumnarModeDefault> using MetDecorator = AccessorTemplate<ContainerId::met,CT,ColumnAccessMode::output,CM>;
54
58 template<typename CT,typename CM=ColumnarModeDefault> using Met0Accessor = AccessorTemplate<ContainerId::met0,CT,ColumnAccessMode::input,CM>;
59 template<typename CT,typename CM=ColumnarModeDefault> using Met0Decorator = AccessorTemplate<ContainerId::met0,CT,ColumnAccessMode::output,CM>;
60
64 template<typename CT,typename CM=ColumnarModeDefault> using Met1Accessor = AccessorTemplate<ContainerId::met1,CT,ColumnAccessMode::input,CM>;
65 template<typename CT,typename CM=ColumnarModeDefault> using Met1Decorator = AccessorTemplate<ContainerId::met1,CT,ColumnAccessMode::output,CM>;
66
70 template<typename CT,typename CM=ColumnarModeDefault> using MutableMetAccessor = AccessorTemplate<ContainerId::mutableMet,CT,ColumnAccessMode::input,CM>;
71 template<typename CT,typename CM=ColumnarModeDefault> using MutableMetDecorator = AccessorTemplate<ContainerId::mutableMet,CT,ColumnAccessMode::output,CM>;
72
76}
77
78#endif
SG::ConstAccessor< T, ALLOC > ConstAccessor
Definition AuxElement.h:569
SG::Accessor< T, ALLOC > Accessor
Definition AuxElement.h:572
the raw column accessor template class
a class representing a single object (electron, muons, etc.)
a class representing a continuous sequence of objects (a.k.a. a container)
a class representing a single optional object (electron, muons, etc.)
a namespace for holding the ids for the different "virtual" containers
Definition ClusterDef.h:18
mutableCI< met > mutableMet
Definition MetDef.h:36
static const SG::AuxElement::Accessor< std::vector< iplink_t > > dec_constitObjLinks("ConstitObjectLinks")
static const SG::AuxElement::ConstAccessor< iplink_t > acc_originalObject("originalObjectLink")
ElementLink< xAOD::IParticleContainer > iplink_t
Definition MetDef.h:20
static const SG::AuxElement::Accessor< std::vector< float > > dec_constitObjWeights("ConstitObjectWeights")
static const SG::AuxElement::ConstAccessor< iplink_t > acc_nominalObject("nominalObjectLink")
ObjectRange< ContainerId::met > MetRange
Definition MetDef.h:49
ObjectId< ContainerId::met1 > Met1Id
Definition MetDef.h:62
OptObjectId< ContainerId::met1 > OptMet1Id
Definition MetDef.h:63
OptObjectId< ContainerId::metAssociation > OptMetAssociationId
Definition MetDef.h:75
AccessorTemplate< ContainerId::met1, CT, ColumnAccessMode::output, CM > Met1Decorator
Definition MetDef.h:65
ObjectId< ContainerId::mutableMet > MutableMetId
Definition MetDef.h:68
OptObjectId< ContainerId::mutableMet > OptMutableMetId
Definition MetDef.h:69
ObjectId< ContainerId::metAssociation > MetAssociationId
Definition MetDef.h:74
ObjectId< ContainerId::met0 > Met0Id
Definition MetDef.h:56
ObjectRange< ContainerId::metAssociation > MetAssociationRange
Definition MetDef.h:73
ObjectRange< ContainerId::met0 > Met0Range
Definition MetDef.h:55
AccessorTemplate< ContainerId::met, CT, ColumnAccessMode::output, CM > MetDecorator
Definition MetDef.h:53
AccessorTemplate< ContainerId::mutableMet, CT, ColumnAccessMode::input, CM > MutableMetAccessor
Definition MetDef.h:70
AccessorTemplate< ContainerId::met0, CT, ColumnAccessMode::output, CM > Met0Decorator
Definition MetDef.h:59
AccessorTemplate< ContainerId::mutableMet, CT, ColumnAccessMode::output, CM > MutableMetDecorator
Definition MetDef.h:71
AccessorTemplate< ContainerId::met1, CT, ColumnAccessMode::input, CM > Met1Accessor
Definition MetDef.h:64
OptObjectId< ContainerId::met0 > OptMet0Id
Definition MetDef.h:57
AccessorTemplate< ContainerId::met, CT, ColumnAccessMode::input, CM > MetAccessor
Definition MetDef.h:52
AccessorTemplate< ContainerId::met0, CT, ColumnAccessMode::input, CM > Met0Accessor
Definition MetDef.h:58
ObjectId< ContainerId::met > MetId
Definition MetDef.h:50
ObjectRange< ContainerId::met1 > Met1Range
Definition MetDef.h:61
ObjectRange< ContainerId::mutableMet > MutableMetRange
Definition MetDef.h:67
OptObjectId< ContainerId::met > OptMetId
Definition MetDef.h:51
static constexpr std::string_view idName
Definition MetDef.h:40
static constexpr std::string_view idName
Definition MetDef.h:45
static constexpr std::string_view idName
Definition MetDef.h:33
a template to define a mutable version of a given container id
a template that provides a base definition of container id for a regular container