ATLAS Offline Software
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  */
13 #ifndef LUMIBLOCKCOMPS_BUNCHCROSSINGAVERAGECONDALG_H
14 #define LUMIBLOCKCOMPS_BUNCHCROSSINGAVERAGECONDALG_H
15 
16 
25 
26 
31 
32 public:
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  virtual bool isReEntrant() const override final { return false; }
45 
46 
47 
48 private:
50  SG::ReadCondHandleKey<CondAttrListCollection> m_fillParamsFolderKey{ this, "FillParamsFolderKey", "/TDAQ/OLC/LHC/LBDATA3", "" };
51  SG::ReadCondHandleKey<LuminosityCondData> m_lumiCondDataKey{this, "LumiCondData", "LuminosityCondData", "Lumi cond data key"};
52 
54  SG::WriteCondHandleKey<BunchCrossingAverageCondData> m_outputKey{this, "OutputKey", "BunchCrossingAverageData", "Key of output CDO" };
55 
57  std::vector<float> tokenize(const std::string& pattern) const;
58 
59  //Algorithm properties
60 
61  // Properties of the four different possible channels
62  Gaudi::Property<unsigned long> m_BPTX{ this, "BunchDevice", 0, "Channel assignments: 0=BPTX, 1=fast BCT." };
63  Gaudi::Property<unsigned long> m_fBCT{ this, "BunchDeviceFast", 1, "Channel assignments: 0=BPTX, 1=fast BCT." };
64  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)." };
65  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)." };
66 
67  // general properties
68  Gaudi::Property<unsigned> m_maxBunchSpacing{this, "MaxBunchSpacing",5, "Maximal bunch-spacing to be considered a 'bunch train'"};
69  Gaudi::Property<unsigned> m_minBunchesPerTrain{this, "MinBunchesPerTrain",32, "Minimal number of bunches to be considerd a 'bunch train'"};
70  Gaudi::Property<bool> m_isRun1{this,"Run1",false,"Assume run-1 database"};
71  Gaudi::Property<int> m_mode{this, "Mode", 1, "Alg mode (COOL FILLPARAMS = 0, MC = 1, TrigConf = 2, Luminosity = 3)"};
72 };
73 
74 #endif
BunchCrossingAverageCondAlg::m_outputKey
SG::WriteCondHandleKey< BunchCrossingAverageCondData > m_outputKey
Output conditions object.
Definition: BunchCrossingAverageCondAlg.h:54
mergePhysValFiles.pattern
pattern
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:26
CondAttrListCollection.h
This file defines the class for a collection of AttributeLists where each one is associated with a ch...
BunchCrossingAverageCondAlg
Conditions algorithm to unpack fill parameters from COOL.
Definition: BunchCrossingAverageCondAlg.h:30
BunchCrossingAverageCondAlg::tokenize
std::vector< float > tokenize(const std::string &pattern) const
internal methods:
Definition: BunchCrossingAverageCondAlg.cxx:241
BunchCrossingAverageCondAlg::m_maxBunchSpacing
Gaudi::Property< unsigned > m_maxBunchSpacing
Definition: BunchCrossingAverageCondAlg.h:68
WriteCondHandleKey.h
BunchCrossingAverageCondAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Algorithm execute method.
Definition: BunchCrossingAverageCondAlg.cxx:50
BunchCrossingAverageCondAlg::m_DCCT
Gaudi::Property< unsigned long > m_DCCT
Definition: BunchCrossingAverageCondAlg.h:64
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
ILVL1ConfigSvc.h
AthReentrantAlgorithm::AthReentrantAlgorithm
AthReentrantAlgorithm()
Default constructor:
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
BunchCrossingAverageCondAlg::m_mode
Gaudi::Property< int > m_mode
Definition: BunchCrossingAverageCondAlg.h:71
BunchCrossingAverageCondAlg::m_fillParamsFolderKey
SG::ReadCondHandleKey< CondAttrListCollection > m_fillParamsFolderKey
Input conditions object.
Definition: BunchCrossingAverageCondAlg.h:50
FillParamsCondData.h
Holds fill parameters data.
BunchCrossingAverageCondAlg::m_lumiCondDataKey
SG::ReadCondHandleKey< LuminosityCondData > m_lumiCondDataKey
Definition: BunchCrossingAverageCondAlg.h:51
BunchCrossingAverageCondAlg::m_BPTX
Gaudi::Property< unsigned long > m_BPTX
Definition: BunchCrossingAverageCondAlg.h:62
LuminosityCondData.h
Hold luminosity data produced by LuminosityCondAlg.
BunchCrossingAverageCondAlg::m_DCCT24
Gaudi::Property< unsigned long > m_DCCT24
Definition: BunchCrossingAverageCondAlg.h:65
ReadCondHandleKey.h
AthReentrantAlgorithm.h
BunchCrossingAverageCondAlg::isReEntrant
virtual bool isReEntrant() const override final
Definition: BunchCrossingAverageCondAlg.h:44
BunchCrossingAverageCondAlg::m_fBCT
Gaudi::Property< unsigned long > m_fBCT
Definition: BunchCrossingAverageCondAlg.h:63
BunchCrossingAverageCondAlg::initialize
virtual StatusCode initialize() override
Gaudi initialize method.
Definition: BunchCrossingAverageCondAlg.cxx:40
BunchCrossingAverageCondAlg::m_minBunchesPerTrain
Gaudi::Property< unsigned > m_minBunchesPerTrain
Definition: BunchCrossingAverageCondAlg.h:69
SG::ReadCondHandleKey< CondAttrListCollection >
BunchCrossingAverageCondAlg::m_isRun1
Gaudi::Property< bool > m_isRun1
Definition: BunchCrossingAverageCondAlg.h:70
BunchCrossingAverageCondData.h
Adding more information about Bunch Current Intensities (for Lumi studies)
SG::WriteCondHandleKey< BunchCrossingAverageCondData >