10#include "EmcSim/BesEmcHit.hh"
12#include "G4UnitsTable.hh"
24 TotalEdepCrystal = 0.;
25 TotalTrackLengthCrystal = 0.;
27 TrackLengthCrystal = 0.;
29 PositionCrystal = G4ThreeVector( 0, 0, 0 );
36 momentum = G4ThreeVector( 0, 0, 0 );
46 EdepCrystal = right.EdepCrystal;
47 TrackLengthCrystal = right.TrackLengthCrystal;
48 EdepCasing = right.EdepCasing;
49 PositionCrystal = right.PositionCrystal;
50 TimeCrystal = right.TimeCrystal;
51 PartId = right.PartId;
52 NumTheta = right.NumTheta;
53 NumPhi = right.NumPhi;
54 trackIndex = right.trackIndex;
55 g4Index = right.g4Index;
56 momentum = right.momentum;
62 EdepCrystal = right.EdepCrystal;
63 TrackLengthCrystal = right.TrackLengthCrystal;
64 EdepCasing = right.EdepCasing;
65 PositionCrystal = right.PositionCrystal;
66 TimeCrystal = right.TimeCrystal;
67 PartId = right.PartId;
68 NumTheta = right.NumTheta;
69 NumPhi = right.NumPhi;
70 trackIndex = right.trackIndex;
71 g4Index = right.g4Index;
72 momentum = right.momentum;
79 return (
this == &right ) ? 1 : 0;
89 if ( verboseLevel > 0 )
90 G4cout <<
"Hit in crystal:" << NumTheta <<
"," << NumPhi << G4endl
91 <<
"Energy deposited:" << G4BestUnit( EdepCrystal,
"Energy" ) << G4endl;
92 if ( verboseLevel > 1 )
93 G4cout <<
"Hit time :" << G4BestUnit( TimeCrystal,
"Time" ) << G4endl
94 <<
" position :" << G4BestUnit( PositionCrystal,
"Length" ) << G4endl;
95 if ( verboseLevel > 2 )
96 G4cout <<
"Track length :" << G4BestUnit( TrackLengthCrystal,
"Length" ) << G4endl;
100 G4cout <<
"time: " << TimeCrystal <<
" edep: " << EdepCrystal << G4endl;
110 m_particleName = G4String();
113 m_momentum = G4ThreeVector( 0, 0, 0 );
114 m_position = G4ThreeVector( 0, 0, 0 );
124 std::map<Identifier, G4double>::const_iterator iHitMap;
125 if (
this != &right )
127 for ( iHitMap = right.
Begin(); iHitMap != right.
End(); iHitMap++ )
128 {
Insert( iHitMap->first, iHitMap->second ); }
130 m_identify = right.m_identify;
131 m_trackIndex = right.m_trackIndex;
132 m_g4TrackId = right.m_g4TrackId;
133 m_hitEmc = right.m_hitEmc;
134 m_PDGCode = right.m_PDGCode;
135 m_PDGCharge = right.m_PDGCharge;
136 m_particleName = right.m_particleName;
137 m_edep = right.m_edep;
138 m_time = right.m_time;
139 m_momentum = right.m_momentum;
140 m_position = right.m_position;
147 G4cout <<
"Id: " << m_identify <<
"\tTrack Index: " << m_trackIndex
148 <<
"\tG4 Track Id: " << m_g4TrackId <<
"\tHit Emc: " << m_hitEmc
149 <<
"\tTotal Energy: " << m_edep <<
"\nPDGCode: " << m_PDGCode
150 <<
"\tCharge: " << m_PDGCharge <<
"\tParticle Name: " << m_particleName
151 <<
"\nGloble Time: " << m_time <<
"\tMomentum: " << m_momentum.mag()
152 <<
"\tPosition: " << m_position << G4endl;
154 std::map<Identifier, G4double>::iterator iHitMap;
155 for ( iHitMap = m_hitMap.begin(); iHitMap != m_hitMap.end(); iHitMap++ )
156 { G4cout << iHitMap->first <<
"\t" << iHitMap->second << G4endl; }
160 return m_hitMap.begin();
164 return m_hitMap.end();
168 return m_hitMap.find(
id );
G4Allocator< BesEmcTruthHit > BesEmcTruthHitAllocator
G4Allocator< BesEmcHit > BesEmcHitAllocator
************Class m_ypar INTEGER m_KeyWgt INTEGER m_KeyIHVP INTEGER m_KeyGPS INTEGER m_IsBeamPolarized INTEGER m_EvtGenInterface DOUBLE PRECISION m_Emin DOUBLE PRECISION m_sphot DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_q2 DOUBLE PRECISION m_PolBeam2 DOUBLE PRECISION m_xErrPb *COMMON c_KK2f $ !CMS energy average $ !Spin Polarization vector first beam $ !Spin Polarization vector second beam $ !Beam energy spread[GeV] $ !minimum hadronization energy[GeV] $ !input READ never touch them !$ !debug facility $ !maximum weight $ !inverse alfaQED $ !minimum real photon energy
int operator==(const BesEmcHit &) const
const BesEmcHit & operator=(const BesEmcHit &)
void AddEHit(Identifier, G4double)
std::map< Identifier, G4double >::const_iterator End() const
std::map< Identifier, G4double >::const_iterator Find(Identifier) const
const BesEmcTruthHit & operator=(const BesEmcTruthHit &)
void Insert(Identifier, G4double)
G4double GetEHit(Identifier)
std::map< Identifier, G4double >::const_iterator Begin() const
virtual ~BesEmcTruthHit()