ATLAS Offline Software
MuonPrdSelectorAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONPRDSELECTORALG_H
6 #define MUONPRDSELECTORALG_H
7 
9 #include "GaudiKernel/ServiceHandle.h"
10 #include "GaudiKernel/ToolHandle.h"
11 
19 
20 #include <utility>
21 #include <vector>
22 #include <string>
23 
24 /*
25  class MuonPrdSelectorAlg
26  class to cut out hits from Muon PRDCollections
27  cuts, based on Identifier, are defined by MuonIdCutTool
28  base functionality of class authored by Zdenko.van.Kesteren@cern.ch
29 
30  author: Andrew Meade ameade@physics.umass.edu
31 
32  */
33 
35  public:
36  MuonPrdSelectorAlg(const std::string &name,ISvcLocator *pSvcLocator);
37 
38  // Basic algorithm methods:
39  virtual StatusCode initialize();
40  virtual StatusCode execute();
41 
42  private:
43  void print();
44 
48 
54 
55  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
56 
57  ToolHandle<IMuonIdCutTool> m_muonIdCutTool{this,"MuonIdCutTool","MuonIdCutTool/MuonIdCutTool","defines the cuts"};
58 
59  std::string m_inputContainer_mdt; //container names
60  std::string m_inputContainer_rpc;
61  std::string m_inputContainer_tgc;
62  std::string m_inputContainer_csc;
63 
64  std::string m_outputContainer_mdt;
65  std::string m_outputContainer_rpc;
66  std::string m_outputContainer_tgc;
67  std::string m_outputContainer_csc;
68 
73 
78 };
79 
80 
81 #endif //MUONPRDSELECTORALG_H
MuonPrdSelectorAlg::selectRPCs
StatusCode selectRPCs()
selects the hits from RPCcollections
Definition: MuonPrdSelectorAlg.cxx:216
MuonPrdSelectorAlg::MuonPrdSelectorAlg
MuonPrdSelectorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Athena algorithm constructor.
Definition: MuonPrdSelectorAlg.cxx:10
Muon::MuonPrepDataContainer
Template for Muon PRD containers (which are basically collections of MuonPrepDataCollections).
Definition: MuonPrepDataContainer.h:42
CscStripPrepDataContainer.h
MuonPrdSelectorAlg::selectCSCs
StatusCode selectCSCs()
selects the hits from CSCcollections
Definition: MuonPrdSelectorAlg.cxx:325
MuonPrdSelectorAlg::print
void print()
method for DEBUG purposes: prints the content of input and output MuonPrepDataContainer
Definition: MuonPrdSelectorAlg.cxx:379
MuonPrdSelectorAlg::m_outputContainer_mdt
std::string m_outputContainer_mdt
Definition: MuonPrdSelectorAlg.h:64
MuonPrdSelectorAlg::execute
virtual StatusCode execute()
Retrieves and records containers, performs selection.
Definition: MuonPrdSelectorAlg.cxx:78
MuonPrdSelectorAlg::performSelection
StatusCode performSelection()
checks if each hit in each collection passes a set of cuts these hits are written to new collections
Definition: MuonPrdSelectorAlg.cxx:151
MuonPrdSelectorAlg::m_inputContainer_tgc
std::string m_inputContainer_tgc
Definition: MuonPrdSelectorAlg.h:61
RpcPrepDataContainer.h
MuonPrdSelectorAlg::retrieveContainers
StatusCode retrieveContainers()
retrieves input MuonPrepDataContainers from StoreGate
Definition: MuonPrdSelectorAlg.cxx:87
MuonPrdSelectorAlg::m_inputContainer_rpc
std::string m_inputContainer_rpc
Definition: MuonPrdSelectorAlg.h:60
AthAlgorithm.h
MuonPrdSelectorAlg::m_outputContainer_csc
std::string m_outputContainer_csc
Definition: MuonPrdSelectorAlg.h:67
MdtPrepDataContainer.h
MuonPrdSelectorAlg::m_muonIdCutTool
ToolHandle< IMuonIdCutTool > m_muonIdCutTool
Definition: MuonPrdSelectorAlg.h:57
MuonPrdSelectorAlg::m_inputContainer_mdt
std::string m_inputContainer_mdt
Definition: MuonPrdSelectorAlg.h:59
MuonPrdSelectorAlg::m_cscPRDs_in
const Muon::CscStripPrepDataContainer * m_cscPRDs_in
Definition: MuonPrdSelectorAlg.h:72
MuonPrdSelectorAlg::m_mdtPRDs_in
const Muon::MdtPrepDataContainer * m_mdtPRDs_in
Definition: MuonPrdSelectorAlg.h:69
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TgcPrepDataContainer.h
MuonPrdSelectorAlg::selectTGCs
StatusCode selectTGCs()
selects the hits from TGCcollections
Definition: MuonPrdSelectorAlg.cxx:271
MuonPrdSelectorAlg::m_outputContainer_rpc
std::string m_outputContainer_rpc
Definition: MuonPrdSelectorAlg.h:65
MuonPrdSelectorAlg::selectMDTs
StatusCode selectMDTs()
selects the hits from MDTcollections
Definition: MuonPrdSelectorAlg.cxx:161
MuonPrdSelectorAlg::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MuonPrdSelectorAlg.h:55
MuonPrdSelectorAlg::initialize
virtual StatusCode initialize()
Algorithm initialization: retrieves StoreGate/DetectorStore/MuonIdHelpers/MuonPrepDataContainers.
Definition: MuonPrdSelectorAlg.cxx:30
AthAlgorithm
Definition: AthAlgorithm.h:47
MuonPrdSelectorAlg::m_rpcPRDs_in
const Muon::RpcPrepDataContainer * m_rpcPRDs_in
Definition: MuonPrdSelectorAlg.h:70
CscPrepDataContainer.h
MuonPrdSelectorAlg
Definition: MuonPrdSelectorAlg.h:34
MuonPrdSelectorAlg::m_mdtPRDs_out
Muon::MdtPrepDataContainer * m_mdtPRDs_out
Definition: MuonPrdSelectorAlg.h:74
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
MuonPrdSelectorAlg::m_cscPRDs_out
Muon::CscStripPrepDataContainer * m_cscPRDs_out
Definition: MuonPrdSelectorAlg.h:77
MuonPrdSelectorAlg::m_tgcPRDs_out
Muon::TgcPrepDataContainer * m_tgcPRDs_out
Definition: MuonPrdSelectorAlg.h:76
IMuonIdCutTool.h
MuonPrdSelectorAlg::m_rpcPRDs_out
Muon::RpcPrepDataContainer * m_rpcPRDs_out
Definition: MuonPrdSelectorAlg.h:75
MuonPrdSelectorAlg::m_outputContainer_tgc
std::string m_outputContainer_tgc
Definition: MuonPrdSelectorAlg.h:66
MuonPrdSelectorAlg::recordContainers
StatusCode recordContainers()
records output MuonPrepDataContainers to StoreGate
Definition: MuonPrdSelectorAlg.cxx:136
MuonPrdSelectorAlg::m_inputContainer_csc
std::string m_inputContainer_csc
Definition: MuonPrdSelectorAlg.h:62
IMuonIdHelperSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
MuonPrdSelectorAlg::m_tgcPRDs_in
const Muon::TgcPrepDataContainer * m_tgcPRDs_in
Definition: MuonPrdSelectorAlg.h:71