ATLAS Offline Software
L1CaloPprPhos4ShapeMaker.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 // ***************************************************************************
6 // Name: L1CaloPprPhos4ShapeMaker.h
7 // Package: TrigT1CaloCalibUtils
8 //
9 // Author: Taylor Childers (childers@mail.cern.ch)
10 //
11 // ***************************************************************************
12 #ifndef L1CALOPPRPHOS4SHAPEMAKER_H
13 #define L1CALOPPRPHOS4SHAPEMAKER_H
14 
15 #include <vector>
16 #include <string>
17 #include <map>
18 
19 // Athena includes
22 #include "GaudiKernel/ITHistSvc.h"
23 #include "GaudiKernel/ToolHandle.h"
24 
25 // Trigger Menu tools
28 
29 // L1Calo specific includes
32 
33 // Calo specific includes
34 // #include "TrigT1CaloCalibTools/L1CaloTTIdTools.h"
37 #include "Identifier/Identifier.h"
42 // #include "TrigT1CaloCalibTools/L1CaloCells2TriggerTowers.h"
43 // #include "TrigT1CaloCalibToolInterfaces/IL1CaloCells2TriggerTowers.h"
44 
45 // AttributeList
46 #include "CoralBase/Attribute.h"
47 #include "CoralBase/Blob.h"
48 #include "CoralBase/AttributeListSpecification.h"
51 
52 // Local includes
54 
56 
57 class TH2F;
58 
59 // The AthenaExample class inherits publically from Algorithm.
61 {
62 public:
63  // These are the standard Athena public member functions.
64  L1CaloPprPhos4ShapeMaker(const std::string& name, ISvcLocator* pSvcLocator);
65 
66  virtual StatusCode initialize() override;
67  virtual StatusCode execute() override;
69 
70 private:
71  // Unless you provide a class with a default constructor, copy constructor and copy asignment operator
72  // the compiler will provide them for you. We do not want that to happen, g++ will probably make a mess.
73  // By declaring these private, they cannot be called and g++ will not fudge anything.
77 
78  L1CaloCoolChannelId GetCoolId(const double eta,const double phi,const unsigned int layer);
79 
80  bool IsCoolIdValid(const L1CaloCoolChannelId coolId);
81 
83 
84  // These data members are our Athena tools.
85  ToolHandle<LVL1::TrigT1CaloLWHistogramTool> m_histTool;
86 // ToolHandle<TrigDec::TrigDecisionTool> m_trigger;
87 
89 
90  // for each cool id I read in the FullDelayData as set before
91  // the run.
93  std::string m_fullDataDelayName;
94  std::map<unsigned int,unsigned int> m_currentFullDelayDataMap;
95  std::string m_pedValueName;
96  std::map<unsigned int,unsigned int> m_currentPedValueMap;
97  std::string m_l1aFadcSliceName;
98  unsigned int m_l1aFadcSlice;
99  std::string m_errorCodeName;
100  std::string m_timingRegimeName;
101  std::string m_timingRegime;
103  std::string m_ttcConfiguration;
104 
105  // Data Colletions
111  unsigned int m_runNumber;
118  StatusCode GetDatabaseHandle(const std::string& folderName);
119 
120  void SetTimingRegime(const std::string& regime);
121 
123  // Calo access tools
124 
125 // L1CaloTTIdTools* m_l1CaloTTIdTools;
126  ToolHandle<LVL1::IL1CaloTTIdTools> m_l1CaloTTIdTools;
131 // L1CaloCells2TriggerTowers* m_cells2tt;
132 
133  // Personal Histograms - add your own here.
134  // These are some simple examples.
135  std::map<unsigned int,TProfile*>* m_signalProfiles;
136 
138 
139  // properties
140  std::string m_outputDirectory;
141  unsigned int m_minSignalHeight;
142 
143  std::vector<unsigned int> m_selectedCoolIds;
144  std::map<unsigned int,TH2F*> m_histosForSelectedCoolIds;
145  static const unsigned short int m_maxSelectedCoolIds = 50;
146 
147  // Control plot style
148  void SetAtlasStyle(void);
149 
150  bool m_isTile;
151  bool m_isLAr;
152 
153 };
154 #endif
155 
156 
L1CaloCoolChannelId.h
TriggerItem.h
IL1CaloTTIdTools.h
python.tests.PyTestsLib.finalize
def finalize(self)
_info( "content of StoreGate..." ) self.sg.dump()
Definition: PyTestsLib.py:53
L1CaloPprPhos4ShapeMaker::m_currentFullDelayDataMap
std::map< unsigned int, unsigned int > m_currentFullDelayDataMap
Definition: L1CaloPprPhos4ShapeMaker.h:94
L1CaloPprPhos4ShapeMaker::m_outputDirectory
std::string m_outputDirectory
Definition: L1CaloPprPhos4ShapeMaker.h:140
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
L1CaloPprPhos4ShapeMaker::m_caloMgr
const CaloIdManager * m_caloMgr
Definition: L1CaloPprPhos4ShapeMaker.h:127
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
CondAttrListCollection.h
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
L1CaloPprPhos4ShapeMaker::GetRODHeader
StatusCode GetRODHeader()
Definition: L1CaloPprPhos4ShapeMaker.cxx:546
L1CaloPprPhos4ShapeMaker::m_l1aFadcSliceName
std::string m_l1aFadcSliceName
Definition: L1CaloPprPhos4ShapeMaker.h:97
TH2F
Definition: rootspy.cxx:420
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
L1CaloPprPhos4ShapeCollection
Definition: L1CaloPprPhos4ShapeCollection.h:81
TTOnlineID
Helper class for Calo TT online identifiers.
Definition: TTOnlineID.h:37
CaloTriggerTowerService
Tool providing the mapping of the online and offline TriggerTower identifiers as well as the TT-cells...
Definition: CaloTriggerTowerService.h:50
L1CaloPprPhos4ShapeMaker::m_l1CaloTTIdTools
ToolHandle< LVL1::IL1CaloTTIdTools > m_l1CaloTTIdTools
Definition: L1CaloPprPhos4ShapeMaker.h:126
L1CaloPprPhos4ShapeMaker::m_timingRegime
std::string m_timingRegime
Definition: L1CaloPprPhos4ShapeMaker.h:101
L1CaloPprPhos4ShapeMaker::GetDatabaseHandle
StatusCode GetDatabaseHandle(const std::string &folderName)
Definition: L1CaloPprPhos4ShapeMaker.cxx:556
L1CaloPprPhos4ShapeMaker::m_signalShapes
L1CaloPprPhos4ShapeCollection * m_signalShapes
Definition: L1CaloPprPhos4ShapeMaker.h:82
L1CaloPprPhos4ShapeMaker::m_firstEvent
bool m_firstEvent
Definition: L1CaloPprPhos4ShapeMaker.h:137
TrigT1CaloLWHistogramTool.h
L1CaloPprPhos4ShapeMaker::m_isLAr
bool m_isLAr
Definition: L1CaloPprPhos4ShapeMaker.h:151
CondAttrListCollection
This class is a collection of AttributeLists where each one is associated with a channel number....
Definition: CondAttrListCollection.h:52
AthenaAttributeList.h
L1CaloPprPhos4ShapeMaker::IsCoolIdValid
bool IsCoolIdValid(const L1CaloCoolChannelId coolId)
Definition: L1CaloPprPhos4ShapeMaker.cxx:579
L1CaloPprPhos4ShapeMaker::m_timingRegimeName
std::string m_timingRegimeName
Definition: L1CaloPprPhos4ShapeMaker.h:100
L1CaloPprPhos4ShapeMaker::SetAtlasStyle
void SetAtlasStyle(void)
Definition: L1CaloPprPhos4ShapeMaker.cxx:617
L1CaloPprPhos4ShapeMaker::m_runNumber
unsigned int m_runNumber
Definition: L1CaloPprPhos4ShapeMaker.h:111
AthAlgorithm.h
L1CaloPprPhos4ShapeMaker::m_ppmDeadChannelsFolderName
std::string m_ppmDeadChannelsFolderName
Definition: L1CaloPprPhos4ShapeMaker.h:115
L1CaloPprPhos4ShapeMaker::m_l1aFadcSlice
unsigned int m_l1aFadcSlice
Definition: L1CaloPprPhos4ShapeMaker.h:98
RODHeader.h
L1CaloPprPhos4ShapeMaker::m_rodHeader
const DataVector< LVL1::RODHeader > * m_rodHeader
Definition: L1CaloPprPhos4ShapeMaker.h:109
CaloIdManager
This class initializes the Calo (LAr and Tile) offline identifiers.
Definition: CaloIdManager.h:45
L1CaloPprPhos4ShapeMaker::m_minSignalHeight
unsigned int m_minSignalHeight
Definition: L1CaloPprPhos4ShapeMaker.h:141
L1CaloPprPhos4ShapeMaker::SetTimingRegime
void SetTimingRegime(const std::string &regime)
Definition: L1CaloPprPhos4ShapeMaker.cxx:595
HLTStreamTag.h
L1CaloPprPhos4ShapeMaker::execute
virtual StatusCode execute() override
Definition: L1CaloPprPhos4ShapeMaker.cxx:105
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
L1CaloPprPhos4ShapeMaker::m_attrList
const CondAttrListCollection * m_attrList
Definition: L1CaloPprPhos4ShapeMaker.h:112
L1CaloPprPhos4ShapeMaker::GetCoolId
L1CaloCoolChannelId GetCoolId(const double eta, const double phi, const unsigned int layer)
Definition: L1CaloPprPhos4ShapeMaker.cxx:568
L1CaloPprPhos4ShapeMaker::m_currentPedValueMap
std::map< unsigned int, unsigned int > m_currentPedValueMap
Definition: L1CaloPprPhos4ShapeMaker.h:96
L1CaloPprPhos4ShapeMaker::m_currentDatabaseMapsFilled
bool m_currentDatabaseMapsFilled
Definition: L1CaloPprPhos4ShapeMaker.h:92
L1CaloPprPhos4ShapeCollection.h
DataVector< LVL1::TriggerTower >
L1CaloPprPhos4ShapeMaker::m_pprChanCalibFolderName
std::string m_pprChanCalibFolderName
Definition: L1CaloPprPhos4ShapeMaker.h:113
AthAlgorithm
Definition: AthAlgorithm.h:47
L1CaloPprPhos4ShapeMaker::m_ttSvc
CaloTriggerTowerService * m_ttSvc
Definition: L1CaloPprPhos4ShapeMaker.h:128
L1CaloPprPhos4ShapeMaker::m_isTile
bool m_isTile
Definition: L1CaloPprPhos4ShapeMaker.h:150
CaloLVL1_ID
Helper class for offline TT identifiers.
Definition: CaloLVL1_ID.h:66
CaloCellTimeCorrFiller.folderName
string folderName
Definition: CaloCellTimeCorrFiller.py:20
HWIdentifier.h
L1CaloPprPhos4ShapeMaker::m_errorCodeName
std::string m_errorCodeName
Definition: L1CaloPprPhos4ShapeMaker.h:99
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
L1CaloPprPhos4ShapeMaker::m_selectedCoolIds
std::vector< unsigned int > m_selectedCoolIds
Definition: L1CaloPprPhos4ShapeMaker.h:143
L1CaloPprPhos4ShapeMaker::Itr_tt
TriggerTowerCollection::const_iterator Itr_tt
Definition: L1CaloPprPhos4ShapeMaker.h:107
L1CaloPprPhos4ShapeMaker::loadAthenaObjects
StatusCode loadAthenaObjects()
Definition: L1CaloPprPhos4ShapeMaker.cxx:469
L1CaloPprPhos4ShapeMaker::m_l1caloRunParametersFolderName
std::string m_l1caloRunParametersFolderName
Definition: L1CaloPprPhos4ShapeMaker.h:117
L1CaloCoolChannelId
Definition: L1CaloCoolChannelId.h:10
CaloLVL1_ID.h
L1CaloPprPhos4ShapeMaker::m_readoutConfigFolderName
std::string m_readoutConfigFolderName
Definition: L1CaloPprPhos4ShapeMaker.h:114
L1CaloPprPhos4ShapeMaker::m_histTool
ToolHandle< LVL1::TrigT1CaloLWHistogramTool > m_histTool
Definition: L1CaloPprPhos4ShapeMaker.h:85
CaloTriggerTowerService.h
L1CaloPprPhos4ShapeMaker
Definition: L1CaloPprPhos4ShapeMaker.h:61
L1CaloPprPhos4ShapeMaker::initialize
virtual StatusCode initialize() override
Definition: L1CaloPprPhos4ShapeMaker.cxx:40
L1CaloPprPhos4ShapeMaker::m_triggerTowers
const TriggerTowerCollection * m_triggerTowers
Definition: L1CaloPprPhos4ShapeMaker.h:106
TriggerTowerCollection.h
CaloIdManager.h
L1CaloPprPhos4ShapeMaker::m_ttcConfigurationName
std::string m_ttcConfigurationName
Definition: L1CaloPprPhos4ShapeMaker.h:102
L1CaloPprPhos4ShapeMaker::m_lvl1Helper
const CaloLVL1_ID * m_lvl1Helper
Definition: L1CaloPprPhos4ShapeMaker.h:130
L1CaloPprPhos4ShapeMaker::operator=
void operator=(const L1CaloPprPhos4ShapeMaker &rhs)
L1CaloPprPhos4ShapeMaker::m_fullDataDelayName
std::string m_fullDataDelayName
Definition: L1CaloPprPhos4ShapeMaker.h:93
L1CaloPprPhos4ShapeMaker::m_ttcConfiguration
std::string m_ttcConfiguration
Definition: L1CaloPprPhos4ShapeMaker.h:103
checker_macros.h
Define macros for attributes used to control the static checker.
L1CaloPprPhos4ShapeMaker::L1CaloPprPhos4ShapeMaker
L1CaloPprPhos4ShapeMaker(const L1CaloPprPhos4ShapeMaker &rhs)
L1CaloPprPhos4ShapeMaker::m_l1caloDerivedRunParsFolderName
std::string m_l1caloDerivedRunParsFolderName
Definition: L1CaloPprPhos4ShapeMaker.h:116
L1CaloPprPhos4ShapeMaker::m_signalProfiles
std::map< unsigned int, TProfile * > * m_signalProfiles
Definition: L1CaloPprPhos4ShapeMaker.h:135
L1CaloPprPhos4ShapeMaker::m_ttOnlineIdHelper
const TTOnlineID * m_ttOnlineIdHelper
Definition: L1CaloPprPhos4ShapeMaker.h:129
L1CaloPprPhos4ShapeMaker::ATLAS_NOT_THREAD_SAFE
virtual StatusCode finalize ATLAS_NOT_THREAD_SAFE() override
L1CaloPprPhos4ShapeMaker::m_histosForSelectedCoolIds
std::map< unsigned int, TH2F * > m_histosForSelectedCoolIds
Definition: L1CaloPprPhos4ShapeMaker.h:144
L1CaloPprPhos4ShapeMaker::GetTriggerTowers
StatusCode GetTriggerTowers()
Definition: L1CaloPprPhos4ShapeMaker.cxx:534
L1CaloPprPhos4ShapeMaker::m_maxSelectedCoolIds
static const unsigned short int m_maxSelectedCoolIds
Definition: L1CaloPprPhos4ShapeMaker.h:145
L1CaloPprPhos4ShapeMaker::m_pedValueName
std::string m_pedValueName
Definition: L1CaloPprPhos4ShapeMaker.h:95
L1CaloPprPhos4ShapeMaker::L1CaloPprPhos4ShapeMaker
L1CaloPprPhos4ShapeMaker()