ATLAS Offline Software
OverlapRemovalTestAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ASSOCIATIONUTILS_OVERLAPREMOVALTESTALG_H
6 #define ASSOCIATIONUTILS_OVERLAPREMOVALTESTALG_H
7 
8 // Framework includes
9 #include "GaudiKernel/ToolHandle.h"
11 
12 // EDM includes
14 
15 // Local includes
17 
23 {
24 
25  public:
26 
28  OverlapRemovalTestAlg(const std::string& name, ISvcLocator* svcLoc);
29 
31  virtual StatusCode initialize();
32 
34  virtual StatusCode execute();
35 
36  private:
37 
39  template<class ContainerType>
40  void applySelection(const ContainerType& container);
41 
43  template<class ObjType>
44  bool selectObject(const ObjType& obj);
45 
47  void printObjects(const xAOD::IParticleContainer& container,
48  const std::string& type);
49 
51  ToolHandle<ORUtils::IOverlapRemovalTool> m_orTool;
52 
54  std::string m_selectionLabel;
55  std::string m_overlapLabel;
56  std::string m_bJetLabel;
57 
58 };
59 
60 #endif
OverlapRemovalTestAlg
A testing algorithm for the dual-use overlap removal tool in Athena.
Definition: OverlapRemovalTestAlg.h:23
OverlapRemovalTestAlg::selectObject
bool selectObject(const ObjType &obj)
Simple object selection.
Definition: OverlapRemovalTestAlg.cxx:102
OverlapRemovalTestAlg::applySelection
void applySelection(const ContainerType &container)
Simple object selection.
Definition: OverlapRemovalTestAlg.cxx:93
OverlapRemovalTestAlg::m_orTool
ToolHandle< ORUtils::IOverlapRemovalTool > m_orTool
Handle to the tool.
Definition: OverlapRemovalTestAlg.h:51
OverlapRemovalTestAlg::printObjects
void printObjects(const xAOD::IParticleContainer &container, const std::string &type)
Print object info.
Definition: OverlapRemovalTestAlg.cxx:138
AthAlgorithm.h
OverlapRemovalTestAlg::m_overlapLabel
std::string m_overlapLabel
Definition: OverlapRemovalTestAlg.h:55
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IParticleContainer.h
OverlapRemovalTestAlg::execute
virtual StatusCode execute()
Execute the algorithm.
Definition: OverlapRemovalTestAlg.cxx:52
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
OverlapRemovalTestAlg::initialize
virtual StatusCode initialize()
Initialize the algorithm.
Definition: OverlapRemovalTestAlg.cxx:39
AthAlgorithm
Definition: AthAlgorithm.h:47
IOverlapRemovalTool.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
OverlapRemovalTestAlg::m_bJetLabel
std::string m_bJetLabel
Definition: OverlapRemovalTestAlg.h:56
OverlapRemovalTestAlg::m_selectionLabel
std::string m_selectionLabel
Configuration.
Definition: OverlapRemovalTestAlg.h:54
python.PyAthena.obj
obj
Definition: PyAthena.py:135
OverlapRemovalTestAlg::OverlapRemovalTestAlg
OverlapRemovalTestAlg(const std::string &name, ISvcLocator *svcLoc)
Standard algorithm constructor.
Definition: OverlapRemovalTestAlg.cxx:22