ATLAS Offline Software
RPC_RawDataProviderToolCore.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 MUONRPCRAWDATAPROVIDERTOOLCORE_H
6 #define MUONRPCRAWDATAPROVIDERTOOLCORE_H
7 
10 #include "GaudiKernel/ToolHandle.h"
17 
18 
19 namespace Muon {
28  public:
29  RPC_RawDataProviderToolCore(const std::string& t, const std::string& n, const IInterface* p);
30 
31  virtual ~RPC_RawDataProviderToolCore() = default;
32 
33  virtual StatusCode initialize() override;
34 
35  protected:
36  // This function does all the actual work of decoding the data
37  StatusCode convertIntoContainers(const std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*>& vecRobs,
38  const std::vector<IdentifierHash>& collections, RpcPadContainer* pad,
39  RpcSectorLogicContainer* logic, const bool& decodeSL) const;
40 
41  std::vector<IdentifierHash> to_be_converted(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment& robFrag,
42  const std::vector<IdentifierHash>& coll) const;
43 
44  SG::ReadCondHandleKey<RpcCablingCondData> m_readKey{this, "ReadKey", "RpcCablingCondData", "Key of RpcCablingCondData"};
45 
46  // Rob Data Provider handle
48 
49  // ROD decoding tool
50  ToolHandle<IRpcROD_Decoder> m_decoder{this, "Decoder", "Muon::RpcROD_Decoder/RpcROD_Decoder"};
51 
52  // WriteHandleKey for RPC PAD container
53  SG::WriteHandleKey<RpcPadContainer> m_containerKey{this, "RdoLocation", "RPCPAD", "Name of the RPCPAD produced by RawDataProvider"};
54  // WriteHandleKey for RPC sector logic container
55  SG::WriteHandleKey<RpcSectorLogicContainer> m_sec{this, "RPCSec", "RPC_SECTORLOGIC",
56  "Name of the RPC_SECTORLOGIC produced by RawDataProvider"};
57 
58  }; // class RPC_RawDataProviderToolCore
59 } // namespace Muon
60 
61 #endif // MUONRPCRAWDATAPROVIDERTOOLCORE_H
Muon::RPC_RawDataProviderToolCore::convertIntoContainers
StatusCode convertIntoContainers(const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &vecRobs, const std::vector< IdentifierHash > &collections, RpcPadContainer *pad, RpcSectorLogicContainer *logic, const bool &decodeSL) const
Definition: RPC_RawDataProviderToolCore.cxx:29
RpcSectorLogicContainer.h
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
Muon::RPC_RawDataProviderToolCore::to_be_converted
std::vector< IdentifierHash > to_be_converted(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment &robFrag, const std::vector< IdentifierHash > &coll) const
Definition: RPC_RawDataProviderToolCore.cxx:56
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::RPC_RawDataProviderToolCore::initialize
virtual StatusCode initialize() override
Definition: RPC_RawDataProviderToolCore.cxx:14
SG::WriteHandleKey< RpcPadContainer >
eformat::ROBFragment
Definition: L1CaloBsDecoderUtil.h:12
Muon::RPC_RawDataProviderToolCore::RPC_RawDataProviderToolCore
RPC_RawDataProviderToolCore(const std::string &t, const std::string &n, const IInterface *p)
Definition: RPC_RawDataProviderToolCore.cxx:11
IRpcROD_Decoder.h
beamspotman.n
n
Definition: beamspotman.py:731
RawEvent.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
RpcSectorLogicContainer
Definition: RpcSectorLogicContainer.h:20
ReadCondHandleKey.h
Muon::RPC_RawDataProviderToolCore::m_readKey
SG::ReadCondHandleKey< RpcCablingCondData > m_readKey
Definition: RPC_RawDataProviderToolCore.h:44
SG::ReadCondHandleKey< RpcCablingCondData >
Muon::RPC_RawDataProviderToolCore::~RPC_RawDataProviderToolCore
virtual ~RPC_RawDataProviderToolCore()=default
RpcCablingCondData.h
Muon::RPC_RawDataProviderToolCore::m_sec
SG::WriteHandleKey< RpcSectorLogicContainer > m_sec
Definition: RPC_RawDataProviderToolCore.h:55
Muon::RPC_RawDataProviderToolCore::m_decoder
ToolHandle< IRpcROD_Decoder > m_decoder
Definition: RPC_RawDataProviderToolCore.h:50
RpcPadContainer.h
AthAlgTool
Definition: AthAlgTool.h:26
Muon::RPC_RawDataProviderToolCore
Base class for tools to decode RPC raw data.
Definition: RPC_RawDataProviderToolCore.h:27
IROBDataProviderSvc.h
Muon::RPC_RawDataProviderToolCore::m_containerKey
SG::WriteHandleKey< RpcPadContainer > m_containerKey
Definition: RPC_RawDataProviderToolCore.h:53
Muon::RPC_RawDataProviderToolCore::m_robDataProvider
ServiceHandle< IROBDataProviderSvc > m_robDataProvider
Definition: RPC_RawDataProviderToolCore.h:47
ServiceHandle< IROBDataProviderSvc >
RpcPadContainer
Use IdentifiableContainer with RpcPad.
Definition: RpcPadContainer.h:23