ATLAS Offline Software
Loading...
Searching...
No Matches
LArDigitRetriever.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef JIVEXML_LARDIGITRETRIEVER_H
6#define JIVEXML_LARDIGITRETRIEVER_H
7
8
9
15
18#include "GaudiKernel/ToolHandle.h"
20#include <string>
21#include <vector>
22#include <cstddef>
23#include <map>
24class IToolSvc;
25
26class Identifier;
28
29namespace JiveXML{
30
52 class LArDigitRetriever : public extends<AthAlgTool,IDataRetriever> {
53
54 public:
55
56 using base_class::base_class;
57
59 virtual StatusCode retrieve(ToolHandle<IFormatTool> &FormatTool) override;
60 const DataMap getLArDigitData(const CaloCellContainer* cellContainer,
61 const std::string& datatype,
62 CaloCell_ID::SUBCALO calotype);
63
65 virtual std::string dataTypeName() const override { return "LArDigit"; };
66
68 virtual StatusCode initialize() override;
69
70 private:
73
74 SG::ReadHandleKey<CaloCellContainer> m_sgKey{this, "StoreGateKey", "AllCalo", "Name of the CaloCellContainer"};
75 SG::ReadHandleKey<LArDigitContainer> m_sgKeyLArDigit_raw{this, "StoreGateKey", "FREE", "Name of the LArDigitContainer"}; // can also be: "HIGH" (for raw data)
76 SG::ReadHandleKey<LArDigitContainer> m_sgKeyLArDigit_esd{this, "StoreGateKey", "LArDigitContainer_Thinned", "Name of the LArDigitContainer"}; // used for DPD/ESD
77 SG::ReadCondHandleKey<LArOnOffIdMapping> m_cablingKey{this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"};
78
80 { this, "ADC2MeVKey", "LArADC2MeV", "SG Key of the LArADC2MeV CDO" };
81
83
84 Gaudi::Property<bool> m_lar{this, "RetrieveLAr", true};
85 Gaudi::Property<bool> m_hec{this, "RetrieveHEC", true};
86 Gaudi::Property<bool> m_fcal{this, "RetrieveFCAL", true};
87 Gaudi::Property<bool> m_doLArDigit{this, "DoLArDigit", false};
88 Gaudi::Property<bool> m_doHECDigit{this, "DoHECDigit", false};
89 Gaudi::Property<bool> m_doFCalDigit{this, "DoFCalDigit", false};
90 Gaudi::Property<bool> m_cellConditionCut{this, "CellConditionCut", false};
91 Gaudi::Property<int> m_cellEnergyPrec{this, "CellEnergyPrec", 3};
92 Gaudi::Property<int> m_cellTimePrec{this, "CellTimePrec", 3};
93 Gaudi::Property<double> m_cellThreshold{this, "CellThreshold", 50.};
94 Gaudi::Property<std::vector<Identifier::value_type>> m_LArChannelsToIgnoreM5{this, "LArChannelsToIgnoreM5", {}};
95 Gaudi::Property<bool> m_doMaskLArChannelsM5{this, "DoMaskLArChannelsM5", false};
96
97 bool m_doDigit{false};
98 bool m_inputdpd{false};
100 };
101}
102#endif
Container class for CaloCell.
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
CaloCell_Base_ID::SUBCALO SUBCALO
Definition CaloCell_ID.h:50
Retrieves all Tile Calo Cell objects.
Gaudi::Property< bool > m_cellConditionCut
Gaudi::Property< bool > m_lar
Gaudi::Property< bool > m_doLArDigit
Gaudi::Property< double > m_cellThreshold
SG::ReadCondHandleKey< LArADC2MeV > m_adc2mevKey
const CaloCell_ID * m_calocell_id
virtual StatusCode initialize() override
Default AthAlgTool methods.
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
virtual std::string dataTypeName() const override
Return the name of the data type.
Gaudi::Property< bool > m_doHECDigit
Gaudi::Property< bool > m_hec
Gaudi::Property< bool > m_fcal
const DataMap getLArDigitData(const CaloCellContainer *cellContainer, const std::string &datatype, CaloCell_ID::SUBCALO calotype)
Retrieve Tile cell location and details.
Gaudi::Property< bool > m_doFCalDigit
SG::ReadHandleKey< CaloCellContainer > m_sgKey
Gaudi::Property< bool > m_doMaskLArChannelsM5
virtual StatusCode retrieve(ToolHandle< IFormatTool > &FormatTool) override
Retrieve all the data.
Gaudi::Property< int > m_cellTimePrec
Gaudi::Property< std::vector< Identifier::value_type > > m_LArChannelsToIgnoreM5
Gaudi::Property< int > m_cellEnergyPrec
SG::ReadHandleKey< LArDigitContainer > m_sgKeyLArDigit_esd
SG::ReadHandleKey< LArDigitContainer > m_sgKeyLArDigit_raw
Property holding a SG store/key/clid from which a ReadHandle is made.
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
std::map< std::string, DataVect > DataMap
Definition DataType.h:59
std::vector< DataType > DataVect
Defines a map with a key and a vector of DataType objects e.g.
Definition DataType.h:58