// $Id$
// Category: run
//
+// Author: I. Hrivnacova
+//
+// Class TGeant4
+// -------------
// See the class description in the header file.
#include "TGeant4.h"
#include "TG4Messenger.h"
#include "TG4VRunConfiguration.h"
#include "TG4GeometryManager.h"
+#include "TG4SDManager.h"
#include "TG4PhysicsManager.h"
#include "TG4StepManager.h"
#include "TG4VisManager.h"
// add verbose level
//G4cout << "TG4GeometryManager has been created." << endl;
+ // create sensitive detectors manager
+ fSDManager = new TG4SDManager(configuration->GetSDConstruction());
+ // add verbose level
+ //G4cout << "TG4SDManager has been created." << endl;
+
// create physics manager
fPhysicsManager = new TG4PhysicsManager(configuration->GetPhysicsList());
// add verbose level
// add verbose level
//G4cout << "TG4GeometryManager has been created." << endl;
+ // create sensitive detectors manager
+ fSDManager = new TG4SDManager(configuration->GetSDConstruction());
+ // add verbose level
+ //G4cout << "TG4SDManager has been created." << endl;
+
// create physics manager
fPhysicsManager = new TG4PhysicsManager(configuration->GetPhysicsList());
// add verbose level
//
delete fRunManager;
delete fGeometryManager;
+ delete fSDManager;
delete fPhysicsManager;
delete fStepManager;
// fVisManager is deleted with G4RunManager destructor
->Matrix(krot, thetaX, phiX, thetaY, phiY, thetaZ, phiZ);
}
-//_____________________________________________________________________________
-void TGeant4::Gstpar(Int_t itmed, const char *param, Float_t parval) {
-//
- fGeometryManager->Gstpar(itmed, param, parval);
-}
-
//_____________________________________________________________________________
Int_t TGeant4::Gsvolu(const char *name, const char *shape, Int_t nmed,
Double_t *upar, Int_t np) {
//_____________________________________________________________________________
Int_t TGeant4::VolId(const Text_t* volName) const {
//
- return fGeometryManager->VolId(volName);
+ return fSDManager->VolId(volName);
}
//_____________________________________________________________________________
const char* TGeant4::VolName(Int_t id) const {
//
- return fGeometryManager->VolName(id);
+ return fSDManager->VolName(id);
}
//_____________________________________________________________________________
Int_t TGeant4::NofVolumes() const {
//
- return fGeometryManager->NofVolumes();
+ return fSDManager->NofVolumes();
}
//_____________________________________________________________________________
Int_t TGeant4::VolId2Mate(Int_t id) const {
//
- return fGeometryManager->VolId2Mate(id);
+ return fSDManager->VolId2Mate(id);
}
// ------------------------------------------------
//_____________________________________________________________________________
-void TGeant4::BuildPhysics() {
+void TGeant4::Gstpar(Int_t itmed, const char *param, Float_t parval) {
//
- fPhysicsManager->BuildPhysics();
-}
+ fGeometryManager->Gstpar(itmed, param, parval);
+ fPhysicsManager->Gstpar(itmed, param, parval);
+}
//_____________________________________________________________________________
void TGeant4::SetCut(const char* cutName, Float_t cutValue) {
fRunManager->Initialize();
}
+//_____________________________________________________________________________
+void TGeant4::BuildPhysics() {
+//
+ fRunManager->LateInitialize();
+}
+
//_____________________________________________________________________________
void TGeant4::ProcessEvent() {
//