ATLAS Offline Software
Classes | Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
MissingETComposition Class Reference

#include <MissingETComposition.h>

Inheritance diagram for MissingETComposition:
Collaboration diagram for MissingETComposition:

Classes

class  const_iterator
 

Public Types

typedef INavigable4MomentumCollection collection_t
 
typedef collection_t::base_value_type object_t
 
typedef MissingETHandlers::Weight weight_t
 
typedef Navigable< collection_t, weight_tbase_t
 
typedef base_t::object_iter iiterator_t
 
typedef typename NavigationDefaults::DefaultChildColl< INavigable4MomentumCollection, MissingETHandlers::Weight >::type constituent_coll
 
typedef constituent_coll::iterator constituent_iter
 
typedef constituent_coll::const_iterator constituent_const_iter
 
typedef INavigable4MomentumCollection container_type
 Object container type. More...
 
typedef MissingETHandlers::Weight parameter_type
 \ brief Relational parameter type More...
 
typedef NavigationDefaults::DefaultChildColl< container_type, parameter_typenavhelper_t
 Collection manager type. More...
 
typedef CONT::base_value_type constituent_type
 
typedef CONT::reference constituent_ptr_ref
 
typedef CONT::const_reference constituent_const_ptr_ref
 
typedef CONT::value_type constituent_ptr
 
typedef SG::GenerateIndexingPolicy< INavigable4MomentumCollection >::type::index_type external_index_type
 
typedef NavigableIterator< INavigable4MomentumCollection, MissingETHandlers::Weight, typename NavigationDefaults::DefaultChildColl< INavigable4MomentumCollection, MissingETHandlers::Weight >::type > object_iter
 

Public Member Functions

 MissingETComposition ()
 
virtual ~MissingETComposition ()
 
void insert (const collection_t *pColl, const object_t *pObj, weight_t weight)
 
weight_t getWeight (const object_t *pObj) const
 
template<class OBJECT >
weight_t getWeight (const_iterator< OBJECT > fObj) const
 
template<class OBJECT >
const_iterator< OBJECT > beginIterator () const
 
template<class OBJECT >
const_iterator< OBJECT > endIterator () const
 
template<class OBJECT >
const_iterator< OBJECT > find (const OBJECT *pObj) const
 
template<class OBJECT >
bool fillMissingET (MissingET *pMET, unsigned short rejectTag=(MissingETtags::PILEUP_CORRECTED|MissingETtags::REMOVED_CLUSTER)) const
 
template<class OBJECT >
MissingETgetMissingET (unsigned short rejectTag=(MissingETtags::PILEUP_CORRECTED|MissingETtags::REMOVED_CLUSTER)) const
 
virtual void fillToken (INavigationToken &navToken) const
 
virtual void fillToken (INavigationToken &navToken, const std::any &parentParameter) const
 
void putElement (const INavigable4MomentumCollection *objectContainer, const constituent_type *constituentObject, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
 
void putElement (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
 
void insertElement (const INavigable4MomentumCollection *objectContainer, const constituent_type *constituentObject, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
 
void insertElement (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
 
void insertElement (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex, IProxyDict *sg, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
 
void insertElement (const ElementLink< INavigable4MomentumCollection > &el, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
 
void reweight (const constituent_type *constituentObject, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight())
 
void reweight (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight())
 
void reweight (object_iter &objectIter, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight())
 
bool remove (const constituent_type *aConstituent)
 
bool remove (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex)
 
bool removeAll ()
 
bool replace (const INavigable4MomentumCollection *newObjectContainer)
 replace old object container with a new container assumes that all objects have been or will be inserted to the new container
More...
 
bool contains (const constituent_type *aConstituent) const
 
bool contains (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex) const
 
virtual object_iter begin () const
 
virtual object_iter end () const
 
virtual unsigned int size () const
 
MissingETHandlers::Weight getParameter (const constituent_type *aConstituent) const
 
MissingETHandlers::Weight getParameter (const INavigable4MomentumCollection *objectContainer, const external_index_type &theIndex) const
 
MissingETHandlers::Weight getParameter (object_iter &theIter) const
 
const INavigable4MomentumCollectiongetContainer (const constituent_type *aConstituent) const
 
const INavigable4MomentumCollectiongetContainer (constituent_const_iter anIter) const
 
const INavigable4MomentumCollectiongetContainer (object_iter objectIter) const
 
bool getIndex (const constituent_type *aConstituent, external_index_type &theIndex) const
 
bool getIndex (constituent_const_iter anIter, external_index_type &theIndex) const
 
bool getIndex (object_iter objectIter, external_index_type &theIndex) const
 

Protected Member Functions

const constituent_collgetConstituents () const
 
constituent_collgetConstituents ()
 
const constituent_collgetPtrToConstituents () const
 
constituent_collgetPtrToConstituents ()
 
virtual const constituent_typegetConstituentPtr (constituent_iter iter) const
 
virtual const constituent_typegetConstituentPtr (constituent_const_iter iter) const
 
virtual MissingETHandlers::Weight getConstituentPar (constituent_iter iter) const
 
virtual MissingETHandlers::Weight getConstituentPar (constituent_const_iter iter) const
 
void dumpStore () const
 

Private Member Functions

virtual void apply (NavigationToken< constituent_type > &navToken) const
 
virtual void apply (NavigationToken< constituent_type, MissingETHandlers::Weight > &navToken, const MissingETHandlers::Weight &aParameter) const
 
virtual void toKidsAfterAccept (INavigationToken &navToken) const
 
virtual void toKidsAfterAccept (INavigationToken &navToken, const std::any &aParameter) const
 
virtual void toKidsAfterReject (INavigationToken &navToken) const
 
virtual void toKidsAfterReject (INavigationToken &navToken, const std::any &aParameter) const
 

Private Attributes

constituent_coll m_constituents
 

Detailed Description

Definition at line 295 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

Member Typedef Documentation

◆ base_t

◆ collection_t

◆ constituent_coll

Definition at line 101 of file Navigable.h.

◆ constituent_const_iter

Definition at line 103 of file Navigable.h.

◆ constituent_const_ptr_ref

Definition at line 151 of file Navigable.h.

◆ constituent_iter

Definition at line 102 of file Navigable.h.

◆ constituent_ptr

Definition at line 152 of file Navigable.h.

◆ constituent_ptr_ref

Definition at line 150 of file Navigable.h.

◆ constituent_type

Definition at line 149 of file Navigable.h.

◆ container_type

Object container type.

Definition at line 110 of file Navigable.h.

◆ external_index_type

Definition at line 156 of file Navigable.h.

◆ iiterator_t

◆ navhelper_t

Collection manager type.

Definition at line 114 of file Navigable.h.

◆ object_iter

Definition at line 159 of file Navigable.h.

◆ object_t

◆ parameter_type

\ brief Relational parameter type

Definition at line 112 of file Navigable.h.

◆ weight_t

Constructor & Destructor Documentation

◆ MissingETComposition()

MissingETComposition::MissingETComposition ( )

◆ ~MissingETComposition()

MissingETComposition::~MissingETComposition ( )
virtual

Member Function Documentation

◆ apply() [1/2]

◆ apply() [2/2]

◆ begin()

◆ beginIterator()

template<class OBJECT >
const_iterator<OBJECT> MissingETComposition::beginIterator ( ) const
inline

Definition at line 414 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

415  {
416  if (this->begin() != this->end()) {
417  const_iterator<OBJECT> temp(static_cast<const base_t*>(this), this->begin());
418  if ((*temp)==0) {++temp; return temp;}
419  return temp;
420  }
421  else { return const_iterator<OBJECT>(static_cast<const base_t*>(this), this->begin()); }
422  }

◆ contains() [1/2]

◆ contains() [2/2]

◆ dumpStore()

◆ end()

◆ endIterator()

template<class OBJECT >
const_iterator<OBJECT> MissingETComposition::endIterator ( ) const
inline

Definition at line 425 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

426  {
427  return const_iterator<OBJECT>(static_cast<const base_t*>(this), this->end());
428  }

◆ fillMissingET()

template<class OBJECT >
bool MissingETComposition::fillMissingET ( MissingET pMET,
unsigned short  rejectTag = (MissingETtags::PILEUP_CORRECTED |         MissingETtags::REMOVED_CLUSTER) 
) const
inline

Definition at line 441 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

444  {
445  // sanity check
446  if ( pMET == 0 ) return false;
447  // sum up
448  float px(0.);
449  float py(0.);
450  float et(0.);
451  float eta(0.);
452  float e(0.);
453  const_iterator<OBJECT> fObj(this->beginIterator<OBJECT>());
454  const_iterator<OBJECT> lObj(this->endIterator<OBJECT>());
455  for ( ; fObj != lObj; ++fObj )
456  {
457  if ( !MissingETtags::usesTags(fObj.statusWord(),rejectTag) )
458  {
459  px += (*fObj)->px() * fObj.getParameter().wpx();
460  py += (*fObj)->py() * fObj.getParameter().wpy();
461  et += (*fObj)->et() * fObj.getParameter().wet();
462  // eta
463  eta += (*fObj)->eta() * (*fObj)->e() * fObj.getParameter().wet();
464  e += (*fObj)->e() * fObj.getParameter().wet();
465  }
466  }
467  // get eta
468  eta = e != 0. ? eta/e : 0.;
469  //
470  pMET->add(px,py,et,eta,1.0);
471  return true;
472  }

◆ fillToken() [1/2]

Implements INavigable.

◆ fillToken() [2/2]

virtual void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::fillToken ( INavigationToken navToken,
const std::any &  parentParameter 
) const
virtualinherited

Implements INavigable.

◆ find()

template<class OBJECT >
const_iterator<OBJECT> MissingETComposition::find ( const OBJECT *  pObj) const
inline

Definition at line 431 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

432  {
433  const_iterator<OBJECT> fObj = this->beginIterator<OBJECT>();
434  const_iterator<OBJECT> lObj = this->endIterator<OBJECT>();
435  while ( fObj != lObj && pObj != *fObj ) { ++fObj; }
436  return fObj;
437  }

◆ getConstituentPar() [1/2]

◆ getConstituentPar() [2/2]

◆ getConstituentPtr() [1/2]

◆ getConstituentPtr() [2/2]

◆ getConstituents() [1/2]

Definition at line 291 of file Navigable.h.

291 { return m_constituents; }

◆ getConstituents() [2/2]

Definition at line 290 of file Navigable.h.

290 { return m_constituents; }

◆ getContainer() [1/3]

◆ getContainer() [2/3]

◆ getContainer() [3/3]

◆ getIndex() [1/3]

◆ getIndex() [2/3]

◆ getIndex() [3/3]

◆ getMissingET()

template<class OBJECT >
MissingET* MissingETComposition::getMissingET ( unsigned short  rejectTag = (MissingETtags::PILEUP_CORRECTED | MissingETtags::REMOVED_CLUSTER)) const
inline

Definition at line 476 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

479  {
480  //
481  MissingET* pMET = new MissingET(MissingET::Ref);
482  if ( this->fillMissingET<OBJECT>(pMET,rejectTag) ) return pMET;
483  // error raised
484  if ( pMET != 0 ) delete pMET;
485  return (MissingET*)0;
486  }

◆ getParameter() [1/3]

◆ getParameter() [2/3]

◆ getParameter() [3/3]

◆ getPtrToConstituents() [1/2]

Definition at line 296 of file Navigable.h.

297  { return &m_constituents; }

◆ getPtrToConstituents() [2/2]

Definition at line 294 of file Navigable.h.

295  { return &m_constituents; }

◆ getWeight() [1/2]

weight_t MissingETComposition::getWeight ( const object_t pObj) const
inline

Definition at line 402 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

403  {
404  return this->getParameter(pObj);
405  }

◆ getWeight() [2/2]

template<class OBJECT >
weight_t MissingETComposition::getWeight ( const_iterator< OBJECT >  fObj) const
inline

Definition at line 408 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

409  {
410  return fObj.getParameter();
411  }

◆ insert()

void MissingETComposition::insert ( const collection_t pColl,
const object_t pObj,
weight_t  weight 
)
inline

Definition at line 396 of file Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h.

398  {
399  this->insertElement(pColl,pObj,weight);
400  }

◆ insertElement() [1/4]

◆ insertElement() [2/4]

void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::insertElement ( const INavigable4MomentumCollection objectContainer,
const constituent_type constituentObject,
const MissingETHandlers::Weight objectParameter = RPAR(),
size_t  sizeHint = 0 
)
inherited

◆ insertElement() [3/4]

void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::insertElement ( const INavigable4MomentumCollection objectContainer,
const external_index_type theIndex,
const MissingETHandlers::Weight objectParameter = RPAR(),
size_t  sizeHint = 0 
)
inherited

◆ insertElement() [4/4]

void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::insertElement ( const INavigable4MomentumCollection objectContainer,
const external_index_type theIndex,
IProxyDict sg,
const MissingETHandlers::Weight objectParameter = RPAR(),
size_t  sizeHint = 0 
)
inherited

◆ putElement() [1/2]

void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::putElement ( const INavigable4MomentumCollection objectContainer,
const constituent_type constituentObject,
const MissingETHandlers::Weight objectParameter = RPAR(),
size_t  sizeHint = 0 
)
inherited

◆ putElement() [2/2]

◆ remove() [1/2]

◆ remove() [2/2]

◆ removeAll()

Definition at line 237 of file Navigable.h.

237 { m_constituents.clear(); return this->size() == 0 ; }

◆ replace()

replace old object container with a new container assumes that all objects have been or will be inserted to the new container

◆ reweight() [1/3]

◆ reweight() [2/3]

◆ reweight() [3/3]

◆ size()

◆ toKidsAfterAccept() [1/2]

◆ toKidsAfterAccept() [2/2]

virtual void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::toKidsAfterAccept ( INavigationToken navToken,
const std::any &  aParameter 
) const
privatevirtualinherited

◆ toKidsAfterReject() [1/2]

◆ toKidsAfterReject() [2/2]

virtual void Navigable< INavigable4MomentumCollection , MissingETHandlers::Weight , typename NavigationDefaults::DefaultChildColl<INavigable4MomentumCollection , MissingETHandlers::Weight >::type >::toKidsAfterReject ( INavigationToken navToken,
const std::any &  aParameter 
) const
privatevirtualinherited

Member Data Documentation

◆ m_constituents

Definition at line 345 of file Navigable.h.


The documentation for this class was generated from the following files:
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >::m_constituents
constituent_coll m_constituents
Definition: Navigable.h:345
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
et
Extra patterns decribing particle interation process.
test_pyathena.px
px
Definition: test_pyathena.py:18
xAOD::et
et
Definition: TrigEMCluster_v1.cxx:25
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:83
MissingETtags::usesTags
static bool usesTags(bitmask_t tag, bitmask_t test)
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h:50
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >::insertElement
void insertElement(const INavigable4MomentumCollection *objectContainer, const constituent_type *constituentObject, const MissingETHandlers::Weight &objectParameter=MissingETHandlers::Weight(), size_t sizeHint=0)
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >::begin
virtual object_iter begin() const
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >::end
virtual object_iter end() const
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:189
MissingET
Athena::TPCnvVers::Old Athena::TPCnvVers::Old MissingET
Definition: RecTPCnv.cxx:64
MissingETComposition::base_t
Navigable< collection_t, weight_t > base_t
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingETComposition.h:303
Amg::py
@ py
Definition: GeoPrimitives.h:39
MissingET::add
virtual void add(double theEx, double theEy, double theEt, double theEta, double weight)
Definition: MissingET.cxx:127
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >::getParameter
MissingETHandlers::Weight getParameter(const constituent_type *aConstituent) const
Navigable< INavigable4MomentumCollection, MissingETHandlers::Weight >::size
virtual unsigned int size() const
MissingET
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:23
MissingET::Ref
@ Ref
Definition: Reconstruction/MissingETEvent/MissingETEvent/MissingET.h:56