ATLAS Offline Software
Loading...
Searching...
No Matches
TileTBStat.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
5//****************************************************************************
6// Filename : TileTBNtuple.h
7// Author : Paulo da Silva
8// Created : Oct, 2003
9//
10// DESCRIPTION
11//
12// To create TB beam Ntuple file from Digits container
13//
14// Properties (JobOption Parameters):
15//
16// TileDigitsContainer string key value of Digits in TDS
17// TileBeamElemContainer string key of BeamElems in TDS
18//
19// BUGS:
20//
21// History:
22//
23//
24//****************************************************************************
25
26/* @class TileTBStat
27 @brief Class to produce run statistics. This is used to store run informations in TileCal commissioning database.
28 */
29
30#ifndef TileTBStat_H
31#define TileTBStat_H
32
33// Gauid includes
34#include "GaudiKernel/ToolHandle.h"
35#include "GaudiKernel/ServiceHandle.h"
36
37
38// Athena incldues
43
47
48class TileID;
49class TileHWID;
50
51#include <string>
52#include <vector>
53#include <map>
54
55#include <inttypes.h>
56
58 public:
59 StatDouble();
60 void addValue(double Value);
61 double getMean();
62 double getChi2();
63 void print(const char* s, bool minMaxOnly = false);
65 double Min, Max, Sum, SumSq;
66};
67
68class StatInt {
69 public:
70 StatInt();
71 void addValue(int Value);
72 void print(const char* s, bool minMaxOnly = false);
73 std::map<int, int> checkOut;
74};
75
76class TileTBStat: public AthAlgorithm {
77 public:
78 //Constructor
79 TileTBStat(const std::string& name, ISvcLocator* pSvcLocator);
80
81 //Destructor
82 virtual ~TileTBStat();
83
84 //Gaudi Hooks
85 virtual StatusCode initialize() override;
86 virtual StatusCode execute() override;
87 virtual StatusCode finalize() override;
88
89 private:
90
91 Gaudi::Property<bool> m_printAllEvents{this,
92 "PrintAllEvents", false, "Print all events"};
93 Gaudi::Property<bool> m_detectDummyFragments{this,
94 "DetectDummyFragments", false, "Detect dummy fragments"};
96 "TileHid2RESrcID", "TileHid2RESrcID", "TileHid2RESrcID key"};
98 "TileDQstatus", "TileDQstatus", "Tile DQ status key"};
100 "TileLaserObject", "TileLaserObj", "Tile laser object key"};
101
106 "ROBDataProviderSvc", "ROBDataProviderSvc", "The ROB data provider service"};
107
127
128 uint32_t m_runNo;
129 uint64_t m_evTime;
130 uint32_t m_evtNo;
132 uint32_t m_prevTrig;
133 uint32_t m_evtBegin;
134 uint64_t m_timeBegin;
135 uint64_t m_timeStart;
136 uint64_t m_timeLast;
137 uint32_t m_evtMin;
138 uint32_t m_evtMax;
139 uint32_t m_calibMode;
141 uint32_t m_nSpill;
142 uint32_t m_nEvt[5];
143 uint32_t m_cisPar[16];
144 uint32_t m_cis1st[16];
145 uint32_t m_cisBeg[19];
146 uint32_t m_cisEnd[19];
147
148 /* the ROD data sub-fragment */
149 typedef struct T_RobRodFragMap {
150 uint32_t L1type;
151 uint32_t ROBid;
152 uint32_t RODid;
153 std::vector<uint32_t> fragID;
155
156 /* the ROD data sub-fragment */
157 typedef struct T_RodDataFrag {
158 uint32_t size;
159 uint32_t id;
160 uint32_t data[1];
162
163 std::vector<T_RobRodFragMap> m_fragMap;
164 std::vector<T_RobRodFragMap> m_beamFragMap;
165
166 void find_frag(const uint32_t* data, unsigned int size, T_RobRodFragMap & ROBfrag);
167
168 uint32_t m_nEventsPerTrigger[257];
169};
170
171#endif
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
Property holding a SG store/key/clid from which a ReadHandle is made.
Information produced by TileDQstatusAlg (used to be done by TileBeamInfoProvider).
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Property holding a SG store/key/clid from which a ReadHandle is made.
double getChi2()
double Max
Definition TileTBStat.h:65
double Sum
Definition TileTBStat.h:65
double SumSq
Definition TileTBStat.h:65
void addValue(double Value)
void print(const char *s, bool minMaxOnly=false)
double getMean()
double Min
Definition TileTBStat.h:65
void addValue(int Value)
std::map< int, int > checkOut
Definition TileTBStat.h:73
void print(const char *s, bool minMaxOnly=false)
Helper class for TileCal online (hardware) identifiers.
Definition TileHWID.h:49
Helper class for TileCal offline identifiers.
Definition TileID.h:67
StatInt m_lasAlphaPos
Definition TileTBStat.h:124
std::vector< T_RobRodFragMap > m_fragMap
Definition TileTBStat.h:163
struct TileTBStat::T_RobRodFragMap T_RobRodFragMap
StatInt m_cisDAC
Definition TileTBStat.h:117
StatDouble m_laserBoxHum
Definition TileTBStat.h:111
void find_frag(const uint32_t *data, unsigned int size, T_RobRodFragMap &ROBfrag)
virtual StatusCode execute() override
StatDouble m_laserBoxTemp
Definition TileTBStat.h:109
uint64_t m_timeBegin
Definition TileTBStat.h:134
uint32_t m_spillPattern
Definition TileTBStat.h:140
StatInt m_cisI3Delay
Definition TileTBStat.h:116
uint64_t m_timeLast
Definition TileTBStat.h:136
StatDouble m_laserDiodeTemp
Definition TileTBStat.h:110
uint64_t m_timeStart
Definition TileTBStat.h:135
StatInt m_cisCard
Definition TileTBStat.h:121
StatInt m_lasAmp
Definition TileTBStat.h:123
Gaudi::Property< bool > m_printAllEvents
Definition TileTBStat.h:91
uint32_t m_cisEnd[19]
Definition TileTBStat.h:146
virtual ~TileTBStat()
uint32_t m_evtNo
Definition TileTBStat.h:130
SG::ReadCondHandleKey< TileHid2RESrcID > m_hid2RESrcIDKey
Definition TileTBStat.h:95
StatInt m_cisPipeline
Definition TileTBStat.h:115
virtual StatusCode finalize() override
uint32_t m_evtMax
Definition TileTBStat.h:138
StatInt m_cisMode
Definition TileTBStat.h:113
SG::ReadHandleKey< TileDQstatus > m_dqStatusKey
Definition TileTBStat.h:97
int m_lasStatus
Definition TileTBStat.h:125
uint32_t m_calibMode
Definition TileTBStat.h:139
struct TileTBStat::T_RodDataFrag T_RodDataFrag
uint32_t m_cis1st[16]
Definition TileTBStat.h:144
SG::ReadHandleKey< TileLaserObject > m_laserObjectKey
Definition TileTBStat.h:99
uint32_t m_runNo
Definition TileTBStat.h:128
ServiceHandle< IROBDataProviderSvc > m_robSvc
Name of ROB data provider service.
Definition TileTBStat.h:105
StatInt m_cisSamples
Definition TileTBStat.h:114
uint32_t m_nEvt[5]
Definition TileTBStat.h:142
StatInt m_cisEvent
Definition TileTBStat.h:119
uint32_t m_evtBegin
Definition TileTBStat.h:133
std::vector< T_RobRodFragMap > m_beamFragMap
Definition TileTBStat.h:164
uint32_t m_prevTrig
Definition TileTBStat.h:132
TileTBStat(const std::string &name, ISvcLocator *pSvcLocator)
uint64_t m_evTime
Definition TileTBStat.h:129
Gaudi::Property< bool > m_detectDummyFragments
Definition TileTBStat.h:93
StatDouble m_gasFlow
Definition TileTBStat.h:112
uint32_t m_cisBeg[19]
Definition TileTBStat.h:145
StatInt m_lasFiltNum
Definition TileTBStat.h:122
uint32_t m_cisPar[16]
Definition TileTBStat.h:143
uint32_t m_nEventsPerTrigger[257]
Definition TileTBStat.h:168
uint32_t m_nSpill
Definition TileTBStat.h:141
uint32_t m_evtMin
Definition TileTBStat.h:137
StatInt m_cisPhase
Definition TileTBStat.h:120
StatInt m_cisCap
Definition TileTBStat.h:118
virtual StatusCode initialize() override
tag-value pair class.
Definition Value.h:39
std::vector< uint32_t > fragID
Definition TileTBStat.h:153