37 |
|
|
38 |
PamVMCDetectorSD( |
PamVMCDetectorSD( |
39 |
const char *cname="PamVMCDetectorHit", |
const char *cname="PamVMCDetectorHit", |
40 |
char *dname="", |
const char *dname="", |
41 |
Int_t is=0): |
Int_t is=0): |
42 |
fcname(cname), fdname(dname), fnohit(0), fdetID(0) |
fcname(cname), fdname(dname), fnohit(0), fdetID(0) |
43 |
{ |
{ |
56 |
|
|
57 |
virtual ~PamVMCDetectorSD() { delete fhit; delete fHitColl; delete fdetID;} |
virtual ~PamVMCDetectorSD() { delete fhit; delete fHitColl; delete fdetID;} |
58 |
|
|
59 |
virtual void PamVMCDetectorSD::Register(){ |
virtual void Register(){ |
60 |
|
|
61 |
PamRootManager::Instance()-> |
PamRootManager::Instance()-> |
62 |
Register(fdname.Data(),"TClonesArray", &fHitColl); |
Register(fdname.Data(),"TClonesArray", &fHitColl); |
83 |
} else { fhit->SetPOS(-1); } |
} else { fhit->SetPOS(-1); } |
84 |
} |
} |
85 |
|
|
86 |
virtual void UpdateHit(TVirtualMC *g){ fhit->FillHit(g); } |
virtual void UpdateHit(TVirtualMC *g, Bool_t is_prim ){ fhit->FillHit(g, is_prim); } |
87 |
|
|
88 |
virtual void SaveHit(){ |
virtual void SaveHit(){ |
89 |
PamVMCDetectorHit * k=CreateHit(); |
PamVMCDetectorHit * k=CreateHit(); |
144 |
(*fHitColl).Clear("C"); |
(*fHitColl).Clear("C"); |
145 |
} |
} |
146 |
|
|
147 |
virtual void FillHit(fin f,TVirtualMC *g){ |
virtual void FillHit(fin f,TVirtualMC *g, Bool_t is_prim){ |
148 |
ffi=f; |
ffi=f; |
149 |
switch(f) { |
switch(f) { |
150 |
case ENTERING: |
case ENTERING: |
152 |
FillVolID(); |
FillVolID(); |
153 |
InitHit(); |
InitHit(); |
154 |
default: |
default: |
155 |
UpdateHit(g); |
UpdateHit(g, is_prim); |
156 |
break; |
break; |
157 |
} |
} |
158 |
|
|