ATLAS Offline Software
Loading...
Searching...
No Matches
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
45 StatusCode retrieveContainers() ;
46 StatusCode recordContainers() ;
47 StatusCode performSelection() ;
49
50 StatusCode selectMDTs() ;
51 StatusCode selectRPCs() ;
52 StatusCode selectTGCs() ;
53 StatusCode selectCSCs() ;
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
63
68
73
78};
79
80
81#endif //MUONPRDSELECTORALG_H
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
std::string m_outputContainer_rpc
virtual StatusCode execute()
Retrieves and records containers, performs selection.
std::string m_inputContainer_tgc
StatusCode performSelection()
checks if each hit in each collection passes a set of cuts these hits are written to new collections
Muon::RpcPrepDataContainer * m_rpcPRDs_out
std::string m_inputContainer_mdt
Muon::MdtPrepDataContainer * m_mdtPRDs_out
const Muon::RpcPrepDataContainer * m_rpcPRDs_in
std::string m_outputContainer_csc
StatusCode selectMDTs()
selects the hits from MDTcollections
StatusCode retrieveContainers()
retrieves input MuonPrepDataContainers from StoreGate
const Muon::MdtPrepDataContainer * m_mdtPRDs_in
std::string m_inputContainer_csc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
StatusCode selectCSCs()
selects the hits from CSCcollections
StatusCode selectTGCs()
selects the hits from TGCcollections
MuonPrdSelectorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Athena algorithm constructor.
const Muon::CscStripPrepDataContainer * m_cscPRDs_in
Muon::TgcPrepDataContainer * m_tgcPRDs_out
std::string m_inputContainer_rpc
Muon::CscStripPrepDataContainer * m_cscPRDs_out
ToolHandle< IMuonIdCutTool > m_muonIdCutTool
virtual StatusCode initialize()
Algorithm initialization: retrieves StoreGate/DetectorStore/MuonIdHelpers/MuonPrepDataContainers.
std::string m_outputContainer_mdt
const Muon::TgcPrepDataContainer * m_tgcPRDs_in
StatusCode selectRPCs()
selects the hits from RPCcollections
std::string m_outputContainer_tgc
StatusCode recordContainers()
records output MuonPrepDataContainers to StoreGate
void print()
method for DEBUG purposes: prints the content of input and output MuonPrepDataContainer
MuonPrepDataContainerT< RpcPrepData > RpcPrepDataContainer
MuonPrepDataContainerT< TgcPrepData > TgcPrepDataContainer
MuonPrepDataContainerT< MdtPrepData > MdtPrepDataContainer
MuonPrepDataContainerT< CscStripPrepData > CscStripPrepDataContainer