ATLAS Offline Software
TileCosmicMuon.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TILEEVENT_TILECOSMICMUON
6 #define TILEEVENT_TILECOSMICMUON
7 // //
9 // Information on TileCosmicAlgs/TileMuonFitter results
10 // //
12 
14 #include "AthenaKernel/CLASS_DEF.h"
15 #include <vector>
16 
35 {
36  public:
37 
43 
44  std::string whoami (void) const { return "TileCosmicMuon"; }
45  operator std::string() const;
46 
47 
48 
50  inline void SetTime(double time) {m_time = time;}
51  inline void SetPositionX(double posx) {m_positionX = posx;}
52  inline void SetPositionY(double posy) {m_positionY = posy;}
53  inline void SetPositionZ(double posz) {m_positionZ = posz;}
54  inline void SetDirectionPhi(double phi) {m_directionPhi = phi;}
55  inline void SetDirectionTheta(double theta) {m_directionTheta = theta;}
56  inline void SetFitQuality(double quality) {m_fitQuality = quality;}
57  inline void SetFitNCells(int ncells) {m_fitNCells = ncells;}
58 
59  inline void SetPathTop(const std::vector<double>& path)
60  {m_pathTop = path;}
61  inline void SetPathBottom(const std::vector<double>& path)
62  {m_pathBottom = path;}
63  inline void SetEnergyTop(const std::vector<double>& energy)
64  {m_energyTop = energy;}
65  inline void SetEnergyBottom(const std::vector<double>& energy)
67  inline void SetTrackCellHash(const std::vector<IdentifierHash>& cells)
69  inline void SetSegmentPath(const std::vector<double>& path)
70  {m_segmentPath = path;}
71  inline void SetSegmentPartition(const std::vector<int>& partition)
73  inline void SetSegmentModule(const std::vector<int>& module)
75  inline void SetSegmentSampling(const std::vector<int>& sampling)
76  {m_segmentSampling = sampling;}
77 
78  inline void SetPathTop(std::vector<double>&& path)
79  {m_pathTop = std::move(path);}
80  inline void SetPathBottom(std::vector<double>&& path)
81  {m_pathBottom = std::move(path);}
82  inline void SetEnergyTop(std::vector<double>&& energy)
83  {m_energyTop = std::move(energy);}
84  inline void SetEnergyBottom(std::vector<double>&& energy)
85  {m_energyBottom = std::move(energy);}
86  inline void SetTrackCellHash(std::vector<IdentifierHash>&& cells)
87  {m_trackCellHash = std::move(cells);}
88  inline void SetSegmentPath(std::vector<double>&& path)
89  {m_segmentPath = std::move(path);}
90  inline void SetSegmentPartition(std::vector<int>&& partition)
91  {m_segmentPartition = std::move(partition);}
92  inline void SetSegmentModule(std::vector<int>&& module)
93  {m_segmentModule = std::move(module);}
94  inline void SetSegmentSampling(std::vector<int>&& sampling)
95  {m_segmentSampling = std::move(sampling);}
96 
97 
99  double GetTime() const {return m_time;}
100  double GetPositionX() const {return m_positionX;}
101  double GetPositionY() const {return m_positionY;}
102  double GetPositionZ() const {return m_positionZ;}
103  double GetDirectionPhi() const {return m_directionPhi;}
104  double GetDirectionTheta() const {return m_directionTheta;}
105  double GetFitQuality() const {return m_fitQuality;}
106  int GetFitNCells() const {return m_fitNCells;}
107  int GetTrackNCells() const {return m_trackCellHash.size();}
108  int GetNSamples() const {return m_pathTop.size();}
109  int GetNSegments() const {return m_segmentPath.size();}
110  double GetPathTop(int ind) const {return m_pathTop[ind];}
111  double GetPathBottom(int ind) const {return m_pathBottom[ind];}
112  double GetEnergyTop(int ind) const {return m_energyTop[ind];}
113  double GetEnergyBottom(int ind) const {return m_energyBottom[ind];}
115  double GetSegmentPath(int ind) const {return m_segmentPath[ind];}
116  int GetSegmentPartition(int ind) const {return m_segmentPartition[ind];}
117  int GetSegmentModule(int ind) const {return m_segmentModule[ind];}
118  int GetSegmentSampling(int ind) const {return m_segmentSampling[ind];}
119 
121  double GetFullPath() const;
123  double GetFullEnergy() const;
124 
125  private:
126 
127  double m_time;
128  double m_positionX;
129  double m_positionY;
130  double m_positionZ;
131  double m_directionPhi;
133  double m_fitQuality;
135 
137  std::vector<double> m_pathTop;
139  std::vector<double> m_pathBottom;
141  std::vector<double> m_energyTop;
143  std::vector<double> m_energyBottom;
144 
146  std::vector<IdentifierHash> m_trackCellHash;
147 
149  std::vector<double> m_segmentPath;
151  std::vector<int> m_segmentPartition;
153  std::vector<int> m_segmentModule;
155  std::vector<int> m_segmentSampling;
156 
157 
158 };
159 
160 CLASS_DEF( TileCosmicMuon , 2950 , 0 )
161 #endif
RunTileCalibRec.cells
cells
Definition: RunTileCalibRec.py:271
TileCosmicMuon::SetTrackCellHash
void SetTrackCellHash(std::vector< IdentifierHash > &&cells)
Definition: TileCosmicMuon.h:86
TileCosmicMuon::GetDirectionPhi
double GetDirectionPhi() const
Definition: TileCosmicMuon.h:103
TileCosmicMuon::SetSegmentPath
void SetSegmentPath(const std::vector< double > &path)
Definition: TileCosmicMuon.h:69
TileCosmicMuon::GetFitQuality
double GetFitQuality() const
Definition: TileCosmicMuon.h:105
TileCosmicMuon::m_energyBottom
std::vector< double > m_energyBottom
Vector with sum energy of cells close to track on bottom modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon.h:143
athena.path
path
python interpreter configuration --------------------------------------—
Definition: athena.py:126
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
TileCosmicMuon
Class containing detailed results from TileMuonFitter.
Definition: TileCosmicMuon.h:35
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
TileCosmicMuon::SetEnergyTop
void SetEnergyTop(std::vector< double > &&energy)
Definition: TileCosmicMuon.h:82
TileCosmicMuon::GetNSamples
int GetNSamples() const
Definition: TileCosmicMuon.h:108
TileCosmicMuon::GetSegmentModule
int GetSegmentModule(int ind) const
Definition: TileCosmicMuon.h:117
TileCosmicMuon::SetPositionX
void SetPositionX(double posx)
Definition: TileCosmicMuon.h:51
TileCosmicMuon::m_positionZ
double m_positionZ
Z coordinate of point in track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon.h:130
theta
Scalar theta() const
theta method
Definition: AmgMatrixBasePlugin.h:71
TileCosmicMuon::m_time
double m_time
Time of track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon.h:127
TileCosmicMuon::m_segmentPartition
std::vector< int > m_segmentPartition
Vector with segment partition.
Definition: TileCosmicMuon.h:151
TileCosmicMuon::SetSegmentSampling
void SetSegmentSampling(const std::vector< int > &sampling)
Definition: TileCosmicMuon.h:75
TileCosmicMuon::SetEnergyBottom
void SetEnergyBottom(const std::vector< double > &energy)
Definition: TileCosmicMuon.h:65
TileCosmicMuon::GetPathBottom
double GetPathBottom(int ind) const
Definition: TileCosmicMuon.h:111
TileCosmicMuon::m_pathTop
std::vector< double > m_pathTop
Vector with length of track within Tile on top modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon.h:137
TileCosmicMuon::GetTime
double GetTime() const
Getters.
Definition: TileCosmicMuon.h:99
TileCosmicMuon::SetEnergyTop
void SetEnergyTop(const std::vector< double > &energy)
Definition: TileCosmicMuon.h:63
TileCosmicMuon::GetTrackCellHash
IdentifierHash GetTrackCellHash(int ind) const
Definition: TileCosmicMuon.h:114
TileCosmicMuon::m_positionX
double m_positionX
X coordinate of point in track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon.h:128
TileCosmicMuon::SetPositionY
void SetPositionY(double posy)
Definition: TileCosmicMuon.h:52
TileCosmicMuon::SetSegmentPartition
void SetSegmentPartition(std::vector< int > &&partition)
Definition: TileCosmicMuon.h:90
python.PyAthena.module
module
Definition: PyAthena.py:134
TileCosmicMuon::m_segmentModule
std::vector< int > m_segmentModule
Vector with segment module.
Definition: TileCosmicMuon.h:153
TileCosmicMuon::m_fitQuality
double m_fitQuality
Fit parameter: 0= no fit; (Hough) 1=fit ok; (Minuit) >0 chi-square.
Definition: TileCosmicMuon.h:133
TileCosmicMuon::GetSegmentPath
double GetSegmentPath(int ind) const
Definition: TileCosmicMuon.h:115
ParticleGun_FastCalo_ChargeFlip_Config.energy
energy
Definition: ParticleGun_FastCalo_ChargeFlip_Config.py:78
TileCosmicMuon::SetSegmentPath
void SetSegmentPath(std::vector< double > &&path)
Definition: TileCosmicMuon.h:88
TileCosmicMuon::SetPathBottom
void SetPathBottom(std::vector< double > &&path)
Definition: TileCosmicMuon.h:80
TileCosmicMuon::TileCosmicMuon
TileCosmicMuon()
Constructor.
Definition: TileCosmicMuon.h:39
TileCosmicMuon::SetDirectionPhi
void SetDirectionPhi(double phi)
Definition: TileCosmicMuon.h:54
TileCosmicMuon::m_pathBottom
std::vector< double > m_pathBottom
Vector with length of track within Tile on bottom modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon.h:139
TileCosmicMuon::GetSegmentSampling
int GetSegmentSampling(int ind) const
Definition: TileCosmicMuon.h:118
TileCosmicMuon::SetPositionZ
void SetPositionZ(double posz)
Definition: TileCosmicMuon.h:53
TileCosmicMuon::SetSegmentPartition
void SetSegmentPartition(const std::vector< int > &partition)
Definition: TileCosmicMuon.h:71
TileCosmicMuon::SetEnergyBottom
void SetEnergyBottom(std::vector< double > &&energy)
Definition: TileCosmicMuon.h:84
TileCosmicMuon::m_positionY
double m_positionY
Y coordinate of point in track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon.h:129
TileCosmicMuon::GetTrackNCells
int GetTrackNCells() const
Definition: TileCosmicMuon.h:107
TileCosmicMuon::GetPathTop
double GetPathTop(int ind) const
Definition: TileCosmicMuon.h:110
TileCosmicMuon::SetSegmentModule
void SetSegmentModule(const std::vector< int > &module)
Definition: TileCosmicMuon.h:73
TileCosmicMuon::GetDirectionTheta
double GetDirectionTheta() const
Definition: TileCosmicMuon.h:104
TileCosmicMuon::m_energyTop
std::vector< double > m_energyTop
Vector with sum energy of cells close to track on top modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon.h:141
xAOD::double
double
Definition: CompositeParticle_v1.cxx:159
TileCosmicMuon::whoami
std::string whoami(void) const
Definition: TileCosmicMuon.h:44
TileCosmicMuon::m_segmentPath
std::vector< double > m_segmentPath
Vector with length of track within Tile on a given segment.
Definition: TileCosmicMuon.h:149
TileCosmicMuon::GetEnergyBottom
double GetEnergyBottom(int ind) const
Definition: TileCosmicMuon.h:113
TileCosmicMuon::GetFullEnergy
double GetFullEnergy() const
Sum up components of m_energyTop and m_energyBottom: full energy in track in Tile.
Definition: TileCosmicMuon.cxx:28
TileCosmicMuon::GetEnergyTop
double GetEnergyTop(int ind) const
Definition: TileCosmicMuon.h:112
TileCosmicMuon::GetNSegments
int GetNSegments() const
Definition: TileCosmicMuon.h:109
IdentifierHash.h
TileCosmicMuon::SetPathBottom
void SetPathBottom(const std::vector< double > &path)
Definition: TileCosmicMuon.h:61
TileCosmicMuon::SetFitNCells
void SetFitNCells(int ncells)
Definition: TileCosmicMuon.h:57
TileCosmicMuon::m_trackCellHash
std::vector< IdentifierHash > m_trackCellHash
Vector with list of Identifier Hash of cells close to track.
Definition: TileCosmicMuon.h:146
TileCosmicMuon::SetSegmentModule
void SetSegmentModule(std::vector< int > &&module)
Definition: TileCosmicMuon.h:92
TileCosmicMuon::GetPositionX
double GetPositionX() const
Definition: TileCosmicMuon.h:100
TileCosmicMuon::GetFullPath
double GetFullPath() const
Sum up components of m_pathTop and m_pathBottom: full path in Tile.
Definition: TileCosmicMuon.cxx:16
TileCosmicMuon::SetPathTop
void SetPathTop(std::vector< double > &&path)
Definition: TileCosmicMuon.h:78
CaloSwCorrections.time
def time(flags, cells_name, *args, **kw)
Definition: CaloSwCorrections.py:242
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
StateLessPT_NewConfig.partition
partition
Definition: StateLessPT_NewConfig.py:49
TileCosmicMuon::m_directionTheta
double m_directionTheta
Theta angle of track direction.
Definition: TileCosmicMuon.h:132
TileCosmicMuon::SetDirectionTheta
void SetDirectionTheta(double theta)
Definition: TileCosmicMuon.h:55
TileCosmicMuon::GetFitNCells
int GetFitNCells() const
Definition: TileCosmicMuon.h:106
TileCosmicMuon::SetTrackCellHash
void SetTrackCellHash(const std::vector< IdentifierHash > &cells)
Definition: TileCosmicMuon.h:67
TileCosmicMuon::SetFitQuality
void SetFitQuality(double quality)
Definition: TileCosmicMuon.h:56
TileCosmicMuon::SetPathTop
void SetPathTop(const std::vector< double > &path)
Definition: TileCosmicMuon.h:59
TileCosmicMuon::GetPositionY
double GetPositionY() const
Definition: TileCosmicMuon.h:101
IdentifierHash
Definition: IdentifierHash.h:38
TileCosmicMuon::m_fitNCells
int m_fitNCells
Number of cells used in fit.
Definition: TileCosmicMuon.h:134
TileCosmicMuon::m_directionPhi
double m_directionPhi
Phi angle of track direction.
Definition: TileCosmicMuon.h:131
TileCosmicMuon::GetSegmentPartition
int GetSegmentPartition(int ind) const
Definition: TileCosmicMuon.h:116
CLASS_DEF.h
macros to associate a CLID to a type
TileCosmicMuon::m_segmentSampling
std::vector< int > m_segmentSampling
Vector with segment sampling.
Definition: TileCosmicMuon.h:155
checkFileSG.ind
list ind
Definition: checkFileSG.py:118
TileCosmicMuon::GetPositionZ
double GetPositionZ() const
Definition: TileCosmicMuon.h:102
TileCosmicMuon::SetTime
void SetTime(double time)
Setters.
Definition: TileCosmicMuon.h:50
TileCosmicMuon::SetSegmentSampling
void SetSegmentSampling(std::vector< int > &&sampling)
Definition: TileCosmicMuon.h:94