ATLAS Offline Software
TRTStrawStatusWrite.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
10 #ifndef TRT_CONDITIONSALGS_TRTSTRAWSTATUSWRITE_H
11 #define TRT_CONDITIONSALGS_TRTSTRAWSTATUSWRITE_H
12 #include <string>
14 #include "GaudiKernel/ServiceHandle.h"
15 #include "GaudiKernel/ToolHandle.h"
16 #include "StoreGate/DataHandle.h"
17 #include "StoreGate/StoreGateSvc.h"
18 #include "InDetIdentifier/TRT_ID.h"
23 
25 {
26 
27 public:
28  TRTStrawStatusWrite(const std::string &name, ISvcLocator *pSvcLocator);
29  virtual ~TRTStrawStatusWrite() = default;
31 
32  // Gaudi
33  virtual StatusCode initialize() override;
34  virtual StatusCode execute() override;
35  virtual StatusCode finalize() override;
36 
37  // special bits
38  virtual void set_status_temp(StrawStatusContainer *ssc, Identifier offlineID, bool set);
39  virtual void set_status_permanent(StrawStatusContainer *ssc, Identifier offlineID, bool set);
40 
41  // read text files
42  virtual StatusCode readStatFromTextFile(const std::string &filename);
43  virtual StatusCode readStatPermFromTextFile(const std::string &filename);
44  virtual StatusCode readStatHTFromTextFile(const std::string &filename);
45 
46 private:
47  Gaudi::Property<std::string> m_par_strawstatuscontainerkey{this, "StrawStatusKey", "/TRT/Cond/Status", ""};
48  Gaudi::Property<std::string> m_par_strawstatuspermanentcontainerkey{this, "StrawStatusPermanentKey", "/TRT/Cond/StatusPermanent", ""};
49  Gaudi::Property<std::string> m_par_strawstatusHTcontainerkey{this, "StrawStatusHTKey", "/TRT/Cond/StatusHT", ""};
50 
51  Gaudi::Property<std::string> m_par_stattextfile{this, "StatusInputFile", "", "input text file"};
52  Gaudi::Property<std::string> m_par_stattextfilepermanent{this, "StatusInputFilePermanent", "", "input text file: permanent"};
53  Gaudi::Property<std::string> m_par_stattextfileHT{this, "StatusInputFileHT", "", "input text file: HT"};
54 
55  const TRT_ID *m_trtid{}; // TRT id helper
56 };
57 
58 #endif
TRTStrawStatusWrite::~TRTStrawStatusWrite
virtual ~TRTStrawStatusWrite()=default
TRTStrawStatusWrite::StrawStatusContainer
TRTCond::StrawStatusMultChanContainer StrawStatusContainer
Definition: TRTStrawStatusWrite.h:30
TRTCond::StrawStatusMultChanContainer
Definition: StrawStatusMultChanContainer.h:19
TRTStrawStatusWrite::m_par_stattextfilepermanent
Gaudi::Property< std::string > m_par_stattextfilepermanent
Definition: TRTStrawStatusWrite.h:52
TRTStrawStatusWrite::readStatFromTextFile
virtual StatusCode readStatFromTextFile(const std::string &filename)
Definition: TRTStrawStatusWrite.cxx:117
TRTStrawStatusWrite::m_par_strawstatuscontainerkey
Gaudi::Property< std::string > m_par_strawstatuscontainerkey
Definition: TRTStrawStatusWrite.h:47
TRT_ID.h
This is an Identifier helper class for the TRT subdetector. This class is a factory for creating comp...
ExpandedIdentifier.h
TRTStrawStatusWrite::TRTStrawStatusWrite
TRTStrawStatusWrite(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TRTStrawStatusWrite.cxx:21
DataHandle.h
StrawStatusMultChanContainer.h
IAthenaOutputStreamTool.h
Interface to an output stream tool.
AthAlgorithm.h
TRTStrawStatusWrite::m_par_strawstatusHTcontainerkey
Gaudi::Property< std::string > m_par_strawstatusHTcontainerkey
Definition: TRTStrawStatusWrite.h:49
TRTStrawStatusWrite::m_par_stattextfile
Gaudi::Property< std::string > m_par_stattextfile
Definition: TRTStrawStatusWrite.h:51
TRTStrawStatusWrite::m_trtid
const TRT_ID * m_trtid
Definition: TRTStrawStatusWrite.h:55
ITRT_StrawStatusSummaryTool.h
abstract interface to TRT straw status constants
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TRTStrawStatusWrite::set_status_temp
virtual void set_status_temp(StrawStatusContainer *ssc, Identifier offlineID, bool set)
Definition: TRTStrawStatusWrite.cxx:75
TRTStrawStatusWrite
Definition: TRTStrawStatusWrite.h:25
TRTStrawStatusWrite::m_par_strawstatuspermanentcontainerkey
Gaudi::Property< std::string > m_par_strawstatuspermanentcontainerkey
Definition: TRTStrawStatusWrite.h:48
TRTStrawStatusWrite::readStatPermFromTextFile
virtual StatusCode readStatPermFromTextFile(const std::string &filename)
Definition: TRTStrawStatusWrite.cxx:413
AthAlgorithm
Definition: AthAlgorithm.h:47
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:232
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
TRTStrawStatusWrite::set_status_permanent
virtual void set_status_permanent(StrawStatusContainer *ssc, Identifier offlineID, bool set)
Definition: TRTStrawStatusWrite.cxx:96
TRT_ID
Definition: TRT_ID.h:82
TRTStrawStatusWrite::readStatHTFromTextFile
virtual StatusCode readStatHTFromTextFile(const std::string &filename)
Definition: TRTStrawStatusWrite.cxx:285
CaloCellTimeCorrFiller.filename
filename
Definition: CaloCellTimeCorrFiller.py:23
TRTStrawStatusWrite::finalize
virtual StatusCode finalize() override
Definition: TRTStrawStatusWrite.cxx:69
TRTStrawStatusWrite::m_par_stattextfileHT
Gaudi::Property< std::string > m_par_stattextfileHT
Definition: TRTStrawStatusWrite.h:53
TRTStrawStatusWrite::initialize
virtual StatusCode initialize() override
Definition: TRTStrawStatusWrite.cxx:23
StoreGateSvc.h
TRTStrawStatusWrite::execute
virtual StatusCode execute() override
Definition: TRTStrawStatusWrite.cxx:64
Identifier
Definition: IdentifierFieldParser.cxx:14