ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LumiBlock
LumiBlockComps
src
BunchCrossingCondAlg.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
/*
3
* Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration.
4
*/
11
12
13
#ifndef LUMIBLOCKCOMPS_BUNCHCROSSINGCONDALG_H
14
#define LUMIBLOCKCOMPS_BUNCHCROSSINGCONDALG_H
15
16
17
#include "
CoolLumiUtilities/FillParamsCondData.h
"
18
#include "
LumiBlockData/BunchCrossingCondData.h
"
19
#include "
AthenaBaseComps/AthCondAlgorithm.h
"
20
#include "
StoreGate/ReadCondHandleKey.h
"
21
#include "
StoreGate/WriteCondHandleKey.h
"
22
#include "
TrigConfInterfaces/ILVL1ConfigSvc.h
"
23
#include "
LumiBlockData/LuminosityCondData.h
"
24
#include "
TrigConfData/L1BunchGroupSet.h
"
25
#include "
PersistentDataModel/AthenaAttributeList.h
"
26
#include "
ByteStreamData/ByteStreamMetadataContainer.h
"
27
#include "
StoreGate/ReadHandleKey.h
"
28
32
class
BunchCrossingCondAlg
:
public
AthCondAlgorithm
{
33
34
public
:
36
using
AthCondAlgorithm::AthCondAlgorithm;
37
typedef
BunchCrossingCondData::bunchTrain_t
bunchTrain_t
;
38
39
41
virtual
StatusCode
initialize
()
override
;
42
43
45
virtual
StatusCode
execute
(
const
EventContext& ctx)
const override
;
46
47
48
49
private
:
51
SG::ReadCondHandleKey<AthenaAttributeList>
m_fillParamsFolderKey
{
this
,
"FillParamsFolderKey"
,
"/TDAQ/OLC/LHC/FILLPARAMS"
,
""
};
52
SG::ReadCondHandleKey<LuminosityCondData>
m_lumiCondDataKey
{
this
,
"LumiCondData"
,
"LuminosityCondData"
,
"Lumi cond data key"
};
53
SG::ReadCondHandleKey<TrigConf::L1BunchGroupSet>
m_bunchGroupCondDataKey
{
this
,
"L1BunchGroupCondData"
,
"L1BunchGroup"
,
"Bunch group cond data key"
};
54
56
SG::ReadHandleKey<ByteStreamMetadataContainer>
m_byteStreamMetadataKey
57
{
this
,
"ByteStreamMetadataKey"
,
""
,
58
"ByteStream metadata (for reading IOV metadata from BS files in MC mode)"
};
59
60
SG::WriteCondHandleKey<BunchCrossingCondData>
m_outputKey
{
this
,
"OutputKey"
,
"BunchCrossingData"
,
"Key of output CDO"
};
61
62
// Service handle
63
const
ServiceHandle<TrigConf::ILVL1ConfigSvc>
m_trigConfigSvc
{
this
,
"TrigConfigSvc"
,
"TrigConf::xAODConfigSvc/xAODConfigSvc"
,
"Trig Config Svc"
};
64
66
std::vector<bunchTrain_t>
findTrains
(
const
std::bitset< BunchCrossingCondData::m_MAX_BCID>& pairsToConsume,
const
int
maxSpacingInTrain,
const
unsigned
minBunchesPerTrain)
const
;
67
std::vector<float>
tokenize
(
const
std::string& pattern)
const
;
68
69
//Algorithm properties
70
Gaudi::Property<unsigned>
m_maxBunchSpacing
{
this
,
"MaxBunchSpacing"
,5,
"Maximal bunch-spacing to be considered a 'bunch train'"
};
71
Gaudi::Property<unsigned>
m_minBunchesPerTrain
{
this
,
"MinBunchesPerTrain"
,32,
"Minimal number of bunches to be considerd a 'bunch train'"
};
72
Gaudi::Property<bool>
m_isRun1
{
this
,
"Run1"
,
false
,
"Assume run-1 database"
};
73
Gaudi::Property<int>
m_mode
{
this
,
"Mode"
, 1,
"Alg mode (COOL FILLPARAMS = 0, MC = 1, TrigConf = 2, Luminosity = 3)"
};
74
};
75
76
#endif
AthCondAlgorithm.h
Base class for conditions algorithms.
BunchCrossingCondData.h
Replaces the BunchCrossing AlgTool used in run1/2.
ByteStreamMetadataContainer.h
This file contains the class definition for the ByteStreamMetadataContainer class.
FillParamsCondData.h
Holds fill parameters data.
ILVL1ConfigSvc.h
L1BunchGroupSet.h
LuminosityCondData.h
Hold luminosity data produced by LuminosityCondAlg.
AthenaAttributeList.h
An AttributeList represents a logical row of attributes in a metadata table.
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteCondHandleKey.h
AthCondAlgorithm
Base class for conditions algorithms.
Definition
AthCondAlgorithm.h:22
BunchCrossingCondAlg
Conditions algorithm to unpack fill parameters from COOL.
Definition
BunchCrossingCondAlg.h:32
BunchCrossingCondAlg::m_byteStreamMetadataKey
SG::ReadHandleKey< ByteStreamMetadataContainer > m_byteStreamMetadataKey
ByteStream metadata (for reading IOV metadata from BS files in MC mode).
Definition
BunchCrossingCondAlg.h:57
BunchCrossingCondAlg::tokenize
std::vector< float > tokenize(const std::string &pattern) const
This helper function is used to convert a string of type "[0.0, 0.0, 1.0, 1.0, 1.0]" into a vector of...
Definition
BunchCrossingCondAlg.cxx:439
BunchCrossingCondAlg::m_isRun1
Gaudi::Property< bool > m_isRun1
Definition
BunchCrossingCondAlg.h:72
BunchCrossingCondAlg::m_mode
Gaudi::Property< int > m_mode
Definition
BunchCrossingCondAlg.h:73
BunchCrossingCondAlg::m_outputKey
SG::WriteCondHandleKey< BunchCrossingCondData > m_outputKey
Output conditions object.
Definition
BunchCrossingCondAlg.h:60
BunchCrossingCondAlg::initialize
virtual StatusCode initialize() override
Gaudi initialize method.
Definition
BunchCrossingCondAlg.cxx:20
BunchCrossingCondAlg::m_maxBunchSpacing
Gaudi::Property< unsigned > m_maxBunchSpacing
Definition
BunchCrossingCondAlg.h:70
BunchCrossingCondAlg::m_minBunchesPerTrain
Gaudi::Property< unsigned > m_minBunchesPerTrain
Definition
BunchCrossingCondAlg.h:71
BunchCrossingCondAlg::findTrains
std::vector< bunchTrain_t > findTrains(const std::bitset< BunchCrossingCondData::m_MAX_BCID > &pairsToConsume, const int maxSpacingInTrain, const unsigned minBunchesPerTrain) const
internal methods:
Definition
BunchCrossingCondAlg.cxx:333
BunchCrossingCondAlg::m_bunchGroupCondDataKey
SG::ReadCondHandleKey< TrigConf::L1BunchGroupSet > m_bunchGroupCondDataKey
Definition
BunchCrossingCondAlg.h:53
BunchCrossingCondAlg::m_lumiCondDataKey
SG::ReadCondHandleKey< LuminosityCondData > m_lumiCondDataKey
Definition
BunchCrossingCondAlg.h:52
BunchCrossingCondAlg::m_trigConfigSvc
const ServiceHandle< TrigConf::ILVL1ConfigSvc > m_trigConfigSvc
Definition
BunchCrossingCondAlg.h:63
BunchCrossingCondAlg::m_fillParamsFolderKey
SG::ReadCondHandleKey< AthenaAttributeList > m_fillParamsFolderKey
Input conditions object.
Definition
BunchCrossingCondAlg.h:51
BunchCrossingCondAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Algorithm execute method.
Definition
BunchCrossingCondAlg.cxx:37
BunchCrossingCondAlg::bunchTrain_t
BunchCrossingCondData::bunchTrain_t bunchTrain_t
Definition
BunchCrossingCondAlg.h:37
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SG::WriteCondHandleKey
Definition
WriteCondHandleKey.h:22
ServiceHandle
Definition
ClusterMakerTool.h:36
BunchCrossingCondData::bunchTrain_t
Definition
BunchCrossingCondData.h:315
Generated on
for ATLAS Offline Software by
1.17.0