ATLAS Offline Software
TriggerMatchingAugmentation.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // TriggerMatchingAugmentation.h
8 // Author: Matthias Saimpert (matthias.saimpert@cern.ch)
9 //
10 
11 #ifndef DERIVATIONFRAMEWORK_TRIGGERMATCHINGAUGMENTATION_H
12 #define DERIVATIONFRAMEWORK_TRIGGERMATCHINGAUGMENTATION_H
13 
14 #include <string>
17 #include "GaudiKernel/ToolHandle.h"
19 #include "xAODBase/IParticle.h"
20 
23 
24 namespace Trig
25 {
26  class IMatchingTool;
27  class TrigDecisionTool;
28 }
29 
30 namespace DerivationFramework {
31 
33  public:
34  TriggerMatchingAugmentation(const std::string& t, const std::string& n, const IInterface* p);
35 
38  virtual StatusCode addBranches() const;
39 
40  private:
41 
43 
44  ToolHandle< Trig::IMatchingTool > m_matchTool;
45  ToolHandle< Trig::TrigDecisionTool > m_trigDec;
46  std::string m_decorPrefix;
47  std::string m_muonContainerName;
49  std::string m_photonContainerName;
50  // Used for property setting
51  std::vector< std::string > m_singleTriggerList = {};
52  std::vector< std::string > m_2mTriggerList = {};
53  std::vector< std::string > m_2eTriggerList = {};
54  std::vector< std::string > m_emTriggerList = {};
55 
56  // Used internally
57  std::vector< std::pair<const std::string, decor_t> > m_1eDecorList = {};
58  std::vector< std::pair<const std::string, decor_t> > m_1mDecorList = {};
59  std::vector< std::pair<const std::string, decor_t> > m_1gDecorList = {};
60 
61  std::vector< std::pair<const std::string, decor_t> > m_2eDecorList = {};
62  std::vector< std::pair<const std::string, decor_t> > m_2mDecorList = {};
63  std::vector< std::pair<const std::string, decor_t> > m_emDecorList = {};
64 
66  const std::string& trigger,
67  const decor_t& decor) const;
68 
69  StatusCode matchDi(const xAOD::IParticleContainer* collection1,
70  const xAOD::IParticleContainer* collection2,
71  const std::string& trigger,
72  const decor_t& decor) const;
73 
74 
75  };
76 }
77 
78 #endif // DERIVATIONFRAMEWORK_PHOTONVERTEXSELECTIONWRAPPER_H
DerivationFramework::TriggerMatchingAugmentation::m_decorPrefix
std::string m_decorPrefix
Definition: TriggerMatchingAugmentation.h:46
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
DerivationFramework::TriggerMatchingAugmentation::m_matchTool
ToolHandle< Trig::IMatchingTool > m_matchTool
Definition: TriggerMatchingAugmentation.h:44
IParticle.h
DerivationFramework::TriggerMatchingAugmentation::m_2eDecorList
std::vector< std::pair< const std::string, decor_t > > m_2eDecorList
Definition: TriggerMatchingAugmentation.h:61
Trig
The common trigger namespace for trigger analysis tools.
Definition: CaloTowerVecMon.h:44
DerivationFramework::TriggerMatchingAugmentation::m_2mTriggerList
std::vector< std::string > m_2mTriggerList
Definition: TriggerMatchingAugmentation.h:52
IAugmentationTool.h
DerivationFramework::TriggerMatchingAugmentation::m_1mDecorList
std::vector< std::pair< const std::string, decor_t > > m_1mDecorList
Definition: TriggerMatchingAugmentation.h:58
DerivationFramework::TriggerMatchingAugmentation::m_muonContainerName
std::string m_muonContainerName
Definition: TriggerMatchingAugmentation.h:47
DerivationFramework::TriggerMatchingAugmentation::m_2eTriggerList
std::vector< std::string > m_2eTriggerList
Definition: TriggerMatchingAugmentation.h:53
TrigDecisionTool.h
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
DerivationFramework::TriggerMatchingAugmentation::initialize
StatusCode initialize()
Definition: TriggerMatchingAugmentation.cxx:51
DerivationFramework::IAugmentationTool
Definition: IAugmentationTool.h:24
DerivationFramework::TriggerMatchingAugmentation::m_trigDec
ToolHandle< Trig::TrigDecisionTool > m_trigDec
Definition: TriggerMatchingAugmentation.h:45
DerivationFramework::TriggerMatchingAugmentation::m_2mDecorList
std::vector< std::pair< const std::string, decor_t > > m_2mDecorList
Definition: TriggerMatchingAugmentation.h:62
DerivationFramework::TriggerMatchingAugmentation::m_singleTriggerList
std::vector< std::string > m_singleTriggerList
Definition: TriggerMatchingAugmentation.h:51
SG::Decorator
Helper class to provide type-safe access to aux data.
Definition: Decorator.h:58
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IParticleContainer.h
DerivationFramework::TriggerMatchingAugmentation
Definition: TriggerMatchingAugmentation.h:32
DerivationFramework::TriggerMatchingAugmentation::m_electronContainerName
std::string m_electronContainerName
Definition: TriggerMatchingAugmentation.h:48
AthAlgTool.h
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DerivationFramework::TriggerMatchingAugmentation::m_1gDecorList
std::vector< std::pair< const std::string, decor_t > > m_1gDecorList
Definition: TriggerMatchingAugmentation.h:59
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
DerivationFramework::TriggerMatchingAugmentation::addBranches
virtual StatusCode addBranches() const
Pass the thinning service
Definition: TriggerMatchingAugmentation.cxx:111
DerivationFramework::TriggerMatchingAugmentation::decor_t
SG::AuxElement::Decorator< char > decor_t
Definition: TriggerMatchingAugmentation.h:42
DerivationFramework::TriggerMatchingAugmentation::m_emTriggerList
std::vector< std::string > m_emTriggerList
Definition: TriggerMatchingAugmentation.h:54
DerivationFramework::TriggerMatchingAugmentation::m_1eDecorList
std::vector< std::pair< const std::string, decor_t > > m_1eDecorList
Definition: TriggerMatchingAugmentation.h:57
IMatchingTool.h
RatesAnalysisFullMenu.TrigDecisionTool
TrigDecisionTool
Definition: RatesAnalysisFullMenu.py:110
DerivationFramework::TriggerMatchingAugmentation::m_photonContainerName
std::string m_photonContainerName
Definition: TriggerMatchingAugmentation.h:49
DerivationFramework::TriggerMatchingAugmentation::finalize
StatusCode finalize()
Definition: TriggerMatchingAugmentation.cxx:106
AthAlgTool
Definition: AthAlgTool.h:26
DerivationFramework::TriggerMatchingAugmentation::matchDi
StatusCode matchDi(const xAOD::IParticleContainer *collection1, const xAOD::IParticleContainer *collection2, const std::string &trigger, const decor_t &decor) const
Definition: TriggerMatchingAugmentation.cxx:198
DerivationFramework::TriggerMatchingAugmentation::m_emDecorList
std::vector< std::pair< const std::string, decor_t > > m_emDecorList
Definition: TriggerMatchingAugmentation.h:63
DerivationFramework::TriggerMatchingAugmentation::matchSingle
StatusCode matchSingle(const xAOD::IParticleContainer *collection, const std::string &trigger, const decor_t &decor) const
Definition: TriggerMatchingAugmentation.cxx:177
DerivationFramework::TriggerMatchingAugmentation::TriggerMatchingAugmentation
TriggerMatchingAugmentation(const std::string &t, const std::string &n, const IInterface *p)
Definition: TriggerMatchingAugmentation.cxx:27
PhysDESDM_Quirks.trigger
trigger
Definition: PhysDESDM_Quirks.py:27