ATLAS Offline Software
Loading...
Searching...
No Matches
BunchCrossingAverageCondAlg.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-2019 CERN for the benefit of the ATLAS collaboration.
4 */
11
12
13#ifndef LUMIBLOCKCOMPS_BUNCHCROSSINGAVERAGECONDALG_H
14#define LUMIBLOCKCOMPS_BUNCHCROSSINGAVERAGECONDALG_H
15
16
25
26
31
32public:
34 using AthCondAlgorithm::AthCondAlgorithm;
35 // typedef BunchCrossingAverageCondData::bunchTrain_t bunchTrain_t;
36
37
39 virtual StatusCode initialize() override;
40
41
43 virtual StatusCode execute (const EventContext& ctx) const override;
44
45
46
47private:
49 SG::ReadCondHandleKey<CondAttrListCollection> m_fillParamsFolderKey{ this, "FillParamsFolderKey", "/TDAQ/OLC/LHC/LBDATA3", "" };
50 SG::ReadCondHandleKey<LuminosityCondData> m_lumiCondDataKey{this, "LumiCondData", "LuminosityCondData", "Lumi cond data key"};
51
53 SG::WriteCondHandleKey<BunchCrossingAverageCondData> m_outputKey{this, "OutputKey", "BunchCrossingAverageData", "Key of output CDO" };
54
56 std::vector<float> tokenize(const std::string& pattern) const;
57
58 //Algorithm properties
59
60 // Properties of the four different possible channels
61 Gaudi::Property<unsigned long> m_BPTX{ this, "BunchDevice", 0, "Channel assignments: 0=BPTX, 1=fast BCT." };
62 Gaudi::Property<unsigned long> m_fBCT{ this, "BunchDeviceFast", 1, "Channel assignments: 0=BPTX, 1=fast BCT." };
63 Gaudi::Property<unsigned long> m_DCCT{ this, "BunchDeviceDCCT", 2, "Channel assignments: 0=BPTX, 1=fast BCT, 2=DCCT (no per-bunc/phys info), 3=DCCT24 (DCCT read out with precision 24-bit integrator)." };
64 Gaudi::Property<unsigned long> m_DCCT24{ this, "BunchDeviceDCCT24", 3, "Channel assignments: 0=BPTX, 1=fast BCT, 2=DCCT (no per-bunc/phys info), 3=DCCT24 (DCCT read out with precision 24-bit integrator)." };
65
66 // general properties
67 Gaudi::Property<unsigned> m_maxBunchSpacing{this, "MaxBunchSpacing",5, "Maximal bunch-spacing to be considered a 'bunch train'"};
68 Gaudi::Property<unsigned> m_minBunchesPerTrain{this, "MinBunchesPerTrain",32, "Minimal number of bunches to be considerd a 'bunch train'"};
69 Gaudi::Property<bool> m_isRun1{this,"Run1",false,"Assume run-1 database"};
70 Gaudi::Property<int> m_mode{this, "Mode", 1, "Alg mode (COOL FILLPARAMS = 0, MC = 1, TrigConf = 2, Luminosity = 3)"};
71};
72
73#endif
Base class for conditions algorithms.
Adding more information about Bunch Current Intensities (for Lumi studies)
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
Holds fill parameters data.
Hold luminosity data produced by LuminosityCondAlg.
Base class for conditions algorithms.
Conditions algorithm to unpack fill parameters from COOL.
Gaudi::Property< unsigned long > m_fBCT
Gaudi::Property< unsigned > m_minBunchesPerTrain
std::vector< float > tokenize(const std::string &pattern) const
internal methods:
SG::ReadCondHandleKey< LuminosityCondData > m_lumiCondDataKey
SG::ReadCondHandleKey< CondAttrListCollection > m_fillParamsFolderKey
Input conditions object.
virtual StatusCode execute(const EventContext &ctx) const override
Algorithm execute method.
Gaudi::Property< unsigned long > m_DCCT24
Gaudi::Property< unsigned long > m_DCCT
Gaudi::Property< unsigned long > m_BPTX
SG::WriteCondHandleKey< BunchCrossingAverageCondData > m_outputKey
Output conditions object.
Gaudi::Property< unsigned > m_maxBunchSpacing
virtual StatusCode initialize() override
Gaudi initialize method.