| 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 |
|
|