55 G4double edep = aStep->GetTotalEnergyDeposit();
57 if(aStep->GetTrack()->GetDefinition()!=G4Geantino::GeantinoDefinition() &&
58 aStep->GetTrack()->GetDefinition()!=G4ChargedGeantino::ChargedGeantinoDefinition())
66 const G4TouchableHistory* myTouch =
dynamic_cast<const G4TouchableHistory*
>(aStep->GetPreStepPoint()->GetTouchable());
68 G4cout <<
"SctSensor_CTB::ProcessHits bad dynamic_cast" << G4endl;
74 G4ThreeVector coord1 = aStep->GetPreStepPoint()->GetPosition();
75 G4ThreeVector coord2 = aStep->GetPostStepPoint()->GetPosition();
81 const G4AffineTransform transformation = myTouch->GetHistory()->GetTopTransform();
82 G4ThreeVector localPosition1 = transformation.TransformPoint(coord1);
83 G4ThreeVector localPosition2 = transformation.TransformPoint(coord2);
85 HepGeom::Point3D<double> lP1,lP2;
115 int BEcopyNo = myTouch->GetVolume()->GetCopyNo();
117#ifdef SCTSD_CTB_DEBUG
118 for (
int i=0;i<myTouch->GetHistoryDepth();i++){
119 std::string detname=myTouch->GetVolume(i)->GetLogicalVolume()->GetName();
120 int copyno=myTouch->GetVolume(i)->GetCopyNo();
121 if (verboseLevel>1) G4cout <<
"Volume "<<detname <<
" Copy Nr. "<<copyno << G4endl;
127 int BEcopyNoTest = BEcopyNo/100;
128 if(BEcopyNoTest == 5 || BEcopyNoTest == 6 || BEcopyNo == 1000 || BEcopyNo == 2000) {
132 if(BEcopyNoTest == 5 || BEcopyNoTest == 6 ) {
133 side = myTouch->GetVolume(0)->GetCopyNo()%2;
134 phiMod=myTouch->GetVolume(1)->GetCopyNo()%2;
135 LayerDisk = myTouch->GetVolume(1)->GetCopyNo()/2;
136 }
else if ( BEcopyNo == 1000) {
137 side = myTouch->GetVolume(1)->GetCopyNo();
138 phiMod=myTouch->GetVolume(2)->GetCopyNo()%2;
139 LayerDisk = myTouch->GetVolume(2)->GetCopyNo()/2;
142#ifdef SCTSD_CTB_DEBUG
143 if (verboseLevel>1) G4cout <<
"In the SCT TestBeam" << G4endl;
144 if (verboseLevel>1) G4cout <<
" * Module Number: " <<
LayerDisk <<
"," << phiMod <<
" Side: " << side << G4endl;
145 if (verboseLevel>5) G4cout <<
" Identifier will be [2.2."
150 << side <<
"]" << G4endl;
154 description <<
"ProcessHits: Unexpected copy number for sensor";
155 G4Exception(
"SctSensor_CTB",
"UnexpectedCopyNumberForSctSensor", FatalException,
description);
162 aStep->GetPreStepPoint()->GetGlobalTime(),