ATLAS Offline Software
Loading...
Searching...
No Matches
CscDigitToCscRDOTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef CSCDIGITTOCSCRDOTOOL_H
6#define CSCDIGITTOCSCRDOTOOL_H
7
8#include <map>
9
12#include "CLHEP/Random/RandomEngine.h"
15#include "GaudiKernel/ServiceHandle.h"
16#include "GaudiKernel/ToolHandle.h"
22
23
25
26class CscDigitToCscRDOTool final : public extends<AthAlgTool, IMuonDigitizationTool> {
27public:
28 CscDigitToCscRDOTool(const std::string& type, const std::string& name, const IInterface* pIID);
29 virtual ~CscDigitToCscRDOTool() = default;
30
31 virtual StatusCode initialize() override;
32 virtual StatusCode digitize(const EventContext& ctx) override;
33
34private:
35 StatusCode fill_CSCdata();
36 CscRawDataCollection* cscRdo(uint16_t subDetectorId, uint16_t rodId);
37
38 std::map<uint16_t, CscRawDataCollection*> m_cscRdoMap;
39 uint16_t m_samplingRate{};
40 uint16_t m_numSamples{4};
41 uint16_t m_latency{0};
42 double m_startTime{};
43 double m_signalWidth{};
44 bool m_addNoise{true};
46
47protected:
49 "WriteHandleKey for Output CswRawDataContainer"};
50 SG::ReadHandleKey<CscDigitContainer> m_digitContainerKey{this, "InputObjectName", "CSC_DIGITS",
51 "ReadHandleKey for Input CscDigitContainer"};
52 ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
53 ServiceHandle<CSCcablingSvc> m_cscCablingSvc{this, "CSCcablingSvc", "CSCcablingSvc", ""};
54 ToolHandle<ICscCalibTool> m_cscCalibTool{this, "cscCalibTool", "CscCalibTool", ""};
55 ServiceHandle<IAthRNGSvc> m_rndmSvc{this, "RndmSvc", "AthRNGSvc", ""};
56};
57
58#endif
CscRawDataCollection * cscRdo(uint16_t subDetectorId, uint16_t rodId)
double m_startTime
set during initialize from cscCalibTool
uint16_t m_samplingRate
set during initialize from cscCalibTool
std::map< uint16_t, CscRawDataCollection * > m_cscRdoMap
CscDigitToCscRDOTool(const std::string &type, const std::string &name, const IInterface *pIID)
ServiceHandle< IAthRNGSvc > m_rndmSvc
Random number service.
SG::WriteHandleKey< CscRawDataContainer > m_rdoContainerKey
virtual StatusCode initialize() override
ToolHandle< ICscCalibTool > m_cscCalibTool
SG::ReadHandleKey< CscDigitContainer > m_digitContainerKey
ServiceHandle< CSCcablingSvc > m_cscCablingSvc
virtual ~CscDigitToCscRDOTool()=default
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
uint16_t m_numberOfIntegration
set during initialize from cscCalibTool
double m_signalWidth
set during initialize from cscCalibTool
virtual StatusCode digitize(const EventContext &ctx) override
Collection of CSC Raw Hits, arranged according to CSC Detector Elements Author: Ketevi A.
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.