ATLAS Offline Software
Loading...
Searching...
No Matches
BeamSpotData.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4#ifndef BEAMSPOTCONDITIONSDATA_BEAMSPOTDATA_H
5#define BEAMSPOTCONDITIONSDATA_BEAMSPOTDATA_H
6
9
11
12#ifndef SIMULATIONBASE
13#include "VxVertex/RecVertex.h"
14#endif
15
16namespace InDet
17{
18
19 class BeamSpotData final //Class declared as final because no virtual destructor is used
20 //if you want to inherit, remove final keyword and add virtual destructor
21 {
22 public:
23 BeamSpotData(int status, float posX, float posY, float posZ,
24 float sigmaX, float sigmaY, float sigmaZ,
25 float tiltX, float tiltY, float sigmaXY);
26
27 BeamSpotData() = delete; //Forbid undefined behaviour
28
29 const Amg::Vector3D& beamPos() const noexcept;
30
36 float beamSigma(int i) const noexcept;
37
38 float beamSigmaXY() const noexcept;
39
45 float beamTilt(int i) const noexcept;
46
47 int beamStatus() const noexcept;
48
49#ifndef SIMULATIONBASE
50 const Trk::RecVertex& beamVtx() const noexcept;
51#endif
52
53
54 private:
55
57
58 std::array<float, 6> m_errPar;
59
61
62#ifndef SIMULATIONBASE
64#endif
65
66 };
67
68 inline const Amg::Vector3D& BeamSpotData::beamPos() const noexcept { return m_beamPos; }
69
70 inline float BeamSpotData::beamSigma(int i) const noexcept { return m_errPar[i]; }
71
72 inline float BeamSpotData::beamSigmaXY() const noexcept { return m_errPar[5]; }
73
74 inline float BeamSpotData::beamTilt(int i) const noexcept { return m_errPar[3+i]; }
75
76 inline int BeamSpotData::beamStatus() const noexcept { return m_status; }
77
78#ifndef SIMULATIONBASE
79 inline const Trk::RecVertex& BeamSpotData::beamVtx() const noexcept { return m_vertex; }
80#endif
81
82}
83
85CONDCONT_DEF(InDet::BeamSpotData,34275740);
86
87
88#endif
Hold mappings of ranges to condition objects.
#define CONDCONT_DEF(...)
Definition CondCont.h:1413
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
float beamTilt(int i) const noexcept
Returns the beam sigma for the i+3-th error matrix element (the 'tilt')
float beamSigma(int i) const noexcept
Returns the beam sigma for the i-th error matrix element.
std::array< float, 6 > m_errPar
int beamStatus() const noexcept
const Trk::RecVertex & beamVtx() const noexcept
Amg::Vector3D m_beamPos
Trk::RecVertex m_vertex
BeamSpotData(int status, float posX, float posY, float posZ, float sigmaX, float sigmaY, float sigmaZ, float tiltX, float tiltY, float sigmaXY)
const Amg::Vector3D & beamPos() const noexcept
float beamSigmaXY() const noexcept
Trk::RecVertex inherits from Trk::Vertex.
Definition RecVertex.h:44
Eigen::Matrix< double, 3, 1 > Vector3D
Primary Vertex Finder.