ATLAS Offline Software
CscROD_Decoder.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 MUONCSC_CNVTOOL_CSCROD_DECODER_H
6 #define MUONCSC_CNVTOOL_CSCROD_DECODER_H
7 
8 #include <inttypes.h>
9 
12 #include "CSC_Hid2RESrcID.h"
14 #include "CscRODReadOut.h"
15 #include "CscRODReadOutV0.h"
16 #include "CscRODReadOutV1.h"
17 #include "GaudiKernel/ServiceHandle.h"
20 #include "eformat/SourceIdentifier.h"
21 #include "eformat/Version.h"
22 
24 
25 namespace Muon {
26 
32  class CscROD_Decoder : public extends<AthAlgTool, ICSC_ROD_Decoder> {
33  public:
36  CscROD_Decoder(const std::string& type, const std::string& name, const IInterface* parent);
37  virtual ~CscROD_Decoder() = default;
38 
39  virtual StatusCode initialize() override;
40 
41  virtual void fillCollection(const xAOD::EventInfo& eventInfo, const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment& robFrag,
42  CscRawDataContainer& rdoIDC) const override;
43 
44  virtual Identifier getChannelId(const uint32_t word, std::string detdesription) const override;
45  virtual uint32_t getHashId(const uint32_t word, std::string detdesription) const override;
46  virtual void getSamples(const std::vector<uint32_t>& words, std::vector<uint16_t>& samples) const override;
47 
48  // put this in Interface header file...
49 
50  private:
53 
55 
57 
58  private:
60  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
62  bool m_isCosmic;
64  };
65 
66 } // namespace Muon
67 
68 #endif
Muon::CscROD_Decoder::m_isCosmic
bool m_isCosmic
Definition: CscROD_Decoder.h:62
Muon::CscROD_Decoder::~CscROD_Decoder
virtual ~CscROD_Decoder()=default
Muon::CscROD_Decoder::initialize
virtual StatusCode initialize() override
Definition: CscROD_Decoder.cxx:26
Muon::CscROD_Decoder::rodVersion0
void rodVersion0(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment &robFrag, CscRawDataContainer &rdoIDC) const
the ROD version
Definition: CscROD_Decoder.cxx:579
Muon::CscROD_Decoder::rodVersion1
void rodVersion1(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment &robFrag, CscRawDataContainer &rdoIDC) const
Definition: CscROD_Decoder.cxx:444
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
Muon::CscROD_Decoder::CscROD_Decoder
CscROD_Decoder(const std::string &type, const std::string &name, const IInterface *parent)
constructor
Definition: CscROD_Decoder.cxx:20
CscRODReadOutV0.h
CscRODReadOutV1.h
Muon::CscROD_Decoder
This class provides conversion from ROD data to CSC RDO Author: Ketevi A.
Definition: CscROD_Decoder.h:32
CscRODReadOut.h
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
Muon::CscROD_Decoder::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: CscROD_Decoder.h:60
CSC_Hid2RESrcID
Definition: CSC_Hid2RESrcID.h:24
ICSC_ROD_Decoder.h
Muon::CscROD_Decoder::m_cabling
ServiceHandle< CSCcablingSvc > m_cabling
Definition: CscROD_Decoder.h:61
eformat::ROBFragment
Definition: L1CaloBsDecoderUtil.h:12
Muon::CscROD_Decoder::m_isOldCosmic
bool m_isOldCosmic
Definition: CscROD_Decoder.h:63
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
RawEvent.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
01SubmitToGrid.samples
samples
Definition: 01SubmitToGrid.py:58
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
Muon::CscROD_Decoder::getSamples
virtual void getSamples(const std::vector< uint32_t > &words, std::vector< uint16_t > &samples) const override
Definition: CscROD_Decoder.cxx:105
Muon::CscROD_Decoder::getHashId
virtual uint32_t getHashId(const uint32_t word, std::string detdesription) const override
Definition: CscROD_Decoder.cxx:80
CSC_Hid2RESrcID.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
xAOD::EventInfo_v1
Class describing the basic event information.
Definition: EventInfo_v1.h:43
Muon::CscROD_Decoder::getChannelId
virtual Identifier getChannelId(const uint32_t word, std::string detdesription) const override
Definition: CscROD_Decoder.cxx:93
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
CscRawDataContainer
This container provides access to collections of CSC RDOs and a mechanism for recording them.
Definition: CscRawDataContainer.h:23
Muon::CscROD_Decoder::m_hid2re
CSC_Hid2RESrcID m_hid2re
Definition: CscROD_Decoder.h:59
Muon::CscROD_Decoder::rodVersion2
void rodVersion2(const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment &robFrag, CscRawDataContainer &rdoIDC) const
Definition: CscROD_Decoder.cxx:119
checkFileSG.words
words
Definition: checkFileSG.py:76
Muon::CscROD_Decoder::fillCollection
virtual void fillCollection(const xAOD::EventInfo &eventInfo, const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment &robFrag, CscRawDataContainer &rdoIDC) const override
Definition: CscROD_Decoder.cxx:38
IMuonIdHelperSvc.h
CSCcablingSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >