ATLAS Offline Software
Loading...
Searching...
No Matches
BunchCrossingIntensityCondData Class Reference

#include <BunchCrossingIntensityCondData.h>

Collaboration diagram for BunchCrossingIntensityCondData:

Public Types

enum  BunchCrossingType {
  Empty = 0 , FirstEmpty = 1 , MiddleEmpty = 2 , Single = 100 ,
  Front = 200 , Middle = 201 , Tail = 202 , Unpaired = 300
}
 Enumeration type for a given bunch crossing. More...
enum  BunchDistanceType { NanoSec , BunchCrossings , FilledBunches }
 Enumeration specifying the units in which to expect the bunch distance type. More...
typedef unsigned int bcid_type

Public Member Functions

float GetBeam1IntensityBCID (const bcid_type bcid, int channel) const
float GetBeam2IntensityBCID (const bcid_type bcid, int channel) const
const std::vector< float > & GetBeam1IntensityPerBCIDVector (int channel) const
const std::vector< float > & GetBeam2IntensityPerBCIDVector (int channel) const
float GetBeam1IntensityAll (int channel) const
float GetBeam2IntensityAll (int channel) const
unsigned long long GetRunLB () const
void SetBeam1IntensityAll (float Beam1IntensityAll, int channel)
void SetBeam2IntensityAll (float Beam2IntensityAll, int channel)
void setBeam1IntensityPerBCIDVector (std::vector< float > &&val, int channel)
void setBeam2IntensityPerBCIDVector (std::vector< float > &&val, int channel)
void SetRunLB (unsigned long long RunLB)

Static Public Attributes

static constexpr int m_MAX_BCID =3564
static constexpr int m_BUNCH_SPACING = 25

Private Attributes

std::vector< float > m_beam1Intensity = std::vector<float> (m_MAX_BCID)
std::vector< float > m_beam2Intensity = std::vector<float> (m_MAX_BCID)
std::vector< float > m_beam1Intensity_fBCT = std::vector<float> (m_MAX_BCID)
std::vector< float > m_beam2Intensity_fBCT = std::vector<float> (m_MAX_BCID)
float m_beam1IntensityAll
float m_beam2IntensityAll
float m_beam1IntensityAll_fBCT
float m_beam2IntensityAll_fBCT
unsigned long long m_RunLB

Static Private Attributes

static const int m_headTailLength = 300

Friends

class BunchCrossingIntensityCondAlg

Detailed Description

Definition at line 23 of file BunchCrossingIntensityCondData.h.

Member Typedef Documentation

◆ bcid_type

Definition at line 27 of file BunchCrossingIntensityCondData.h.

Member Enumeration Documentation

◆ BunchCrossingType

Enumeration type for a given bunch crossing.

This enumeration can specify what kind of bunch crossing one BCID belongs to. The types could easily be extended later on.

Enumerator
Empty 

An empty bunch far away from filled bunches.

FirstEmpty 

The first empty bunch after a train.

MiddleEmpty 

An empty BCID in the middle of a train.

Single 

This is a filled, single bunch (not in a train)

Front 

The BCID belongs to the first few bunches in a train.

Middle 

The BCID belongs to the middle bunches in a train.

Tail 

The BCID belongs to the last few bunces in a train.

Unpaired 

This is an unpaired bunch (either beam1 or beam2)

Definition at line 61 of file BunchCrossingIntensityCondData.h.

62 {
63 Empty = 0,
64 FirstEmpty = 1,
65 MiddleEmpty = 2,
66 Single = 100,
67 Front = 200,
68 Middle = 201,
69 Tail = 202,
70 Unpaired = 300
71 };
@ Single
This is a filled, single bunch (not in a train)
@ Front
The BCID belongs to the first few bunches in a train.
@ Tail
The BCID belongs to the last few bunces in a train.
@ Middle
The BCID belongs to the middle bunches in a train.
@ MiddleEmpty
An empty BCID in the middle of a train.
@ Empty
An empty bunch far away from filled bunches.
@ FirstEmpty
The first empty bunch after a train.
@ Unpaired
This is an unpaired bunch (either beam1 or beam2)

◆ BunchDistanceType

Enumeration specifying the units in which to expect the bunch distance type.

To make it clear for the following functions what units to interpret their return values in, it is possible to request their return values in different units.

Enumerator
NanoSec 

Distance in nanoseconds.

BunchCrossings 

Distance in units of 25 nanoseconds.

FilledBunches 

Distance in units of filled bunches (depends on filling scheme)

Definition at line 79 of file BunchCrossingIntensityCondData.h.

79 {
80 NanoSec,
84 };
@ FilledBunches
Distance in units of filled bunches (depends on filling scheme)
@ BunchCrossings
Distance in units of 25 nanoseconds.

Member Function Documentation

◆ GetBeam1IntensityAll()

float BunchCrossingIntensityCondData::GetBeam1IntensityAll ( int channel) const

Definition at line 53 of file BunchCrossingIntensityCondData.cxx.

53 {
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}

◆ GetBeam1IntensityBCID()

float BunchCrossingIntensityCondData::GetBeam1IntensityBCID ( const bcid_type bcid,
int channel ) const

Definition at line 7 of file BunchCrossingIntensityCondData.cxx.

7 {
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}
#define ATH_UNLIKELY(x)

◆ GetBeam1IntensityPerBCIDVector()

const std::vector< float > & BunchCrossingIntensityCondData::GetBeam1IntensityPerBCIDVector ( int channel) const

Definition at line 32 of file BunchCrossingIntensityCondData.cxx.

32 {
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}

◆ GetBeam2IntensityAll()

float BunchCrossingIntensityCondData::GetBeam2IntensityAll ( int channel) const

Definition at line 64 of file BunchCrossingIntensityCondData.cxx.

64 {
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}

◆ GetBeam2IntensityBCID()

float BunchCrossingIntensityCondData::GetBeam2IntensityBCID ( const bcid_type bcid,
int channel ) const

Definition at line 18 of file BunchCrossingIntensityCondData.cxx.

18 {
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}

◆ GetBeam2IntensityPerBCIDVector()

const std::vector< float > & BunchCrossingIntensityCondData::GetBeam2IntensityPerBCIDVector ( int channel) const

Definition at line 43 of file BunchCrossingIntensityCondData.cxx.

43 {
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}

◆ GetRunLB()

unsigned long long BunchCrossingIntensityCondData::GetRunLB ( ) const

Definition at line 75 of file BunchCrossingIntensityCondData.cxx.

75 {
76 // if (ATH_UNLIKELY(bcid>=m_MAX_BCID)) return false;
77 return m_RunLB;
78}

◆ SetBeam1IntensityAll()

void BunchCrossingIntensityCondData::SetBeam1IntensityAll ( float Beam1IntensityAll,
int channel )

Definition at line 102 of file BunchCrossingIntensityCondData.cxx.

102 {
103 if(channel==0)
104 m_beam1IntensityAll = Beam1IntensityAll;
105 else if(channel==1)
106 m_beam1IntensityAll_fBCT = Beam1IntensityAll;
107}

◆ setBeam1IntensityPerBCIDVector()

void BunchCrossingIntensityCondData::setBeam1IntensityPerBCIDVector ( std::vector< float > && val,
int channel )

Definition at line 86 of file BunchCrossingIntensityCondData.cxx.

86 {
87 if (channel==0)
88 m_beam1Intensity = std::move(val);
89 else if (channel==1)
90 m_beam1Intensity_fBCT = std::move(val);
91}

◆ SetBeam2IntensityAll()

void BunchCrossingIntensityCondData::SetBeam2IntensityAll ( float Beam2IntensityAll,
int channel )

Definition at line 110 of file BunchCrossingIntensityCondData.cxx.

110 {
111 if(channel==0)
112 m_beam2IntensityAll = Beam2IntensityAll;
113 else if(channel==1)
114 m_beam2IntensityAll_fBCT = Beam2IntensityAll;
115}

◆ setBeam2IntensityPerBCIDVector()

void BunchCrossingIntensityCondData::setBeam2IntensityPerBCIDVector ( std::vector< float > && val,
int channel )

Definition at line 94 of file BunchCrossingIntensityCondData.cxx.

94 {
95 if (channel==0)
96 m_beam2Intensity = std::move(val);
97 else if (channel==1)
98 m_beam2Intensity_fBCT = std::move(val);
99}

◆ SetRunLB()

void BunchCrossingIntensityCondData::SetRunLB ( unsigned long long RunLB)

Definition at line 118 of file BunchCrossingIntensityCondData.cxx.

118 {
119 m_RunLB = RunLB;
120}

◆ BunchCrossingIntensityCondAlg

friend class BunchCrossingIntensityCondAlg
friend

Definition at line 88 of file BunchCrossingIntensityCondData.h.

Member Data Documentation

◆ m_beam1Intensity

std::vector<float> BunchCrossingIntensityCondData::m_beam1Intensity = std::vector<float> (m_MAX_BCID)
private

Definition at line 93 of file BunchCrossingIntensityCondData.h.

◆ m_beam1Intensity_fBCT

std::vector<float> BunchCrossingIntensityCondData::m_beam1Intensity_fBCT = std::vector<float> (m_MAX_BCID)
private

Definition at line 96 of file BunchCrossingIntensityCondData.h.

◆ m_beam1IntensityAll

float BunchCrossingIntensityCondData::m_beam1IntensityAll
private

Definition at line 99 of file BunchCrossingIntensityCondData.h.

◆ m_beam1IntensityAll_fBCT

float BunchCrossingIntensityCondData::m_beam1IntensityAll_fBCT
private

Definition at line 101 of file BunchCrossingIntensityCondData.h.

◆ m_beam2Intensity

std::vector<float> BunchCrossingIntensityCondData::m_beam2Intensity = std::vector<float> (m_MAX_BCID)
private

Definition at line 94 of file BunchCrossingIntensityCondData.h.

◆ m_beam2Intensity_fBCT

std::vector<float> BunchCrossingIntensityCondData::m_beam2Intensity_fBCT = std::vector<float> (m_MAX_BCID)
private

Definition at line 97 of file BunchCrossingIntensityCondData.h.

◆ m_beam2IntensityAll

float BunchCrossingIntensityCondData::m_beam2IntensityAll
private

Definition at line 100 of file BunchCrossingIntensityCondData.h.

◆ m_beam2IntensityAll_fBCT

float BunchCrossingIntensityCondData::m_beam2IntensityAll_fBCT
private

Definition at line 102 of file BunchCrossingIntensityCondData.h.

◆ m_BUNCH_SPACING

int BunchCrossingIntensityCondData::m_BUNCH_SPACING = 25
staticconstexpr

Definition at line 29 of file BunchCrossingIntensityCondData.h.

◆ m_headTailLength

const int BunchCrossingIntensityCondData::m_headTailLength = 300
staticprivate

Definition at line 105 of file BunchCrossingIntensityCondData.h.

◆ m_MAX_BCID

int BunchCrossingIntensityCondData::m_MAX_BCID =3564
staticconstexpr

Definition at line 28 of file BunchCrossingIntensityCondData.h.

◆ m_RunLB

unsigned long long BunchCrossingIntensityCondData::m_RunLB
private

Definition at line 104 of file BunchCrossingIntensityCondData.h.


The documentation for this class was generated from the following files: