ATLAS Offline Software
Classes | Public Member Functions | Private Attributes | List of all members
TrigMultiTrkState< CONTAINER > Class Template Reference

State class for TrigMultiTrkComboHypo algorithm. More...

#include <TrigMultiTrkComboHypo.h>

Inheritance diagram for TrigMultiTrkState< CONTAINER >:
Collaboration diagram for TrigMultiTrkState< CONTAINER >:

Classes

struct  LEPTON
 

Public Member Functions

 TrigMultiTrkState ()=delete
 
 TrigMultiTrkState (const EventContext &context, const TrigCompositeUtils::DecisionContainer &previousDecisions, TrigCompositeUtils::DecisionContainer &decisions, xAOD::TrigBphysContainer *trigBphysCollection=nullptr, const InDet::BeamSpotData *beamSpotData=nullptr)
 
virtual ~TrigMultiTrkState ()=default
 
std::vector< LEPTON > & leptons ()
 
virtual std::vector< ElementLink< TrigCompositeUtils::DecisionContainer > > & getDecisionLinks (size_t i) override final
 
virtual TrigCompositeUtils::DecisionIDContainergetDecisionIDs (size_t i) override final
 
virtual void addTrigBphysObject (xAOD::TrigBphys *trigBphysObject, const std::vector< size_t > &legIndices) override final
 
virtual bool checkMultiplicity (const std::vector< int > &legMultiplicity, const std::vector< HLT::Identifier > &legDecisionIDs) const override final
 
void setEventAccepted (bool flag=true)
 
int isEventAccepted () const
 
std::vector< std::vector< size_t > > & trigBphysLegIndices ()
 
std::vector< size_t > & getTrigBphysLegIndices (size_t idx)
 
std::vector< ElementLink< xAOD::TrackParticleContainer > > & tracks ()
 
const EventContext & context () const
 
const TrigCompositeUtils::DecisionContainerpreviousDecisions () const
 
TrigCompositeUtils::DecisionContainerdecisions ()
 
xAOD::TrigBphysContainertrigBphysCollection ()
 
void setTrigBphysCollection (xAOD::TrigBphysContainer *trigBphysCollection)
 
Amg::Vector3D beamSpotPosition () const
 
const xAOD::VertexbeamSpot () const
 

Private Attributes

std::vector< LEPTONm_leptons
 
int m_isEventAccepted
 
std::vector< std::vector< size_t > > m_trigBphysLegIndices
 
std::vector< ElementLink< xAOD::TrackParticleContainer > > m_tracks
 
const EventContext * m_context
 
const TrigCompositeUtils::DecisionContainerm_previousDecisions
 
TrigCompositeUtils::DecisionContainerm_decisions
 
xAOD::TrigBphysContainerm_trigBphysCollection
 
const InDet::BeamSpotDatam_beamSpotData
 
xAOD::Vertex m_beamSpotVertex
 

Detailed Description

template<typename CONTAINER>
class TrigMultiTrkState< CONTAINER >

State class for TrigMultiTrkComboHypo algorithm.

Definition at line 89 of file TrigMultiTrkComboHypo.h.

Constructor & Destructor Documentation

◆ TrigMultiTrkState() [1/2]

template<typename CONTAINER >
TrigMultiTrkState< CONTAINER >::TrigMultiTrkState ( )
delete

◆ TrigMultiTrkState() [2/2]

template<typename CONTAINER >
TrigMultiTrkState< CONTAINER >::TrigMultiTrkState ( const EventContext &  context,
const TrigCompositeUtils::DecisionContainer previousDecisions,
TrigCompositeUtils::DecisionContainer decisions,
xAOD::TrigBphysContainer trigBphysCollection = nullptr,
const InDet::BeamSpotData beamSpotData = nullptr 
)
inline

◆ ~TrigMultiTrkState()

template<typename CONTAINER >
virtual TrigMultiTrkState< CONTAINER >::~TrigMultiTrkState ( )
virtualdefault

Member Function Documentation

◆ addTrigBphysObject()

template<typename CONTAINER >
virtual void TrigMultiTrkState< CONTAINER >::addTrigBphysObject ( xAOD::TrigBphys trigBphysObject,
const std::vector< size_t > &  legIndices 
)
inlinefinaloverridevirtual

Implements TrigMultiTrkStateBase.

Definition at line 113 of file TrigMultiTrkComboHypo.h.

113  {
114  trigBphysCollection().push_back(trigBphysObject);
115  trigBphysLegIndices().push_back(legIndices);
116  }

◆ beamSpot()

const xAOD::Vertex& ITrigBphysState::beamSpot ( ) const
inlineinherited

Definition at line 48 of file ITrigBphysState.h.

48 { return m_beamSpotVertex; }

◆ beamSpotPosition()

Amg::Vector3D ITrigBphysState::beamSpotPosition ( ) const
inlineinherited

Definition at line 47 of file ITrigBphysState.h.

◆ checkMultiplicity()

template<typename CONTAINER >
virtual bool TrigMultiTrkState< CONTAINER >::checkMultiplicity ( const std::vector< int > &  legMultiplicity,
const std::vector< HLT::Identifier > &  legDecisionIDs 
) const
inlinefinaloverridevirtual

Implements TrigMultiTrkStateBase.

Definition at line 117 of file TrigMultiTrkComboHypo.h.

117  {
118  if (legMultiplicity.size() == 1) return true;
119  int N = std::accumulate(legMultiplicity.begin(), legMultiplicity.end(), 0);
120  int n = 0;
121  for (size_t i = 0; i < m_leptons.size(); ++i) {
122  for (size_t j = 0; j < legMultiplicity.size(); ++j) {
123  if (TrigCompositeUtils::passed(legDecisionIDs.at(j).numeric(), m_leptons.at(i).decisionIDs)) {
124  n++;
125  break;
126  }
127  }
128  }
129  return (n >= N);
130  }

◆ context()

const EventContext& ITrigBphysState::context ( ) const
inlineinherited

Definition at line 42 of file ITrigBphysState.h.

42 { return *m_context; }

◆ decisions()

TrigCompositeUtils::DecisionContainer& ITrigBphysState::decisions ( )
inlineinherited

Definition at line 44 of file ITrigBphysState.h.

44 { return *m_decisions; }

◆ getDecisionIDs()

template<typename CONTAINER >
virtual TrigCompositeUtils::DecisionIDContainer& TrigMultiTrkState< CONTAINER >::getDecisionIDs ( size_t  i)
inlinefinaloverridevirtual

Implements TrigMultiTrkStateBase.

Definition at line 110 of file TrigMultiTrkComboHypo.h.

110  {
111  return m_leptons.at(i).decisionIDs;
112  }

◆ getDecisionLinks()

template<typename CONTAINER >
virtual std::vector<ElementLink<TrigCompositeUtils::DecisionContainer> >& TrigMultiTrkState< CONTAINER >::getDecisionLinks ( size_t  i)
inlinefinaloverridevirtual

Implements TrigMultiTrkStateBase.

Definition at line 107 of file TrigMultiTrkComboHypo.h.

107  {
108  return m_leptons.at(i).decisionLinks;
109  }

◆ getTrigBphysLegIndices()

std::vector<size_t>& TrigMultiTrkStateBase::getTrigBphysLegIndices ( size_t  idx)
inlineinherited

Definition at line 78 of file TrigMultiTrkComboHypo.h.

78 { return m_trigBphysLegIndices[idx]; }

◆ isEventAccepted()

int TrigMultiTrkStateBase::isEventAccepted ( ) const
inlineinherited

Definition at line 76 of file TrigMultiTrkComboHypo.h.

76 { return m_isEventAccepted; }

◆ leptons()

template<typename CONTAINER >
std::vector<LEPTON>& TrigMultiTrkState< CONTAINER >::leptons ( )
inline

Definition at line 106 of file TrigMultiTrkComboHypo.h.

106 { return m_leptons; }

◆ previousDecisions()

const TrigCompositeUtils::DecisionContainer& ITrigBphysState::previousDecisions ( ) const
inlineinherited

Definition at line 43 of file ITrigBphysState.h.

43 { return *m_previousDecisions; }

◆ setEventAccepted()

void TrigMultiTrkStateBase::setEventAccepted ( bool  flag = true)
inlineinherited

Definition at line 75 of file TrigMultiTrkComboHypo.h.

75 { m_isEventAccepted = (flag ? 1 : 0); }

◆ setTrigBphysCollection()

void ITrigBphysState::setTrigBphysCollection ( xAOD::TrigBphysContainer trigBphysCollection)
inlineinherited

Definition at line 46 of file ITrigBphysState.h.

◆ tracks()

std::vector<ElementLink<xAOD::TrackParticleContainer> >& TrigMultiTrkStateBase::tracks ( )
inlineinherited

Definition at line 79 of file TrigMultiTrkComboHypo.h.

79 { return m_tracks; }

◆ trigBphysCollection()

xAOD::TrigBphysContainer& ITrigBphysState::trigBphysCollection ( )
inlineinherited

Definition at line 45 of file ITrigBphysState.h.

45 { return *m_trigBphysCollection; }

◆ trigBphysLegIndices()

std::vector<std::vector<size_t> >& TrigMultiTrkStateBase::trigBphysLegIndices ( )
inlineinherited

Definition at line 77 of file TrigMultiTrkComboHypo.h.

77 { return m_trigBphysLegIndices; }

Member Data Documentation

◆ m_beamSpotData

const InDet::BeamSpotData* ITrigBphysState::m_beamSpotData
privateinherited

Definition at line 55 of file ITrigBphysState.h.

◆ m_beamSpotVertex

xAOD::Vertex ITrigBphysState::m_beamSpotVertex
privateinherited

Definition at line 56 of file ITrigBphysState.h.

◆ m_context

const EventContext* ITrigBphysState::m_context
privateinherited

Definition at line 51 of file ITrigBphysState.h.

◆ m_decisions

TrigCompositeUtils::DecisionContainer* ITrigBphysState::m_decisions
privateinherited

Definition at line 53 of file ITrigBphysState.h.

◆ m_isEventAccepted

int TrigMultiTrkStateBase::m_isEventAccepted
privateinherited

Definition at line 82 of file TrigMultiTrkComboHypo.h.

◆ m_leptons

template<typename CONTAINER >
std::vector<LEPTON> TrigMultiTrkState< CONTAINER >::m_leptons
private

Definition at line 133 of file TrigMultiTrkComboHypo.h.

◆ m_previousDecisions

const TrigCompositeUtils::DecisionContainer* ITrigBphysState::m_previousDecisions
privateinherited

Definition at line 52 of file ITrigBphysState.h.

◆ m_tracks

std::vector<ElementLink<xAOD::TrackParticleContainer> > TrigMultiTrkStateBase::m_tracks
privateinherited

Definition at line 84 of file TrigMultiTrkComboHypo.h.

◆ m_trigBphysCollection

xAOD::TrigBphysContainer* ITrigBphysState::m_trigBphysCollection
privateinherited

Definition at line 54 of file ITrigBphysState.h.

◆ m_trigBphysLegIndices

std::vector<std::vector<size_t> > TrigMultiTrkStateBase::m_trigBphysLegIndices
privateinherited

Definition at line 83 of file TrigMultiTrkComboHypo.h.


The documentation for this class was generated from the following file:
TrigMultiTrkState::m_leptons
std::vector< LEPTON > m_leptons
Definition: TrigMultiTrkComboHypo.h:133
TrigCompositeUtils::passed
bool passed(DecisionID id, const DecisionIDContainer &idSet)
checks if required decision ID is in the set of IDs in the container
Definition: TrigCompositeUtilsRoot.cxx:117
accumulate
bool accumulate(AccumulateMap &map, std::vector< module_t > const &modules, FPGATrackSimMatrixAccumulator const &acc)
Accumulates an accumulator (e.g.
Definition: FPGATrackSimMatrixAccumulator.cxx:22
ITrigBphysState::m_decisions
TrigCompositeUtils::DecisionContainer * m_decisions
Definition: ITrigBphysState.h:53
ITrigBphysState::m_beamSpotVertex
xAOD::Vertex m_beamSpotVertex
Definition: ITrigBphysState.h:56
JetTiledMap::N
@ N
Definition: TiledEtaPhiMap.h:44
ITrigBphysState::m_beamSpotData
const InDet::BeamSpotData * m_beamSpotData
Definition: ITrigBphysState.h:55
lumiFormat.i
int i
Definition: lumiFormat.py:92
ITrigBphysState::context
const EventContext & context() const
Definition: ITrigBphysState.h:42
beamspotman.n
n
Definition: beamspotman.py:731
master.flag
bool flag
Definition: master.py:29
TrigMultiTrkStateBase::trigBphysLegIndices
std::vector< std::vector< size_t > > & trigBphysLegIndices()
Definition: TrigMultiTrkComboHypo.h:77
TrigMultiTrkStateBase::m_tracks
std::vector< ElementLink< xAOD::TrackParticleContainer > > m_tracks
Definition: TrigMultiTrkComboHypo.h:84
InDet::BeamSpotData::beamPos
const Amg::Vector3D & beamPos() const noexcept
Definition: BeamSpotData.h:68
ITrigBphysState::m_trigBphysCollection
xAOD::TrigBphysContainer * m_trigBphysCollection
Definition: ITrigBphysState.h:54
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
TrigMultiTrkStateBase::TrigMultiTrkStateBase
TrigMultiTrkStateBase()=delete
ITrigBphysState::previousDecisions
const TrigCompositeUtils::DecisionContainer & previousDecisions() const
Definition: ITrigBphysState.h:43
TrigMultiTrkStateBase::m_isEventAccepted
int m_isEventAccepted
Definition: TrigMultiTrkComboHypo.h:82
TrigMultiTrkStateBase::m_trigBphysLegIndices
std::vector< std::vector< size_t > > m_trigBphysLegIndices
Definition: TrigMultiTrkComboHypo.h:83
ITrigBphysState::decisions
TrigCompositeUtils::DecisionContainer & decisions()
Definition: ITrigBphysState.h:44
LArNewCalib_DelayDump_OFC_Cali.idx
idx
Definition: LArNewCalib_DelayDump_OFC_Cali.py:69
ITrigBphysState::m_context
const EventContext * m_context
Definition: ITrigBphysState.h:51
ITrigBphysState::m_previousDecisions
const TrigCompositeUtils::DecisionContainer * m_previousDecisions
Definition: ITrigBphysState.h:52
generate::Zero
void Zero(TH1D *hin)
Definition: generate.cxx:32
ITrigBphysState::trigBphysCollection
xAOD::TrigBphysContainer & trigBphysCollection()
Definition: ITrigBphysState.h:45