#include <LCDG4CalHit.hh>
Inheritance diagram for LCDG4CalHit:


Public Member Functions | |
| LCDG4CalHit () | |
| ~LCDG4CalHit () | |
| LCDG4CalHit (const LCDG4CalHit &right) | |
| const LCDG4CalHit & | operator= (const LCDG4CalHit &right) |
| bool | operator== (const LCDG4CalHit &right) const |
| void * | operator new (size_t) |
| void | operator delete (void *aHit) |
| void | Draw () |
| void | Print () |
| void | SetLayer (const G4int layer) |
| G4int | GetLayer () const |
| void | SetSystem (const G4int sysNo) |
| G4int | GetSystem () const |
| void | SetBarEnd (const G4int barend) |
| G4int | GetBarEnd () const |
| void | SetNorth (const G4int north) |
| G4int | GetNorth () const |
| void | SetPhi (const G4int phi) |
| G4int | GetPhi () const |
| void | SetTheta (const G4int theta) |
| G4int | GetTheta () const |
| void | SetEdep (const G4double de) |
| G4double | GetEdep () const |
| void | SetEdepAbs (const G4double de) |
| G4double | GetEdepAbs () const |
| void | SetPos (const G4ThreeVector &xyz) |
| G4ThreeVector | GetPos () const |
| G4int | GetNMC () const |
| G4int | GetTrkID (G4int ith) const |
| G4double | GetEMC (G4int ith) const |
| G4double | GetTimeMC (G4int ith) const |
| unsigned int | GetCellID () const |
| unsigned int | sioTagToLcioTag (unsigned int sioTag) const |
| G4int | AddLayerLog (G4LogicalVolume *g4vxdlog, G4int startlayerNo) |
| G4int | AddMcPart (G4int mcidx, G4double emc, G4double tmc) |
| void | AddMcPartAbs (G4double emc) |
Private Attributes | |
| G4int | m_layer |
| G4int | m_sysNo |
| G4int | m_barend |
| G4int | m_north |
| G4int | m_phi |
| G4int | m_theta |
| G4float | m_edep |
| G4float | m_edepabs |
| G4ThreeVector | m_pos |
| G4int | m_nmc |
| std::vector< G4int > * | m_trkid |
| std::vector< G4double > * | m_emc |
| std::vector< G4double > * | m_tmc |
|
|
Definition at line 13 of file LCDG4CalHit.cc. References m_edep, m_edepabs, m_emc, m_nmc, m_tmc, and m_trkid.
00014 : G4VHit(), m_layer(-1), m_sysNo(-1), m_barend(-1), m_phi(-1), m_theta(-1) 00015 { 00016 m_nmc=0; 00017 m_edep=0; 00018 m_edepabs=0; 00019 00020 m_trkid=new std::vector<G4int>; 00021 m_trkid->clear(); 00022 m_emc =new std::vector<G4double>; 00023 m_emc->clear(); 00024 m_tmc =new std::vector<G4double>; 00025 m_tmc->clear(); 00026 } |
|
|
Definition at line 31 of file LCDG4CalHit.cc. References m_emc, m_tmc, and m_trkid.
|
|
|
Definition at line 50 of file LCDG4CalHit.cc. References m_barend, m_edep, m_edepabs, m_emc, m_layer, m_nmc, m_phi, m_pos, m_sysNo, m_theta, and m_trkid.
00050 : G4VHit() { 00051 m_layer = right.m_layer; 00052 m_sysNo = right.m_sysNo; 00053 m_barend = right.m_barend; 00054 m_edep = right.m_edep; 00055 m_edepabs= right.m_edepabs; 00056 m_theta = right.m_theta; 00057 m_phi = right.m_phi; 00058 m_pos = right.m_pos; 00059 00060 m_trkid=new std::vector<G4int>; 00061 m_emc =new std::vector<G4double>; 00062 m_trkid->clear(); 00063 m_emc->clear(); 00064 int imc=0; 00065 m_nmc=right.m_nmc; 00066 for(imc=0 ; imc < right.m_nmc ; imc++) { 00067 m_trkid->push_back((*right.m_trkid)[imc]); 00068 m_emc->push_back((*right.m_emc)[imc]); 00069 } 00070 } |
|
||||||||||||
|
|
|
||||||||||||||||
|
Definition at line 100 of file LCDG4CalHit.cc. References m_edep, m_emc, m_nmc, m_tmc, and m_trkid. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00100 {
00101 int flg_same=0;
00102 int imc=0;
00103 for (imc=0 ; imc < m_nmc ; imc++) {
00104 if ((*m_trkid)[imc] == mcidx) {
00105 flg_same=imc+1;
00106 break;
00107 }
00108 }
00109
00110 m_edep+=emc;
00111 if (flg_same) {
00112 (*m_emc)[flg_same-1] += emc;
00113 } else {
00114 m_nmc++;
00115 m_trkid->push_back(mcidx);
00116 m_emc->push_back(emc);
00117 m_tmc->push_back(tmc);
00118 }
00119
00120 return m_nmc;
00121 }
|
|
|
Definition at line 88 of file LCDG4CalHit.hh. References m_edepabs. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00088 { m_edepabs += emc; }
|
|
|
Definition at line 163 of file LCDG4CalHit.cc. References m_pos.
00163 {
00164 G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance();
00165 if(pVVisManager) {
00166 G4Circle circle(m_pos);
00167 circle.SetScreenSize(1.0);
00168 //circle.SetScreenSize(0.04);
00169 circle.SetFillStyle(G4Circle::filled);
00170 G4Colour colour(1.0,0.0,1.0); // Magenta
00171 G4VisAttributes attribs(colour);
00172 circle.SetVisAttributes(attribs);
00173 pVVisManager->Draw(circle);
00174 }
00175 }
|
|
|
Definition at line 44 of file LCDG4CalHit.hh. References m_barend.
00044 { return m_barend; }
|
|
|
Definition at line 141 of file LCDG4CalHit.cc. References LCDtowerID::GetTag(), m_layer, m_phi, m_sysNo, m_theta, LCDtowerID::SetLayer(), LCDtowerID::SetPhi(), LCDtowerID::SetSystem(), LCDtowerID::SetTheta(), and sioTagToLcioTag(). Referenced by LCDG4LcioHelper::getCalHitLcio().
00141 {
00142 LCDtowerID towerID(0);
00143 towerID.SetTheta(m_theta);
00144 towerID.SetPhi(m_phi);
00145 towerID.SetLayer(m_layer);
00146 towerID.SetSystem(m_sysNo);
00147 unsigned int sioTag = towerID.GetTag();
00148 // convert to LCIO format
00149 return sioTagToLcioTag( sioTag );
00150 }
|
|
|
Definition at line 60 of file LCDG4CalHit.hh. References m_edep. Referenced by LCDG4EventAction::EndOfEventAction(), and LCDG4CalSD::ProcessHits().
00060 { return m_edep; }
|
|
|
Definition at line 64 of file LCDG4CalHit.hh. References m_edepabs. Referenced by LCDG4EventAction::EndOfEventAction(), and LCDG4CalSD::ProcessHits().
00064 { return m_edepabs; }
|
|
|
Definition at line 75 of file LCDG4CalHit.hh. Referenced by LCDG4EventAction::EndOfEventAction(), and LCDG4LcioHelper::getCalHitLcio().
00075 {return (*m_emc)[ith];}
|
|
|
Definition at line 36 of file LCDG4CalHit.hh. References m_layer. Referenced by LCDG4EventAction::EndOfEventAction().
00036 { return m_layer; }
|
|
|
Definition at line 71 of file LCDG4CalHit.hh. References m_nmc. Referenced by LCDG4EventAction::EndOfEventAction(), and LCDG4LcioHelper::getCalHitLcio().
00071 {return m_nmc;}
|
|
|
Definition at line 48 of file LCDG4CalHit.hh. References m_north.
00048 { return m_north; }
|
|
|
Definition at line 52 of file LCDG4CalHit.hh. References m_phi. Referenced by LCDG4EventAction::EndOfEventAction().
00052 { return m_phi; }
|
|
|
Definition at line 69 of file LCDG4CalHit.hh. References m_pos. Referenced by LCDG4LcioHelper::getCalHitLcio().
00069 { return m_pos; }
|
|
|
Definition at line 40 of file LCDG4CalHit.hh. References m_sysNo. Referenced by LCDG4EventAction::EndOfEventAction().
00040 { return m_sysNo; }
|
|
|
Definition at line 56 of file LCDG4CalHit.hh. References m_theta. Referenced by LCDG4EventAction::EndOfEventAction().
00056 { return m_theta; }
|
|
|
Definition at line 77 of file LCDG4CalHit.hh. Referenced by LCDG4LcioHelper::getCalHitLcio().
00077 {return (*m_tmc)[ith];}
|
|
|
Definition at line 73 of file LCDG4CalHit.hh. Referenced by LCDG4EventAction::EndOfEventAction(), and LCDG4LcioHelper::getCalHitLcio().
00073 {return (*m_trkid)[ith];}
|
|
|
Definition at line 128 of file LCDG4CalHit.hh. References LCDG4CalHitAllocator.
00128 {
00129 LCDG4CalHitAllocator.FreeSingle((LCDG4CalHit*) aHit);
00130 }
|
|
|
Definition at line 122 of file LCDG4CalHit.hh. References LCDG4CalHitAllocator.
00122 {
00123 void *aHit;
00124 aHit = (void *) LCDG4CalHitAllocator.MallocSingle();
00125 return aHit;
00126 }
|
|
|
Definition at line 75 of file LCDG4CalHit.cc. References m_barend, m_edep, m_edepabs, m_emc, m_layer, m_nmc, m_phi, m_pos, m_sysNo, m_theta, and m_trkid.
00075 {
00076 m_layer = right.m_layer;
00077 m_sysNo = right.m_sysNo;
00078 m_barend = right.m_barend;
00079 m_edep = right.m_edep;
00080 m_edepabs= right.m_edepabs;
00081 m_theta = right.m_theta;
00082 m_phi = right.m_phi;
00083 m_pos = right.m_pos;
00084
00085 int imc=0;
00086 m_trkid->clear();
00087 m_emc->clear();
00088 m_nmc=right.m_nmc;
00089 for(imc=0 ; imc < right.m_nmc ; imc++) {
00090 m_trkid->push_back((*right.m_trkid)[imc]);
00091 m_emc->push_back((*right.m_emc)[imc]);
00092 }
00093 return *this;
00094 }
|
|
|
Definition at line 126 of file LCDG4CalHit.cc. References m_barend, m_layer, m_phi, m_sysNo, and m_theta.
00126 {
00127 if(m_layer!=right.m_layer) return false;
00128 if(m_sysNo!=right.m_sysNo) return false;
00129 if(m_barend!=m_barend) return false;
00130 if(m_phi!=m_phi) return false;
00131 if(m_theta!=m_theta) return false;
00132 // if(m_edep!=m_edep) return false;
00133 // if(m_edepabs!=m_edepabs) return false;
00134
00135 // G4int m_nmc;
00136 // std::vector<G4int> *m_trkid;
00137 // std::vector<G4double> *m_emc;
00138 return true;
00139 }
|
|
|
Definition at line 180 of file LCDG4CalHit.cc. References m_barend, m_edep, m_layer, m_phi, m_sysNo, and m_theta.
|
|
|
Definition at line 42 of file LCDG4CalHit.hh. References m_barend. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00042 { m_barend = barend; }
|
|
|
Definition at line 58 of file LCDG4CalHit.hh. References m_edep.
00058 { m_edep = de; }
|
|
|
Definition at line 62 of file LCDG4CalHit.hh. References m_edepabs.
00062 { m_edepabs = de; }
|
|
|
Definition at line 34 of file LCDG4CalHit.hh. References m_layer. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00034 { m_layer = layer; }
|
|
|
Definition at line 46 of file LCDG4CalHit.hh. References m_north. Referenced by LCDG4CalSD::ProcessHits().
00046 { m_north = north; }
|
|
|
Definition at line 50 of file LCDG4CalHit.hh. References m_phi. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00050 { m_phi = phi; }
|
|
|
Definition at line 67 of file LCDG4CalHit.hh. References m_pos. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00067 { m_pos = xyz; }
|
|
|
Definition at line 38 of file LCDG4CalHit.hh. References m_sysNo. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00038 { m_sysNo = sysNo; }
|
|
|
Definition at line 54 of file LCDG4CalHit.hh. References m_theta. Referenced by LCDG4MuonSD::ProcessHits(), LCDG4LumSD::ProcessHits(), and LCDG4CalSD::ProcessHits().
00054 { m_theta = theta; }
|
|
|
Definition at line 152 of file LCDG4CalHit.cc. Referenced by GetCellID().
00152 {
00153 // Left-most four bits: ABCD (sio) -> DABC (lcio)
00154 unsigned lcioTag = sioTag & 0x0fffffff;
00155 lcioTag |= (sioTag & 0xe0000000) >> 1;
00156 lcioTag |= (sioTag & 0x10000000) << 3;
00157 return lcioTag;
00158 }
|
|
|
Definition at line 96 of file LCDG4CalHit.hh. Referenced by GetBarEnd(), LCDG4CalHit(), operator=(), operator==(), Print(), and SetBarEnd(). |
|
|
Definition at line 104 of file LCDG4CalHit.hh. Referenced by AddMcPart(), GetEdep(), LCDG4CalHit(), operator=(), Print(), and SetEdep(). |
|
|
Definition at line 106 of file LCDG4CalHit.hh. Referenced by AddMcPartAbs(), GetEdepAbs(), LCDG4CalHit(), operator=(), and SetEdepAbs(). |
|
|
Definition at line 113 of file LCDG4CalHit.hh. Referenced by AddMcPart(), LCDG4CalHit(), operator=(), and ~LCDG4CalHit(). |
|
|
Definition at line 92 of file LCDG4CalHit.hh. Referenced by GetCellID(), GetLayer(), LCDG4CalHit(), operator=(), operator==(), Print(), and SetLayer(). |
|
|
Definition at line 109 of file LCDG4CalHit.hh. Referenced by AddMcPart(), GetNMC(), LCDG4CalHit(), and operator=(). |
|
|
Definition at line 98 of file LCDG4CalHit.hh. Referenced by GetNorth(), and SetNorth(). |
|
|
Definition at line 100 of file LCDG4CalHit.hh. Referenced by GetCellID(), GetPhi(), LCDG4CalHit(), operator=(), operator==(), Print(), and SetPhi(). |
|
|
Definition at line 107 of file LCDG4CalHit.hh. Referenced by Draw(), GetPos(), LCDG4CalHit(), operator=(), and SetPos(). |
|
|
Definition at line 94 of file LCDG4CalHit.hh. Referenced by GetCellID(), GetSystem(), LCDG4CalHit(), operator=(), operator==(), Print(), and SetSystem(). |
|
|
Definition at line 102 of file LCDG4CalHit.hh. Referenced by GetCellID(), GetTheta(), LCDG4CalHit(), operator=(), operator==(), Print(), and SetTheta(). |
|
|
Definition at line 115 of file LCDG4CalHit.hh. Referenced by AddMcPart(), LCDG4CalHit(), and ~LCDG4CalHit(). |
|
|
Definition at line 111 of file LCDG4CalHit.hh. Referenced by AddMcPart(), LCDG4CalHit(), operator=(), and ~LCDG4CalHit(). |
1.3.4