ATLAS Offline Software
Loading...
Searching...
No Matches
MissingETAssociation_v1.h
Go to the documentation of this file.
1// -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef XAODMISSINGET_VERSIONS_MISSINGETASSOCIATION_v1_H
8#define XAODMISSINGET_VERSIONS_MISSINGETASSOCIATION_v1_H
9
11
13
14#include "xAODMissingET/versions/MissingETCompositionBase.h" //MissingETBase::UsageHandler
15
16#include <vector>
17
18namespace xAOD
19{
20 // Forward declaration
22 class IParticle;
25 {
26 public:
27
29
32 {
33 public:
35 ConstVec(float cpx,float cpy,float cpz,float ce,float sumpt);
36 ConstVec(const IParticle& ipar);
37 // ConstVec(const ConstVec& cvec); /*!< @brief Copy constructor */
41 float cpx() const;
42 float cpy() const;
43 float cpz() const;
44 float cpt() const;
45 float ce() const;
46 float sumpt() const;
50 void setCpx(float px);
51 void setCpy(float py);
52 void setCpz(float pz);
53 void setCe (float e);
54 void setSumpt (float sumpt);
58 float& cpx();
59 float& cpy();
60 float& cpz();
61 float& ce();
62 float& sumpt();
63 ConstVec& operator+=(const ConstVec& cvec);
64 ConstVec& operator-=(const ConstVec& cvec);
65 ConstVec& operator*=(float scale);
66 ConstVec& operator/=(float scale);
70 bool operator==(const ConstVec& cvec) const;
71 bool operator!=(const ConstVec& cvec) const;
73 private:
76 float m_cpx;
77 float m_cpy;
78 float m_cpz;
79 float m_ce;
80 float m_sumpt;
82 }; // MissingETComponent_v1::ConstVec
83
84 explicit MissingETAssociation_v1(bool createStore=false);
85 MissingETAssociation_v1(const Jet* pjet, bool isMisc=false);
88 virtual ~MissingETAssociation_v1();
89
95 bool setRefJet(const Jet* pJet);
97 bool setRefJet(const JetContainer* pJetCont,size_t pJetIdx);
99
103 bool addObject(const IParticle* pPart,const std::vector<const IParticle*>& constlist);
105
110 const std::vector<float>& calpx() const;
111 float calpx(const IParticle* pPart) const;
112 float calpx(size_t keyIdx) const;
113 //
114 bool setCalPx(const std::vector<float>& calpxvec);
115 bool setCalPx(size_t keyIdx,float calpx);
116 //
117 const std::vector<float>& calpy() const;
118 float calpy(size_t keyIdx) const;
119 //
120 bool setCalPy(const std::vector<float>& calpyvec);
121 bool setCalPy(size_t keyIdx,float calpy);
122 //
123 const std::vector<float>& calpz() const;
124 float calpz(size_t keyIdx) const;
125 //
126 bool setCalPz(const std::vector<float>& calpzvec);
127 bool setCalPz(size_t keyIdx,float calpz);
128 //
129 const std::vector<float>& cale() const;
130 float cale(size_t keyIdx) const;
131 //
132 bool setCalE(const std::vector<float>& calevec);
133 bool setCalE(size_t keyIdx,float cale);
134 //
135 const std::vector<float>& calsumpt() const;
136 float calsumpt(size_t keyIdx) const;
137 //
138 bool setCalSumpt(const std::vector<float>& calsumptvec);
139 bool setCalSumpt(size_t keyIdx,float calsumpt);
140 //
141 const std::vector<MissingETBase::Types::bitmask_t>& calkey() const;
142 MissingETBase::Types::bitmask_t calkey(size_t keyIdx) const;
143 //
144 bool setCalKey(const std::vector<MissingETBase::Types::bitmask_t>& calkeyvec);
146 //
147 bool setCalVec(size_t keyIdx,const ConstVec& cvec=ConstVec());
148 bool setCalVec(size_t keyIdx,float calpx,float calpy,float calpz,float ce,float sumpt);
149 //
150 bool addCalVec(MissingETBase::Types::bitmask_t key,float calpx,float calpy,float calpz,float cale,float sumpt);
151 //
153 //
155 const std::vector<float>& trkpx() const;
156 float trkpx(size_t keyIdx) const;
157 //
158 bool setTrkPx(const std::vector<float>& trkpxvec);
159 bool setTrkPx(size_t keyIdx,float trkpx);
160 //
161 const std::vector<float>& trkpy() const;
162 float trkpy(size_t keyIdx) const;
163 //
164 bool setTrkPy(const std::vector<float>& trkpyvec);
165 bool setTrkPy(size_t keyIdx,float trkpy);
166 //
167 const std::vector<float>& trkpz() const;
168 float trkpz(size_t keyIdx) const;
169 //
170 bool setTrkPz(const std::vector<float>& trkpzvec);
171 bool setTrkPz(size_t keyIdx,float trkpz);
172 //
173 const std::vector<float>& trke() const;
174 float trke(size_t keyIdx) const;
175 //
176 bool setTrkE(const std::vector<float>& trkevec);
177 bool setTrkE(size_t keyIdx,float trke);
178 //
179 const std::vector<float>& trksumpt() const;
180 float trksumpt(size_t keyIdx) const;
181 //
182 bool setTrkSumpt(const std::vector<float>& trksumptvec);
183 bool setTrkSumpt(size_t keyIdx,float trksumpt);
184 //
185 const std::vector<MissingETBase::Types::bitmask_t>& trkkey() const;
186 MissingETBase::Types::bitmask_t trkkey(size_t keyIdx) const;
187 //
188 bool setTrkKey(const std::vector<MissingETBase::Types::bitmask_t>& trkkeyvec);
190 //
191 bool setTrkVec(size_t keyIdx,const ConstVec& cvec=ConstVec());
192 bool setTrkVec(size_t keyIdx,float trkpx,float trkpy,float trkpz,float trke,float sumpt);
193 //
194 bool addTrkVec(MissingETBase::Types::bitmask_t key,float trkpx,float trkpy,float trkpz,float ce,float sumpt);
195 //
197 //
199 float jettrkpx() const;
200 float jettrkpy() const;
201 float jettrkpz() const;
202 float jettrke() const;
203 float jettrksumpt() const;
204 //
205 void setJetTrkPx(float px);
206 void setJetTrkPy(float py);
207 void setJetTrkPz(float pz);
208 void setJetTrkE(float e);
209 void setJetTrkSumpt(float sumpt);
210 void setJetTrkVec(const ConstVec& cvec=ConstVec());
211 void setJetTrkVec(float px,float py,float pz,float ce,float sumpt);
212 //
214 bool setJetLink(const MissingETBase::Types::jetlink_t& jetLnk);
217
218 //
219 const std::vector<std::vector<size_t> >& overlapIndices() const;
220 std::vector<size_t> overlapIndices(const IParticle* pPart) const;
221 std::vector<size_t> overlapIndices(size_t objIdx) const;
222 //
223 const std::vector<std::vector<unsigned char> >& overlapTypes() const;
224 std::vector<unsigned char> overlapTypes(const IParticle* pPart) const;
225 std::vector<unsigned char> overlapTypes(size_t objIdx) const;
226 //
227 void clearOverlaps();
228 bool setOverlaps(const std::vector<std::vector<size_t> >& overlapIndices,
229 const std::vector<std::vector<unsigned char> >& overlapTypes);
230 bool setOverlaps(const IParticle* pPart,const std::vector<size_t>& overlapIndices,
231 const std::vector<unsigned char>& overlapTypes);
232 bool setOverlaps(size_t objIdx,const std::vector<size_t>& overlapIndices,
233 const std::vector<unsigned char>& overlapTypes);
234 void setOverrideMom(const std::map<const IParticle*,ConstVec>& pOverride);
235 std::map<const IParticle*,ConstVec> overrideMom();
236 void addOverrideMom(std::map<const IParticle*,ConstVec> &pOverride);
237
239
244 bool removeContrib(const IParticle* pPart);
245 bool removeContrib(size_t objIdx);
246 bool removeContrib();
247 bool resetContrib(const IParticle* pPart);
248 bool resetContrib(size_t objIdx);
249 bool resetContrib();
251
254 const Jet* refJet() const;
256 size_t refJetIndex() const;
257 std::vector<const IParticle*> objects() const;
258 std::vector<const IParticle*> objects(std::vector<ConstVec>& calVecs,std::vector<ConstVec>& trkVecs) const;
259 std::vector<const IParticle*> objects(const std::vector<float>*& calpxPtr,
260 const std::vector<float>*& calpyPtr,
261 const std::vector<float>*& calpzPtr,
262 const std::vector<float>*& calePtr,
263 const std::vector<float>*& calsumptPtr,
264 const std::vector<float>*& trkpxPtr,
265 const std::vector<float>*& trkpyPtr,
266 const std::vector<float>*& trkpzPtr,
267 const std::vector<float>*& trkePtr,
268 const std::vector<float>*& trksumptPtr) const;
269 ConstVec calVec(const IParticle* pPart) const;
270 ConstVec calVec(size_t keyIdx) const;
271 ConstVec trkVec(const IParticle* pPart) const;
272 ConstVec trkVec(size_t keyIdx) const;
273 ConstVec jetTrkVec() const;
275
277 bool addOverlap(const IParticle* pPart,size_t index, unsigned char type);
278 bool addOverlap(size_t objIdx,size_t index, unsigned char type);
279
280 bool identifyOverlaps();
281 bool identifyOverlaps(size_t objIdx);
282 bool identifyOverlaps(const IParticle* pPart);
283
286 bool hasOverlaps(const MissingETAssociationHelper& helper, const IParticle* pPart,
289
290 bool hasAlternateConstVec() const;
292
295
296 bool containsSignal(const IParticle* pSig) const;
297 bool containsPhysics(const IParticle* pPhys) const;
298 bool isMisc() const;
300
321 size_t findIndex(const IParticle* pPart) const;
325
333 // void updateLinks();
334 // /*! @brief [Deprecated] Update link to reference jet only */
335 // void updateJetLink();
336 size_t size() const;
337 size_t sizeCal() const;
338 size_t sizeTrk() const;
340 bool empty() const;
342
348 bool operator==(const MissingETAssociation_v1& contrib) const;
349 bool operator!=(const MissingETAssociation_v1& contrib) const;
351
352 protected:
353
355
357 void createPrivateStore();
358
367 //
368 std::vector<float>& f_calpx();
369 std::vector<float>& f_calpy();
370 std::vector<float>& f_calpz();
371 std::vector<float>& f_cale();
372 std::vector<float>& f_calsumpt();
373 std::vector<MissingETBase::Types::bitmask_t>& f_calkey();
374 //
375 std::vector<float>& f_trkpx();
376 std::vector<float>& f_trkpy();
377 std::vector<float>& f_trkpz();
378 std::vector<float>& f_trke();
379 std::vector<float>& f_trksumpt();
380 std::vector<MissingETBase::Types::bitmask_t>& f_trkkey();
381 //
382 float& f_jettrkpx();
383 float& f_jettrkpy();
384 float& f_jettrkpz();
385 float& f_jettrke();
387 //
388 char& f_isMisc();
389 //
390 std::vector<std::vector<size_t> >& f_overlapIndices();
391 std::vector<std::vector<unsigned char> >& f_overlapTypes();
393
399 bool f_removeContrib(size_t objIdx);
400 void copyData(const MissingETAssociation_v1& assocDescr);
413 template<class POBJ,class LINK> void f_setObject(const POBJ* pObj,LINK& elemLink);
414 template<class LINK> bool f_setLink(LINK& elemLink);
416
418
419 void initCache();
420
423 std::vector<std::vector<ElementLink<IParticleContainer> > > m_objConstLinks;
425 private:
426 std::map<const IParticle*,ConstVec> m_override;
427
433
439
445
446 }; // MissingETAssociation_v1
447}
448
450{
451 namespace Types
452 {
454 typedef std::vector<constvec_t> constvec_vector_t;
455 }
456}
457
473#endif
Base class for elements of a container that can have aux data.
MissingETBase::Types::constvec_t operator*(const MissingETBase::Types::constvec_t &cvec, float scale)
Scale constituent vector by multiplication.
MissingETBase::Types::constvec_t operator-(const MissingETBase::Types::constvec_t &v0, const MissingETBase::Types::constvec_t &v2)
Subtract constituent vectors.
MissingETBase::Types::constvec_t operator/(const MissingETBase::Types::constvec_t &cvec, float scale)
Scale constituent vector by division.
MissingETBase::Types::constvec_t operator+(const MissingETBase::Types::constvec_t &v0, const MissingETBase::Types::constvec_t &v2)
Add constituent vectors.
Base class for elements of a container that can have aux data.
Definition AuxElement.h:483
SG::Accessor< T, ALLOC > Accessor
Definition AuxElement.h:572
Class providing the definition of the 4-vector interface.
Vector sum of constituents for subtractive overlap removal.
ConstVec & operator+=(const ConstVec &cvec)
Add another vector.
float & cpx()
Returns reference to modifiable data word storing .
void setSumpt(float sumpt)
Set sumpt.
float & sumpt()
Returns reference to modifiable data word storing sum of component pt.
ConstVec(float cpx, float cpy, float cpz, float ce, float sumpt)
Constructor with parameters.
float sumpt() const
Returns sum of component pt.
bool operator==(const ConstVec &cvec) const
Equality comparator.
float & ce()
Returns reference to modifiable data word storing .
ConstVec & operator-=(const ConstVec &cvec)
Subtract another vector.
bool operator!=(const ConstVec &cvec) const
Inequality operator.
float & cpy()
Returns reference to modifiable data word storing .
ConstVec & operator*=(float scale)
Scale vector by multiplication.
float & cpz()
Returns reference to modifiable data word storing .
ConstVec & operator/=(float scale)
Scale vector by division.
ConstVec(const IParticle &ipar)
Constructor from IParticle.
bool isMisc() const
Check if this association is a miscellaneous association.
const std::vector< float > & cale() const
Get the vector of .
bool setCalSumpt(const std::vector< float > &calsumptvec)
Set the vector of sumpt.
std::vector< float > & f_calpz()
std::map< const IParticle *, ConstVec > overrideMom()
Get override momenta.
bool setOverlaps(const std::vector< std::vector< size_t > > &overlapIndices, const std::vector< std::vector< unsigned char > > &overlapTypes)
Set the vector of overlap indices and types.
const Jet * refJet() const
Access reference jet.
std::vector< float > & f_cale()
const MissingETBase::Types::objlink_vector_t & objectLinks() const
Get the vector of links to the contributing physics or signal objects.
void addOverrideMom(std::map< const IParticle *, ConstVec > &pOverride)
Extend override momentum map.
const std::vector< MissingETBase::Types::bitmask_t > & calkey() const
Get the vector of cal keys.
bool checkUsage(const MissingETAssociationHelper &helper, const IParticle *pSig, MissingETBase::UsageHandler::Policy p) const
Check if this signal object matches the constituents of any flagged contributing objects.
static const SG::AuxElement::Accessor< float > m_acc_jettrke
std::vector< std::vector< ElementLink< IParticleContainer > > > m_objConstLinks
Cache object constituents for overlap-finding.
float jettrkpx() const
Get the vector for a given object referenced by index.
const std::vector< float > & trksumpt() const
Get the vector of .
bool clearTrkVecs()
Reset the track constituent vectors and keys.
void setJetTrkPy(float py)
Set track constituent vector for the reference jet.
size_t size() const
Update all internally used ElementLink instances.
bool setTrkPy(const std::vector< float > &trkpyvec)
Set the vector of .
void setJetTrkE(float e)
Set track constituent vector for the reference jet.
bool f_setLink(LINK &elemLink)
ConstVec trkVec(const IParticle *pPart) const
Get track constituent vector for a given object.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trkpz
const std::vector< float > & calsumpt() const
Get the vector of sumpt.
void clearOverlaps()
Clear the vectors of overlap indices.
const std::vector< std::vector< unsigned char > > & overlapTypes() const
Get the list of object overlapTypes.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calsumpt
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calpz
bool setCalE(const std::vector< float > &calevec)
Set the vector of .
bool setRefJet(const Jet *pJet)
Set reference jet by object pointer reference.
const std::vector< float > & calpy() const
Get the vector of .
void setJetTrkPx(float px)
Set track constituent vector for the reference jet.
ConstVec overlapTrkVec(const MissingETAssociationHelper &helper) const
Retrieve total track-based vector to be subtracted from the jet.
std::vector< const IParticle * > objects() const
Access contributing objects.
static const SG::AuxElement::Accessor< float > m_acc_jettrkpz
bool addOverlap(const IParticle *pPart, size_t index, unsigned char type)
Add overlap index for a given contributing object referenced by pointer.
float jettrkpy() const
Get the vector for a given object referenced by pointer.
const std::vector< MissingETBase::Types::bitmask_t > & trkkey() const
Get the vector of trk keys.
std::vector< float > & f_calsumpt()
size_t refJetIndex() const
Access index of reference jet in its container.
bool addTrkVec(MissingETBase::Types::bitmask_t key, float trkpx, float trkpy, float trkpz, float ce, float sumpt)
Add a key/vector pair for calo contributions.
MissingETBase::Types::objlink_vector_t & f_objectLinks()
Non-const link reference.
const std::vector< float > & trkpy() const
Get the vector of .
bool setOverlaps(const IParticle *pPart, const std::vector< size_t > &overlapIndices, const std::vector< unsigned char > &overlapTypes)
Set overlap indices and types for a given contributing object referenced by pointer.
std::vector< unsigned char > overlapTypes(const IParticle *pPart) const
Get the overlap types for a given object referenced by pointer.
void setOverrideMom(const std::map< const IParticle *, ConstVec > &pOverride)
Set override momenta.
const JetContainer * refJetContainer() const
Access reference jet container holding reference jet.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trksumpt
bool setTrkPx(const std::vector< float > &trkpxvec)
Set the vector of .
xAOD::JetFourMom_t getAlternateConstVec() const
size_t findTrkIndex(MissingETBase::Types::bitmask_t mask) const
bool hasOverlaps(const MissingETAssociationHelper &helper, size_t objIdx, MissingETBase::UsageHandler::Policy p=MissingETBase::UsageHandler::OnlyCluster) const
Check if any selected particles overlap this one.
ConstVec overlapCalVec(const MissingETAssociationHelper &helper) const
Retrieve total cluster-based vector to be subtracted from the jet.
bool setJetLink(const MissingETBase::Types::jetlink_t &jetLnk)
Set the link to the reference jet.
bool resetContrib(const IParticle *pPart)
Reset the contribution parameters of an object referenced by a pointer.
bool removeContrib()
Remove all contributions.
bool setObjectLinks(const MissingETBase::Types::objlink_vector_t &objLnks)
Set the vector of links to the contributing physics or signal objects.
const std::vector< float > & trkpz() const
Get the vector of .
bool containsSignal(const IParticle *pSig) const
Check if this signal object matches the constituents of any contributing objects.
static const SG::AuxElement::Accessor< float > m_acc_jettrkpx
bool removeContrib(const IParticle *pPart)
Remove a contribution referenced by an object pointer.
void setJetTrkPz(float pz)
Set track constituent vector for the reference jet.
std::vector< std::vector< size_t > > & f_overlapIndices()
record overlapIndices between constributing objects
void copyData(const MissingETAssociation_v1 &assocDescr)
std::vector< float > & f_trkpz()
bool setCalPx(const std::vector< float > &calpxvec)
Set the vector of .
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calpy
void setJetTrkSumpt(float sumpt)
Set track constituent vector for the reference jet.
virtual ~MissingETAssociation_v1()
Assignment operator.
std::map< const IParticle *, ConstVec > m_override
std::vector< float > & f_trkpx()
const std::vector< float > & trke() const
Get the vector of .
bool addObject(const IParticle *pPart, const std::vector< const IParticle * > &constlist)
Add object (particle) from pointer reference with individual constituent vectors.
const MissingETBase::Types::jetlink_t & jetLink() const
Get the link to the reference jet.
bool setTrkE(const std::vector< float > &trkevec)
Set the vector of .
std::vector< size_t > overlapIndices(const IParticle *pPart) const
Get the overlap indices for a given object referenced by pointer.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trke
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trkpy
ConstVec jetTrkVec() const
Get track constituent vector for the reference jet.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trkpx
bool clearCalVecs()
Reset the calo constituent vectors and keys.
std::vector< MissingETBase::Types::bitmask_t > & f_calkey()
bool setCalVec(size_t keyIdx, const ConstVec &cvec=ConstVec())
Set the calo constituent vector of an object contribution referenced by index.
std::vector< float > & f_trkpy()
static const SG::AuxElement::Accessor< float > m_acc_jettrksumpt
const std::vector< float > & calpz() const
Get the vector of .
bool containsPhysics(const IParticle *pPhys) const
Check if this physics object matches any contributing objects.
bool identifyOverlaps()
Loop over contributing objects to identify those that share constituents.
std::vector< float > & f_trksumpt()
bool f_removeContrib(size_t objIdx)
Copy the contribution data from a source.
bool empty() const
Empty list of contributing objects indicator.
void f_setObject(const POBJ *pObj, LINK &elemLink)
Generalized link manager.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_cale
bool operator!=(const MissingETAssociation_v1 &contrib) const
Equality.
size_t findCalIndex(MissingETBase::Types::bitmask_t mask) const
MissingETAssociation_v1 & operator=(const MissingETAssociation_v1 &assocDescr)
bool identifyOverlaps(const IParticle *pPart)
Search association for particles that share constituents with this one.
std::vector< std::vector< unsigned char > > & f_overlapTypes()
record overlapTypes between constributing objects
bool setTrkPz(const std::vector< float > &trkpzvec)
Set the vector of .
void createPrivateStore()
Function initialising the object to work in standalone mode.
float jettrkpz() const
Get the vector for a given object referenced by pointer.
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calpx
float jettrksumpt() const
Get the sumpt for a given object referenced by index.
const std::vector< float > & trkpx() const
Get the vector of .
bool setCalPz(const std::vector< float > &calpzvec)
Set the vector of .
float calpx(const IParticle *pPart) const
Get the vector for a given object referenced by pointer.
bool setCalKey(const std::vector< MissingETBase::Types::bitmask_t > &calkeyvec)
Set the vector of keys.
bool resetContrib()
Reset all contribution parameters.
bool operator==(const MissingETAssociation_v1 &contrib) const
bool addCalVec(MissingETBase::Types::bitmask_t key, float calpx, float calpy, float calpz, float cale, float sumpt)
Add a key/vector pair for calo contributions.
bool removeContrib(size_t objIdx)
Remove a contribution referenced by an index.
std::vector< float > & f_calpy()
bool setTrkKey(const std::vector< MissingETBase::Types::bitmask_t > &trkkeyvec)
Set the vector of keys.
size_t findIndex(const IParticle *pPart) const
Find index of given object in contributing object store.
float jettrke() const
Get the vector for a given object referenced by index.
void setJetTrkVec(const ConstVec &cvec=ConstVec())
Set the track constituent vector for the reference jet.
const std::vector< float > & calpx() const
Get the vector of .
std::vector< float > & f_calpx()
MissingETBase::Types::jetlink_t & f_jetLink()
Non-const link reference.
void initCache()
initialise cache for overlap removal decisions
bool setCalPy(const std::vector< float > &calpyvec)
Set the vector of .
static bool testPolicy(const xAOD::IParticle &part, MissingETBase::UsageHandler::Policy p)
std::vector< MissingETBase::Types::bitmask_t > & f_trkkey()
const std::vector< std::vector< size_t > > & overlapIndices() const
Get the list of object overlapIndices.
ConstVec calVec(const IParticle *pPart) const
Get calo constituent vector for a given object.
MissingETAssociation_v1(bool createStore=false)
Default constructor.
bool setTrkSumpt(const std::vector< float > &trksumptvec)
Set the vector of .
bool hasOverlaps(const MissingETAssociationHelper &helper, const IParticle *pPart, MissingETBase::UsageHandler::Policy p=MissingETBase::UsageHandler::OnlyCluster) const
Check if any selected particles overlap this one.
bool setTrkVec(size_t keyIdx, const ConstVec &cvec=ConstVec())
Set the track constituent vector of an object contribution referenced by index.
static const SG::AuxElement::Accessor< float > m_acc_jettrkpy
std::vector< float > & f_trke()
Namespace for generally used type definitions.
xAOD::MissingETAssociation_v1::ConstVec constvec_t
Type for constituent vector.
uint64_t bitmask_t
Type for status word bit mask.
std::vector< constvec_t > constvec_vector_t
Vector type for constituent vector containers.
ElementLink< xAOD::JetContainer > jetlink_t
Link to Jet object.
std::vector< objlink_t > objlink_vector_t
Vector of object links type.
@ OnlyCluster
CaloCluster based only.
General namespace for MET EDM software.
Definition index.py:1
ObjectType
Type of objects that have a representation in the xAOD EDM.
Definition ObjectType.h:32
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Jet_v1 Jet
Definition of the current "jet version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.
Definition JetTypes.h:17