ATLAS Offline Software
TileCosmicMuonCnv_p1.cxx
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // TileCosmicMuonCnv_p1.cxx
8 // Implementation file for class TileCosmicMuonCnv_p1
9 // Author: Aranzazu Ruiz <aranzazu.ruiz.martinez@cern.ch>
10 // Date: July 2008
12 
15 
16 
17 void TileCosmicMuonCnv_p1::transToPers(const TileCosmicMuon* transObj, TileCosmicMuon_p1* persObj, MsgStream &/*log*/) const {
18 
19  persObj->m_time = transObj->GetTime();
20  persObj->m_positionX = transObj->GetPositionX();
21  persObj->m_positionY = transObj->GetPositionY();
22  persObj->m_positionZ = transObj->GetPositionZ();
23  persObj->m_directionPhi = transObj->GetDirectionPhi();
24  persObj->m_directionTheta = transObj->GetDirectionTheta();
25  persObj->m_fitQuality = transObj->GetFitQuality();
26  persObj->m_fitNCells = transObj->GetFitNCells();
27 
28  size_t sz = transObj->GetNSamples();
29  persObj->m_pathTop.resize(sz);
30  persObj->m_pathBottom.resize(sz);
31  persObj->m_energyTop.resize(sz);
32  persObj->m_energyBottom.resize(sz);
33  for (size_t i = 0; i < sz; i++) {
34  persObj->m_pathTop[i] = transObj->GetPathTop(i);
35  persObj->m_pathBottom[i] = transObj->GetPathBottom(i);
36  persObj->m_energyTop[i] = transObj->GetEnergyTop(i);
37  persObj->m_energyBottom[i] = transObj->GetEnergyBottom(i);
38  }
39 
40  size_t ncells = transObj->GetTrackNCells();
41  persObj->m_trackCellHash.resize(ncells);
42  for (size_t i = 0; i < ncells; i++) {
43  persObj->m_trackCellHash[i] = transObj->GetTrackCellHash(i);
44  }
45 }
46 
47 
48 void TileCosmicMuonCnv_p1::persToTrans(const TileCosmicMuon_p1* persObj, TileCosmicMuon* transObj, MsgStream &/*log*/) const {
49 
50  transObj->SetTime (persObj->m_time);
51  transObj->SetPositionX (persObj->m_positionX);
52  transObj->SetPositionY (persObj->m_positionY);
53  transObj->SetPositionZ (persObj->m_positionZ);
54  transObj->SetDirectionPhi (persObj->m_directionPhi);
55  transObj->SetDirectionTheta (persObj->m_directionTheta);
56  transObj->SetFitQuality (persObj->m_fitQuality);
57  transObj->SetFitNCells (persObj->m_fitNCells);
58 
59  transObj->SetPathTop (std::vector<double> (persObj->m_pathTop.begin(),
60  persObj->m_pathTop.end()));
61 
62  transObj->SetPathBottom (std::vector<double> (persObj->m_pathBottom.begin(),
63  persObj->m_pathBottom.end()));
64 
65  transObj->SetEnergyTop (std::vector<double> (persObj->m_energyTop.begin(),
66  persObj->m_energyTop.end()));
67 
68  transObj->SetEnergyBottom (std::vector<double> (persObj->m_energyBottom.begin(),
69  persObj->m_energyBottom.end()));
70 
71  transObj->SetTrackCellHash (std::vector<IdentifierHash> (persObj->m_trackCellHash.begin(),
72  persObj->m_trackCellHash.end()));
73 
74  transObj->SetSegmentPath (std::vector<double>());
75  transObj->SetSegmentPartition (std::vector<int>());
76  transObj->SetSegmentModule (std::vector<int>());
77  transObj->SetSegmentSampling (std::vector<int>());
78 }
TileCosmicMuon_p1::m_positionY
float m_positionY
Y coordinate of point in track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon_p1.h:41
TileCosmicMuon_p1::m_energyBottom
std::vector< float > m_energyBottom
Vector with sum energy of cells close to track on bottom modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon_p1.h:55
TileCosmicMuon::GetDirectionPhi
double GetDirectionPhi() const
Definition: TileCosmicMuon.h:103
TileCosmicMuon::SetSegmentPath
void SetSegmentPath(const std::vector< double > &path)
Definition: TileCosmicMuon.h:69
fitman.sz
sz
Definition: fitman.py:527
TileCosmicMuon::GetFitQuality
double GetFitQuality() const
Definition: TileCosmicMuon.h:105
TileCosmicMuon
Class containing detailed results from TileMuonFitter.
Definition: TileCosmicMuon.h:35
TileCosmicMuon::GetNSamples
int GetNSamples() const
Definition: TileCosmicMuon.h:108
TileCosmicMuon::SetPositionX
void SetPositionX(double posx)
Definition: TileCosmicMuon.h:51
TileCosmicMuon_p1::m_fitNCells
int m_fitNCells
Number of cells used in fit.
Definition: TileCosmicMuon_p1.h:46
TileCosmicMuon_p1::m_positionX
float m_positionX
X coordinate of point in track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon_p1.h:40
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::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::SetPositionY
void SetPositionY(double posy)
Definition: TileCosmicMuon.h:52
TileCosmicMuon.h
TileCosmicMuon_p1::m_positionZ
float m_positionZ
Z coordinate of point in track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon_p1.h:42
TileCosmicMuon_p1::m_time
float m_time
Time of track at selected plane (y=0 for cosmics z=0 for beam)
Definition: TileCosmicMuon_p1.h:39
lumiFormat.i
int i
Definition: lumiFormat.py:92
TileCosmicMuon::SetDirectionPhi
void SetDirectionPhi(double phi)
Definition: TileCosmicMuon.h:54
TileCosmicMuon::SetPositionZ
void SetPositionZ(double posz)
Definition: TileCosmicMuon.h:53
TileCosmicMuonCnv_p1.h
TileCosmicMuon::SetSegmentPartition
void SetSegmentPartition(const std::vector< int > &partition)
Definition: TileCosmicMuon.h:71
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
TileCosmicMuonCnv_p1::persToTrans
virtual void persToTrans(const TileCosmicMuon_p1 *persObj, TileCosmicMuon *transObj, MsgStream &log) const override
Method creating the transient representation TileCosmicMuon from its persistent representation TileCo...
Definition: TileCosmicMuonCnv_p1.cxx:48
TileCosmicMuon::GetEnergyBottom
double GetEnergyBottom(int ind) const
Definition: TileCosmicMuon.h:113
TileCosmicMuon_p1::m_trackCellHash
std::vector< unsigned int > m_trackCellHash
Vector with list of Identifier Hash of cells close to track.
Definition: TileCosmicMuon_p1.h:58
TileCosmicMuon::GetEnergyTop
double GetEnergyTop(int ind) const
Definition: TileCosmicMuon.h:112
TileCosmicMuon_p1
Definition: TileCosmicMuon_p1.h:20
TileCosmicMuon_p1::m_directionPhi
float m_directionPhi
Phi angle of track direction.
Definition: TileCosmicMuon_p1.h:43
TileCosmicMuon_p1::m_directionTheta
float m_directionTheta
Theta angle of track direction.
Definition: TileCosmicMuon_p1.h:44
TileCosmicMuon::SetPathBottom
void SetPathBottom(const std::vector< double > &path)
Definition: TileCosmicMuon.h:61
TileCosmicMuon::SetFitNCells
void SetFitNCells(int ncells)
Definition: TileCosmicMuon.h:57
TileCosmicMuon::GetPositionX
double GetPositionX() const
Definition: TileCosmicMuon.h:100
TileCosmicMuon_p1::m_fitQuality
float m_fitQuality
Fit parameter: 0= no fit; (Hough) 1=fit ok; (Minuit) >0 chi-square.
Definition: TileCosmicMuon_p1.h:45
TileCosmicMuon_p1::m_energyTop
std::vector< float > m_energyTop
Vector with sum energy of cells close to track on top modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon_p1.h:53
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
TileCosmicMuonCnv_p1::transToPers
virtual void transToPers(const TileCosmicMuon *transObj, TileCosmicMuon_p1 *persObj, MsgStream &log) const override
Method creating the persistent representation TileCosmicMuon_p1 from its transient representation Til...
Definition: TileCosmicMuonCnv_p1.cxx:17
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
TileCosmicMuon_p1::m_pathTop
std::vector< float > m_pathTop
Vector with length of track within Tile on top modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon_p1.h:49
TileCosmicMuon::GetPositionZ
double GetPositionZ() const
Definition: TileCosmicMuon.h:102
TileCosmicMuon_p1::m_pathBottom
std::vector< float > m_pathBottom
Vector with length of track within Tile on bottom modules [0]:sampling A; [1]: BC; [2]: D.
Definition: TileCosmicMuon_p1.h:51
TileCosmicMuon::SetTime
void SetTime(double time)
Setters.
Definition: TileCosmicMuon.h:50