ATLAS Offline Software
Loading...
Searching...
No Matches
BunchCrossingIntensityCondData.cxx
Go to the documentation of this file.
3#include <algorithm>
4
5
6
8 if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return 0;
9 if (channel==0)
10 return m_beam1Intensity.at(bcid);
11 else if (channel==1)
12 return m_beam1Intensity_fBCT.at(bcid);
13 else
14 return 0;
15}
16
17
19 if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return 0;
20 if (channel==0)
21 return m_beam2Intensity.at(bcid);
22 else if (channel==1)
23 return m_beam2Intensity_fBCT.at(bcid);
24 else
25 return 0;
26}
27
28
29
30
31
32const std::vector<float>& BunchCrossingIntensityCondData::GetBeam1IntensityPerBCIDVector(int channel) const {
33 // if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return false;
34 if(channel==0)
35 return m_beam1Intensity;
36 // else if(channel==1)
37 else
39
40}
41
42
43const std::vector<float>& BunchCrossingIntensityCondData::GetBeam2IntensityPerBCIDVector(int channel) const {
44 // if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return false;
45 if(channel==0)
46 return m_beam2Intensity;
47 else //if(channel==1)
49
50}
51
52
54 // if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return false;
55 if(channel==0)
57 else if(channel==1)
59 else return 0;
60
61}
62
63
65 // if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return false;
66 if(channel==0)
68 else if(channel==1)
70 else return 0;
71
72}
73
74
75unsigned long long BunchCrossingIntensityCondData::GetRunLB() const {
76 // if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return false;
77 return m_RunLB;
78}
79
80
81
82
83
84
85
86void BunchCrossingIntensityCondData::setBeam1IntensityPerBCIDVector( std::vector<float>&& val,int channel) {
87 if (channel==0)
88 m_beam1Intensity = std::move(val);
89 else if (channel==1)
90 m_beam1Intensity_fBCT = std::move(val);
91}
92
93
94void BunchCrossingIntensityCondData::setBeam2IntensityPerBCIDVector( std::vector<float>&& val,int channel) {
95 if (channel==0)
96 m_beam2Intensity = std::move(val);
97 else if (channel==1)
98 m_beam2Intensity_fBCT = std::move(val);
99}
100
101
102void BunchCrossingIntensityCondData::SetBeam1IntensityAll( float Beam1IntensityAll,int channel) {
103 if(channel==0)
104 m_beam1IntensityAll = Beam1IntensityAll;
105 else if(channel==1)
106 m_beam1IntensityAll_fBCT = Beam1IntensityAll;
107}
108
109
110void BunchCrossingIntensityCondData::SetBeam2IntensityAll( float Beam2IntensityAll,int channel) {
111 if(channel==0)
112 m_beam2IntensityAll = Beam2IntensityAll;
113 else if(channel==1)
114 m_beam2IntensityAll_fBCT = Beam2IntensityAll;
115}
116
117
118void BunchCrossingIntensityCondData::SetRunLB( unsigned long long RunLB) {
119 m_RunLB = RunLB;
120}
121
#define ATH_UNLIKELY(x)
Adding more information about Bunch Current Intensities (for Lumi studies)
const std::vector< float > & GetBeam1IntensityPerBCIDVector(int channel) const
float GetBeam2IntensityBCID(const bcid_type bcid, int channel) const
void setBeam1IntensityPerBCIDVector(std::vector< float > &&val, int channel)
void SetBeam1IntensityAll(float Beam1IntensityAll, int channel)
const std::vector< float > & GetBeam2IntensityPerBCIDVector(int channel) const
float GetBeam1IntensityBCID(const bcid_type bcid, int channel) const
void SetBeam2IntensityAll(float Beam2IntensityAll, int channel)
void setBeam2IntensityPerBCIDVector(std::vector< float > &&val, int channel)
singleton-like access to IMessageSvc via open function and helper