22 #include "G4ThreeVector.hh"
23 #include "G4SDManager.hh"
24 #include "G4Geantino.hh"
25 #include "G4ChargedGeantino.hh"
27 #include <GeoModelKernel/GeoFullPhysVol.h>
28 #include <GeoModelRead/ReadGeoModel.h>
40 double edep = aStep->GetTotalEnergyDeposit();
42 if (aStep->GetTrack()->GetDefinition() != G4Geantino::GeantinoDefinition() &&
43 aStep->GetTrack()->GetDefinition() != G4ChargedGeantino::ChargedGeantinoDefinition())
48 const G4TouchableHistory *myTouch =
dynamic_cast<const G4TouchableHistory*
>(aStep->GetPreStepPoint()->GetTouchable());
50 G4cout <<
"SctSensorGmxSD::ProcessHits bad dynamic_cast" << G4endl;
56 G4ThreeVector coord1 = aStep->GetPreStepPoint()->GetPosition();
57 G4ThreeVector coord2 = aStep->GetPostStepPoint()->GetPosition();
58 const G4AffineTransform transformation = myTouch->GetHistory()->GetTopTransform();
59 G4ThreeVector localPosition1 = transformation.TransformPoint(coord1);
60 G4ThreeVector localPosition2 = transformation.TransformPoint(coord2);
61 HepGeom::Point3D<double> lP1, lP2;
78 std::string physVolName = myTouch->GetVolume(0)->GetName();
85 aStep->GetPreStepPoint()->GetGlobalTime(),
96 const int id = myTouch->GetVolume(0)->GetCopyNo();