ATLAS Offline Software
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 
18 namespace xAOD
19 {
20  // Forward declaration
21  class MissingETAssociationHelper;
22  class IParticle;
25  {
26  public:
27 
29 
31  class ConstVec
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();
95  bool setRefJet(const Jet* pJet);
97  bool setRefJet(const JetContainer* pJetCont,size_t pJetIdx);
103  bool addObject(const IParticle* pPart,const std::vector<const IParticle*>& constlist);
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);
145  bool setCalKey(size_t keyIdx,MissingETBase::Types::bitmask_t calkey);
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  //
152  bool clearCalVecs();
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);
189  bool setTrkKey(size_t keyIdx,MissingETBase::Types::bitmask_t trkkey);
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  //
196  bool clearTrkVecs();
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);
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);
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();
254  const Jet* refJet() const;
255  const JetContainer* refJetContainer() 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;
277  bool addOverlap(const IParticle* pPart,size_t index, unsigned char type);
278  bool addOverlap(size_t objIdx,size_t index, unsigned char type);
280  bool identifyOverlaps();
281  bool identifyOverlaps(size_t objIdx);
282  bool identifyOverlaps(const IParticle* pPart);
290  bool hasAlternateConstVec() const;
292 
296  bool containsSignal(const IParticle* pSig) const;
297  bool containsPhysics(const IParticle* pPhys) const;
298  bool isMisc() const;
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;
348  bool operator==(const MissingETAssociation_v1& contrib) const;
349  bool operator!=(const MissingETAssociation_v1& contrib) const;
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();
386  float& f_jettrksumpt();
387  //
388  char& f_isMisc();
389  //
390  std::vector<std::vector<size_t> >& f_overlapIndices();
391  std::vector<std::vector<unsigned char> >& f_overlapTypes();
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);
419  void initCache();
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 
449 namespace MissingETBase
450 {
451  namespace Types
452  {
454  typedef std::vector<constvec_t> constvec_vector_t;
455  }
456 }
457 
473 #endif
LArG4FSStartPointFilter.part
part
Definition: LArG4FSStartPointFilter.py:21
xAOD::MissingETAssociation_v1::setOverrideMom
void setOverrideMom(const std::map< const IParticle *, ConstVec > &pOverride)
Set override momenta.
xAOD::MissingETAssociation_v1::initCache
void initCache()
initialise cache for overlap removal decisions
Definition: MissingETAssociation_v1.cxx:866
xAOD::MissingETAssociation_v1::refJetContainer
const JetContainer * refJetContainer() const
Access reference jet container holding reference jet.
xAOD::MissingETAssociation_v1::m_acc_trkpz
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trkpz
Definition: MissingETAssociation_v1.h:436
xAOD::MissingETAssociation_v1::clearOverlaps
void clearOverlaps()
Clear the vectors of overlap indices
Definition: MissingETAssociation_v1.cxx:411
xAOD::MissingETAssociation_v1::setCalPx
bool setCalPx(const std::vector< float > &calpxvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:297
xAOD::MissingETAssociation_v1::f_calpy
std::vector< float > & f_calpy()
xAOD::MissingETAssociation_v1::objectLinks
const MissingETBase::Types::objlink_vector_t & objectLinks() const
Get the vector of links to the contributing physics or signal objects.
test_pyathena.px
px
Definition: test_pyathena.py:18
xAOD::MissingETAssociation_v1::operator!=
bool operator!=(const MissingETAssociation_v1 &contrib) const
Equality.
xAOD::MissingETAssociation_v1::setJetTrkPy
void setJetTrkPy(float py)
Set track constituent vector for the reference jet.
Definition: MissingETAssociation_v1.cxx:396
xAOD::MissingETAssociation_v1::jettrkpx
float jettrkpx() const
Get the vector for a given object referenced by index.
xAOD::MissingETAssociation_v1::overlapCalVec
ConstVec overlapCalVec(const MissingETAssociationHelper &helper) const
Retrieve total cluster-based vector to be subtracted from the jet.
Definition: MissingETAssociation_v1.cxx:770
xAOD::MissingETAssociation_v1::m_acc_calpz
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calpz
Definition: MissingETAssociation_v1.h:430
xAOD::MissingETAssociation_v1::f_overlapTypes
std::vector< std::vector< unsigned char > > & f_overlapTypes()
record overlapTypes between constributing objects
xAOD::MissingETAssociation_v1::setJetTrkSumpt
void setJetTrkSumpt(float sumpt)
Set track constituent vector for the reference jet.
Definition: MissingETAssociation_v1.cxx:402
ObjectType
ObjectType
Definition: BaseObject.h:11
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
xAOD::MissingETAssociation_v1
MET association descriptor contains object links and corresponding parameters.
Definition: MissingETAssociation_v1.h:25
xAOD::MissingETAssociation_v1::setTrkPy
bool setTrkPy(const std::vector< float > &trkpyvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:312
index
Definition: index.py:1
xAOD::MissingETAssociation_v1::operator=
MissingETAssociation_v1 & operator=(const MissingETAssociation_v1 &assocDescr)
Definition: MissingETAssociation_v1.cxx:119
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:483
xAOD::MissingETAssociation_v1::hasAlternateConstVec
bool hasAlternateConstVec() const
Definition: MissingETAssociation_v1.cxx:752
xAOD::MissingETAssociation_v1::removeContrib
bool removeContrib()
Remove all contributions.
Definition: MissingETAssociation_v1.cxx:211
xAOD::MissingETAssociation_v1::setJetTrkE
void setJetTrkE(float e)
Set track constituent vector for the reference jet.
Definition: MissingETAssociation_v1.cxx:400
xAOD::MissingETAssociation_v1::cale
const std::vector< float > & cale() const
Get the vector of
xAOD::MissingETAssociation_v1::copyData
void copyData(const MissingETAssociation_v1 &assocDescr)
xAOD::MissingETAssociation_v1::setTrkSumpt
bool setTrkSumpt(const std::vector< float > &trksumptvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:318
xAOD::MissingETAssociation_v1::identifyOverlaps
bool identifyOverlaps()
Loop over contributing objects to identify those that share constituents.
Definition: MissingETAssociation_v1.cxx:598
xAOD::MissingETAssociation_v1::f_trksumpt
std::vector< float > & f_trksumpt()
operator*
MissingETBase::Types::constvec_t operator*(const MissingETBase::Types::constvec_t &cvec, float scale)
Scale constituent vector by multiplication.
MissingETCompositionBase.h
xAOD::MissingETAssociation_v1::resetContrib
bool resetContrib(const IParticle *pPart)
Reset the contribution parameters of an object referenced by a pointer.
xAOD::MissingETAssociation_v1::m_acc_jettrkpx
static const SG::AuxElement::Accessor< float > m_acc_jettrkpx
Definition: MissingETAssociation_v1.h:440
MissingETBase
General namespace for MET EDM software.
Definition: MissingETAssociation_v1.h:450
xAOD::MissingETAssociation_v1::identifyOverlaps
bool identifyOverlaps(const IParticle *pPart)
Search association for particles that share constituents with this one.
xAOD::MissingETAssociation_v1::ConstVec::ce
float & ce()
Returns reference to modifiable data word storing .
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::MissingETAssociation_v1::containsSignal
bool containsSignal(const IParticle *pSig) const
Check if this signal object matches the constituents of any contributing objects.
Definition: MissingETAssociation_v1.cxx:802
xAOD::MissingETAssociation_v1::f_trkpz
std::vector< float > & f_trkpz()
xAOD::MissingETAssociation_v1::overlapTypes
const std::vector< std::vector< unsigned char > > & overlapTypes() const
Get the list of object overlapTypes.
xAOD::MissingETAssociation_v1::jettrksumpt
float jettrksumpt() const
Get the sumpt for a given object referenced by index.
xAOD::MissingETAssociation_v1::ConstVec::m_ce
float m_ce
Definition: MissingETAssociation_v1.h:79
operator-
MissingETBase::Types::constvec_t operator-(const MissingETBase::Types::constvec_t &v0, const MissingETBase::Types::constvec_t &v2)
Subtract constituent vectors.
xAOD::MissingETAssociation_v1::ConstVec::operator!=
bool operator!=(const ConstVec &cvec) const
Inequality operator.
xAOD::MissingETAssociation_v1::addObject
bool addObject(const IParticle *pPart, const std::vector< const IParticle * > &constlist)
Add object (particle) from pointer reference with individual constituent vectors.
Definition: MissingETAssociation_v1.cxx:152
xAOD::MissingETAssociation_v1::m_acc_trkpx
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trkpx
Definition: MissingETAssociation_v1.h:434
MissingETBase::Types::bitmask_t
uint64_t bitmask_t
Type for status word bit mask.
Definition: MissingETBase.h:39
MissingETBase::UsageHandler::OnlyCluster
@ OnlyCluster
CaloCluster based only.
Definition: MissingETCompositionBase.h:184
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:41
yodamerge_tmp.scale
scale
Definition: yodamerge_tmp.py:138
xAOD::MissingETAssociation_v1::jettrkpz
float jettrkpz() const
Get the vector for a given object referenced by pointer.
xAOD::MissingETAssociation_v1::setJetTrkPz
void setJetTrkPz(float pz)
Set track constituent vector for the reference jet.
Definition: MissingETAssociation_v1.cxx:398
xAOD::MissingETAssociation_v1::m_acc_jettrke
static const SG::AuxElement::Accessor< float > m_acc_jettrke
Definition: MissingETAssociation_v1.h:443
xAOD::py
py
Definition: CompositeParticle_v1.cxx:160
xAOD::MissingETAssociation_v1::ConstVec::ConstVec
ConstVec(float cpx, float cpy, float cpz, float ce, float sumpt)
Constructor with parameters.
xAOD::MissingETAssociation_v1::setTrkE
bool setTrkE(const std::vector< float > &trkevec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:316
D3PD::Types
std::tuple< WrapType< TYPES >... > Types
A simple tuple of multiple types.
Definition: PhysicsAnalysis/D3PDMaker/D3PDMakerUtils/D3PDMakerUtils/Types.h:61
xAOD::MissingETAssociation_v1::overlapIndices
const std::vector< std::vector< size_t > > & overlapIndices() const
Get the list of object overlapIndices.
xAOD::MissingETAssociation_v1::hasOverlaps
bool hasOverlaps(const MissingETAssociationHelper &helper, const IParticle *pPart, MissingETBase::UsageHandler::Policy p=MissingETBase::UsageHandler::OnlyCluster) const
Check if any selected particles overlap this one.
xAOD::MissingETAssociation_v1::trksumpt
const std::vector< float > & trksumpt() const
Get the vector of
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
xAOD::MissingETAssociation_v1::hasOverlaps
bool hasOverlaps(const MissingETAssociationHelper &helper, size_t objIdx, MissingETBase::UsageHandler::Policy p=MissingETBase::UsageHandler::OnlyCluster) const
Check if any selected particles overlap this one.
Definition: MissingETAssociation_v1.cxx:717
xAOD::MissingETAssociation_v1::ConstVec
Vector sum of constituents for subtractive overlap removal.
Definition: MissingETAssociation_v1.h:32
xAOD::MissingETAssociation_v1::containsPhysics
bool containsPhysics(const IParticle *pPhys) const
Check if this physics object matches any contributing objects.
Definition: MissingETAssociation_v1.cxx:790
xAOD::MissingETAssociation_v1::testPolicy
static bool testPolicy(const xAOD::IParticle &part, MissingETBase::UsageHandler::Policy p)
Definition: MissingETAssociation_v1.cxx:873
python.utils.AtlRunQueryLookup.mask
string mask
Definition: AtlRunQueryLookup.py:459
xAOD::MissingETAssociation_v1::resetContrib
bool resetContrib()
Reset all contribution parameters.
Definition: MissingETAssociation_v1.cxx:247
xAOD::MissingETAssociation_v1::clearTrkVecs
bool clearTrkVecs()
Reset the track constituent vectors and keys.
xAOD::MissingETAssociation_v1::ConstVec::setCpx
void setCpx(float px)
Set .
xAOD::MissingETAssociation_v1::ConstVec::cpx
float & cpx()
Returns reference to modifiable data word storing .
runBeamSpotCalibration.helper
helper
Definition: runBeamSpotCalibration.py:115
xAOD::MissingETAssociation_v1::findIndex
size_t findIndex(const IParticle *pPart) const
Find index of given object in contributing object store.
Definition: MissingETAssociation_v1.cxx:266
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
xAOD::MissingETAssociation_v1::refJetIndex
size_t refJetIndex() const
Access index of reference jet in its container.
xAOD::MissingETAssociation_v1::calpx
const std::vector< float > & calpx() const
Get the vector of
xAOD::MissingETAssociation_v1::f_removeContrib
bool f_removeContrib(size_t objIdx)
Copy the contribution data from a source.
Definition: MissingETAssociation_v1.cxx:218
xAOD::MissingETAssociation_v1::setJetLink
bool setJetLink(const MissingETBase::Types::jetlink_t &jetLnk)
Set the link to the reference jet.
Definition: MissingETAssociation_v1.cxx:448
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:209
xAOD::MissingETAssociation_v1::removeContrib
bool removeContrib(const IParticle *pPart)
Remove a contribution referenced by an object pointer.
MissingETBase::Types::objlink_vector_t
std::vector< objlink_t > objlink_vector_t
Vector of object links type.
Definition: MissingETCompositionBase.h:58
xAOD::MissingETAssociation_v1::setCalSumpt
bool setCalSumpt(const std::vector< float > &calsumptvec)
Set the vector of sumpt
Definition: MissingETAssociation_v1.cxx:305
xAOD::MissingETAssociation_v1::ConstVec::cpy
float & cpy()
Returns reference to modifiable data word storing .
xAOD::MissingETAssociation_v1::setJetTrkVec
void setJetTrkVec(const ConstVec &cvec=ConstVec())
Set the track constituent vector for the reference jet.
xAOD::MissingETAssociation_v1::m_acc_trke
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trke
Definition: MissingETAssociation_v1.h:437
parseMapping.v0
def v0
Definition: parseMapping.py:149
xAOD::MissingETAssociation_v1::overrideMom
std::map< const IParticle *, ConstVec > overrideMom()
Get override momenta.
xAOD::MissingETAssociation_v1::calsumpt
const std::vector< float > & calsumpt() const
Get the vector of sumpt
xAOD::e
setPy e
Definition: CompositeParticle_v1.cxx:166
xAOD::MissingETAssociation_v1::ConstVec::setCpy
void setCpy(float py)
Set .
IParticleContainer.h
xAOD::MissingETAssociation_v1::ConstVec::cpy
float cpy() const
Returns .
xAOD::MissingETAssociation_v1::ConstVec::sumpt
float sumpt() const
Returns sum of component pt.
xAOD::MissingETAssociation_v1::m_acc_cale
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_cale
Definition: MissingETAssociation_v1.h:431
xAOD::MissingETAssociation_v1::ConstVec::setCe
void setCe(float e)
Set .
MissingETBase::Types::constvec_t
xAOD::MissingETAssociation_v1::ConstVec constvec_t
Type for constituent vector.
Definition: MissingETAssociation_v1.h:453
xAOD::MissingETAssociation_v1::f_trkpy
std::vector< float > & f_trkpy()
xAOD::MissingETAssociation_v1::jettrkpy
float jettrkpy() const
Get the vector for a given object referenced by pointer.
xAOD::MissingETAssociation_v1::m_acc_calsumpt
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calsumpt
Definition: MissingETAssociation_v1.h:432
xAOD::MissingETAssociation_v1::overlapIndices
std::vector< size_t > overlapIndices(const IParticle *pPart) const
Get the overlap indices for a given object referenced by pointer.
xAOD::MissingETAssociation_v1::trkkey
const std::vector< MissingETBase::Types::bitmask_t > & trkkey() const
Get the vector of trk keys.
Amg::pz
@ pz
Definition: GeoPrimitives.h:40
xAOD::MissingETAssociation_v1::~MissingETAssociation_v1
virtual ~MissingETAssociation_v1()
Assignment operator.
Definition: MissingETAssociation_v1.cxx:146
xAOD::MissingETAssociation_v1::setCalPy
bool setCalPy(const std::vector< float > &calpyvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:299
xAOD::MissingETAssociation_v1::setJetTrkPx
void setJetTrkPx(float px)
Set track constituent vector for the reference jet.
Definition: MissingETAssociation_v1.cxx:394
xAOD::MissingETAssociation_v1::setTrkPx
bool setTrkPx(const std::vector< float > &trkpxvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:310
xAOD::MissingETAssociation_v1::f_jettrksumpt
float & f_jettrksumpt()
xAOD::MissingETAssociation_v1::ConstVec::operator/=
ConstVec & operator/=(float scale)
Scale vector by division.
Definition: MissingETAssociation_v1.cxx:69
operator/
MissingETBase::Types::constvec_t operator/(const MissingETBase::Types::constvec_t &cvec, float scale)
Scale constituent vector by division.
xAOD::MissingETAssociation_v1::addOverlap
bool addOverlap(const IParticle *pPart, size_t index, unsigned char type)
Add overlap index for a given contributing object referenced by pointer.
xAOD::MissingETAssociation_v1::setTrkVec
bool setTrkVec(size_t keyIdx, const ConstVec &cvec=ConstVec())
Set the track constituent vector of an object contribution referenced by index.
operator+
MissingETBase::Types::constvec_t operator+(const MissingETBase::Types::constvec_t &v0, const MissingETBase::Types::constvec_t &v2)
Add constituent vectors.
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
xAOD::MissingETAssociation_v1::m_objConstLinks
std::vector< std::vector< ElementLink< IParticleContainer > > > m_objConstLinks
Cache object constituents for overlap-finding.
Definition: MissingETAssociation_v1.h:423
xAOD::MissingETAssociation_v1::jetLink
const MissingETBase::Types::jetlink_t & jetLink() const
Get the link to the reference jet.
xAOD::MissingETAssociation_v1::ConstVec::cpz
float cpz() const
Returns .
xAOD::MissingETAssociation_v1::f_jettrkpz
float & f_jettrkpz()
xAOD::MissingETAssociation_v1::calVec
ConstVec calVec(const IParticle *pPart) const
Get calo constituent vector for a given object.
Definition: MissingETAssociation_v1.cxx:538
xAOD::MissingETAssociation_v1::ConstVec::operator-=
ConstVec & operator-=(const ConstVec &cvec)
Subtract another vector.
Definition: MissingETAssociation_v1.cxx:55
xAOD::MissingETAssociation_v1::jetTrkVec
ConstVec jetTrkVec() const
Get track constituent vector for the reference jet.
Definition: MissingETAssociation_v1.cxx:568
xAOD::MissingETAssociation_v1::addCalVec
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.
Definition: MissingETAssociation_v1.cxx:345
MissingETBase::Types::constvec_vector_t
std::vector< constvec_t > constvec_vector_t
Vector type for constituent vector containers.
Definition: MissingETAssociation_v1.h:454
xAOD::MissingETAssociation_v1::ConstVec::operator*=
ConstVec & operator*=(float scale)
Scale vector by multiplication.
Definition: MissingETAssociation_v1.cxx:62
xAOD::MissingETAssociation_v1::setTrkKey
bool setTrkKey(const std::vector< MissingETBase::Types::bitmask_t > &trkkeyvec)
Set the vector of keys
Definition: MissingETAssociation_v1.cxx:320
xAOD::MissingETAssociation_v1::ConstVec::~ConstVec
~ConstVec()
Data class destructor.
MissingETBase::UsageHandler::Policy
Policy
Policies on usage checks.
Definition: MissingETCompositionBase.h:182
xAOD::JetFourMom_t
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.
Definition: JetTypes.h:17
xAOD::MissingETAssociation_v1::f_jetLink
MissingETBase::Types::jetlink_t & f_jetLink()
Non-const link reference
xAOD::MissingETAssociation_v1::overlapTypes
std::vector< unsigned char > overlapTypes(const IParticle *pPart) const
Get the overlap types for a given object referenced by pointer.
xAOD::MissingETAssociation_v1::trke
const std::vector< float > & trke() const
Get the vector of
xAOD::MissingETAssociation_v1::setOverlaps
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.
xAOD::MissingETAssociation_v1::createPrivateStore
void createPrivateStore()
Function initialising the object to work in standalone mode.
Definition: MissingETAssociation_v1.cxx:836
xAOD::MissingETAssociation_v1::setCalVec
bool setCalVec(size_t keyIdx, const ConstVec &cvec=ConstVec())
Set the calo constituent vector of an object contribution referenced by index.
xAOD::MissingETAssociation_v1::f_isMisc
char & f_isMisc()
xAOD::MissingETAssociation_v1::ConstVec::m_cpx
float m_cpx
Definition: MissingETAssociation_v1.h:76
xAOD::MissingETAssociation_v1::f_overlapIndices
std::vector< std::vector< size_t > > & f_overlapIndices()
record overlapIndices between constributing objects
xAOD::MissingETAssociation_v1::m_override
std::map< const IParticle *, ConstVec > m_override
Definition: MissingETAssociation_v1.h:426
xAOD::MissingETAssociationHelper
Definition: MissingETAssociationHelper.h:22
xAOD::MissingETAssociation_v1::clearCalVecs
bool clearCalVecs()
Reset the calo constituent vectors and keys.
xAOD::MissingETAssociation_v1::overlapTrkVec
ConstVec overlapTrkVec(const MissingETAssociationHelper &helper) const
Retrieve total track-based vector to be subtracted from the jet.
Definition: MissingETAssociation_v1.cxx:780
xAOD::MissingETAssociation_v1::jettrke
float jettrke() const
Get the vector for a given object referenced by index.
xAOD::MissingETAssociation_v1::ConstVec::ConstVec
ConstVec()
Default constructor.
xAOD::MissingETAssociation_v1::m_acc_jettrksumpt
static const SG::AuxElement::Accessor< float > m_acc_jettrksumpt
Definition: MissingETAssociation_v1.h:444
xAOD::MissingETAssociation_v1::f_trke
std::vector< float > & f_trke()
MissingETAssociation_v1.icc
ReadCellNoiseFromCoolCompare.v2
v2
Definition: ReadCellNoiseFromCoolCompare.py:364
xAOD::MissingETAssociation_v1::m_acc_jettrkpy
static const SG::AuxElement::Accessor< float > m_acc_jettrkpy
Definition: MissingETAssociation_v1.h:441
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
xAOD::MissingETAssociation_v1::f_jettrke
float & f_jettrke()
xAOD::MissingETAssociation_v1::f_objectLinks
MissingETBase::Types::objlink_vector_t & f_objectLinks()
Non-const link reference.
xAOD::MissingETAssociation_v1::calkey
const std::vector< MissingETBase::Types::bitmask_t > & calkey() const
Get the vector of cal keys.
xAOD::MissingETAssociation_v1::addTrkVec
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.
Definition: MissingETAssociation_v1.cxx:379
xAOD::MissingETAssociation_v1::calpz
const std::vector< float > & calpz() const
Get the vector of
xAOD::MissingETAssociation_v1::isMisc
bool isMisc() const
Check if this association is a miscellaneous association.
xAOD::MissingETAssociation_v1::f_calkey
std::vector< MissingETBase::Types::bitmask_t > & f_calkey()
xAOD::MissingETAssociation_v1::ConstVec::cpt
float cpt() const
Returns .
Definition: MissingETAssociation_v1.cxx:85
xAOD::MissingETAssociation_v1::empty
bool empty() const
Update all internally used ElementLink instances.
xAOD::MissingETAssociation_v1::m_acc_calpy
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calpy
Definition: MissingETAssociation_v1.h:429
xAOD::MissingETAssociation_v1::trkpy
const std::vector< float > & trkpy() const
Get the vector of
xAOD::MissingETAssociation_v1::checkUsage
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.
Definition: MissingETAssociation_v1.cxx:816
xAOD::MissingETAssociation_v1::setCalE
bool setCalE(const std::vector< float > &calevec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:303
xAOD::MissingETAssociation_v1::m_acc_jettrkpz
static const SG::AuxElement::Accessor< float > m_acc_jettrkpz
Definition: MissingETAssociation_v1.h:442
xAOD::MissingETAssociation_v1::f_calpz
std::vector< float > & f_calpz()
xAOD::MissingETAssociation_v1::setOverlaps
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.
Definition: MissingETAssociation_v1.cxx:418
xAOD::MissingETAssociation_v1::m_acc_trkpy
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trkpy
Definition: MissingETAssociation_v1.h:435
xAOD::MissingETAssociation_v1::findTrkIndex
size_t findTrkIndex(MissingETBase::Types::bitmask_t mask) const
Definition: MissingETAssociation_v1.cxx:287
xAOD::MissingETAssociation_v1::f_calsumpt
std::vector< float > & f_calsumpt()
xAOD::MissingETAssociation_v1::f_setLink
bool f_setLink(LINK &elemLink)
xAOD::MissingETAssociation_v1::f_trkpx
std::vector< float > & f_trkpx()
xAOD::MissingETAssociation_v1::trkVec
ConstVec trkVec(const IParticle *pPart) const
Get track constituent vector for a given object.
Definition: MissingETAssociation_v1.cxx:548
xAOD::MissingETAssociation_v1::f_jettrkpx
float & f_jettrkpx()
xAOD::MissingETAssociation_v1::ConstVec::setSumpt
void setSumpt(float sumpt)
Set sumpt.
xAOD::MissingETAssociation_v1::setCalPz
bool setCalPz(const std::vector< float > &calpzvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:301
xAOD::MissingETAssociation_v1::f_calpx
std::vector< float > & f_calpx()
xAOD::MissingETAssociation_v1::f_setObject
void f_setObject(const POBJ *pObj, LINK &elemLink)
Generalized link manager.
xAOD::MissingETAssociation_v1::calpx
float calpx(const IParticle *pPart) const
Get the vector for a given object referenced by pointer.
xAOD::MissingETAssociation_v1::f_cale
std::vector< float > & f_cale()
xAOD::MissingETAssociation_v1::setCalKey
bool setCalKey(const std::vector< MissingETBase::Types::bitmask_t > &calkeyvec)
Set the vector of keys
Definition: MissingETAssociation_v1.cxx:307
xAOD::MissingETAssociation_v1::removeContrib
bool removeContrib(size_t objIdx)
Remove a contribution referenced by an index.
xAOD::MissingETAssociation_v1::trkpx
const std::vector< float > & trkpx() const
Get the vector of
xAOD::MissingETAssociation_v1::ConstVec::operator==
bool operator==(const ConstVec &cvec) const
Equality comparator.
Definition: MissingETAssociation_v1.cxx:75
xAOD::MissingETAssociation_v1::ConstVec::cpx
float cpx() const
Returns .
xAOD::MissingETAssociation_v1::ConstVec::cpz
float & cpz()
Returns reference to modifiable data word storing .
xAOD::MissingETAssociation_v1::ConstVec::setCpz
void setCpz(float pz)
Set .
xAOD::MissingETAssociation_v1::ConstVec::ConstVec
ConstVec(const IParticle &ipar)
Constructor from IParticle.
xAOD::MissingETAssociation_v1::trkpz
const std::vector< float > & trkpz() const
Get the vector of
xAOD::MissingETAssociation_v1::findCalIndex
size_t findCalIndex(MissingETBase::Types::bitmask_t mask) const
Definition: MissingETAssociation_v1.cxx:281
xAOD::MissingETAssociation_v1::addOverrideMom
void addOverrideMom(std::map< const IParticle *, ConstVec > &pOverride)
Extend override momentum map.
xAOD::MissingETAssociation_v1::setObjectLinks
bool setObjectLinks(const MissingETBase::Types::objlink_vector_t &objLnks)
Set the vector of links to the contributing physics or signal objects.
Definition: MissingETAssociation_v1.cxx:455
xAOD::MissingETAssociation_v1::f_jettrkpy
float & f_jettrkpy()
xAOD::MissingETAssociation_v1::ConstVec::operator+=
ConstVec & operator+=(const ConstVec &cvec)
Add another vector.
Definition: MissingETAssociation_v1.cxx:48
IParticle
Definition: Event/EventKernel/EventKernel/IParticle.h:43
xAOD::MissingETAssociation_v1::m_acc_calpx
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_calpx
Definition: MissingETAssociation_v1.h:428
xAOD::MissingETAssociation_v1::refJet
const Jet * refJet() const
Access reference jet.
xAOD::MissingETAssociation_v1::f_trkkey
std::vector< MissingETBase::Types::bitmask_t > & f_trkkey()
xAOD::MissingETAssociation_v1::operator==
bool operator==(const MissingETAssociation_v1 &contrib) const
Definition: MissingETAssociation_v1.cxx:575
xAOD::MissingETAssociation_v1::ConstVec::ce
float ce() const
Returns .
xAOD::MissingETAssociation_v1::objects
std::vector< const IParticle * > objects() const
Access contributing objects.
Definition: MissingETAssociation_v1.cxx:503
xAOD::MissingETAssociation_v1::setTrkPz
bool setTrkPz(const std::vector< float > &trkpzvec)
Set the vector of
Definition: MissingETAssociation_v1.cxx:314
xAOD::MissingETAssociation_v1::getAlternateConstVec
xAOD::JetFourMom_t getAlternateConstVec() const
Definition: MissingETAssociation_v1.cxx:757
xAOD::MissingETAssociation_v1::ConstVec::m_sumpt
float m_sumpt
Definition: MissingETAssociation_v1.h:80
AuxElement.h
Base class for elements of a container that can have aux data.
xAOD::MissingETAssociation_v1::ConstVec::m_cpy
float m_cpy
Definition: MissingETAssociation_v1.h:77
xAOD::MissingETAssociation_v1::ConstVec::m_cpz
float m_cpz
Definition: MissingETAssociation_v1.h:78
xAOD::MissingETAssociation_v1::ConstVec::sumpt
float & sumpt()
Returns reference to modifiable data word storing sum of component pt.
xAOD::MissingETAssociation_v1::setRefJet
bool setRefJet(const Jet *pJet)
Set reference jet by object pointer reference.
Definition: MissingETAssociation_v1.cxx:434
xAOD::MissingETAssociation_v1::calpy
const std::vector< float > & calpy() const
Get the vector of
mapkey::key
key
Definition: TElectronEfficiencyCorrectionTool.cxx:37
xAOD::MissingETAssociation_v1::MissingETAssociation_v1
MissingETAssociation_v1(bool createStore=false)
Default constructor.
Definition: MissingETAssociation_v1.cxx:94
xAOD::MissingETAssociation_v1::m_acc_trksumpt
static const SG::AuxElement::Accessor< std::vector< float > > m_acc_trksumpt
Definition: MissingETAssociation_v1.h:438