4 // See the class description in the header file.
6 #include "AliLegoSensitiveDetector.h"
9 #include "TG4StepManager.h"
11 AliLegoSensitiveDetector::AliLegoSensitiveDetector(
12 G4String name, AliLego* lego,
13 G4VSensitiveDetector* standardSD)
14 : TG4VSensitiveDetector(name),
16 fStandardSD(standardSD),
17 fStepManager(TG4StepManager::Instance())
22 AliLegoSensitiveDetector::AliLegoSensitiveDetector(
23 const AliLegoSensitiveDetector& right)
24 : TG4VSensitiveDetector(right)
28 fStandardSD = right.fStandardSD;
29 fStepManager = right.fStepManager;
32 AliLegoSensitiveDetector::AliLegoSensitiveDetector() {
36 AliLegoSensitiveDetector::~AliLegoSensitiveDetector() {
42 AliLegoSensitiveDetector&
43 AliLegoSensitiveDetector::operator=(const AliLegoSensitiveDetector &right)
45 // check assignement to self
46 if (this == &right) return *this;
48 // base class assignement
49 TG4VSensitiveDetector::operator=(right);
52 fStandardSD = right.fStandardSD;
53 fStepManager = right.fStepManager;
60 void AliLegoSensitiveDetector::Initialize(G4HCofThisEvent* hc)
62 // This method is called at the beginning of event action
63 // before user defined BeginOfEventAction() method.
66 G4bool AliLegoSensitiveDetector::ProcessHits(G4Step* step, G4TouchableHistory*)
68 // Calls StepManager of associated lego.
71 // let lego process step
72 fStepManager->SetStep(step);
78 void AliLegoSensitiveDetector::EndOfEvent(G4HCofThisEvent* hce){
82 //void AliLegoSensitiveDetector::clear()
85 void AliLegoSensitiveDetector::PrintAll() {
89 void AliLegoSensitiveDetector::DrawAll() {