#include "TGeant4.h"
#include "TG4Messenger.h"
+#include "TG4VRunConfiguration.h"
#include "TG4GeometryManager.h"
#include "TG4PhysicsManager.h"
#include "TG4StepManager.h"
#include "TG4RunManager.h"
#include "TG4Globals.h"
+#include "AliDecayer.h"
+
TGeant4::TGeant4(const char* name, const char* title,
TG4VRunConfiguration* configuration, int argc, char** argv)
: AliMC(name, title),
//G4cout << "TG4GeometryManager has been created." << endl;
// create physics manager
- fPhysicsManager = new TG4PhysicsManager();
+ fPhysicsManager = new TG4PhysicsManager(configuration->GetPhysicsList());
// add verbose level
//G4cout << "TG4GeometryManager has been created." << endl;
//G4cout << "TG4GeometryManager has been created." << endl;
// create physics manager
- fPhysicsManager = new TG4PhysicsManager();
+ fPhysicsManager = new TG4PhysicsManager(configuration->GetPhysicsList());
// add verbose level
//G4cout << "TG4GeometryManager has been created." << endl;
fGeometryManager->Gstpar(itmed, param, parval);
}
-void TGeant4::Gsckov(Int_t itmed, Int_t npckov, Float_t *ppckov,
- Float_t *absco, Float_t *effic, Float_t *rindex) {
-//
-
- fGeometryManager->Gsckov(itmed, npckov, ppckov, absco, effic, rindex);
-}
-
Int_t TGeant4::Gsvolu(const char *name, const char *shape, Int_t nmed,
Float_t *upar, Int_t np) {
//
fGeometryManager->Gsposp(name, nr, mother, x, y, z, irot, konly, upar, np);
}
+void TGeant4::SetCerenkov(Int_t itmed, Int_t npckov, Float_t *ppckov,
+ Float_t *absco, Float_t *effic, Float_t *rindex) {
+//
+ fGeometryManager->SetCerenkov(itmed, npckov, ppckov, absco, effic, rindex);
+}
+
void TGeant4::WriteEuclid(const char* fileName, const char* topVol,
Int_t number, Int_t nlevel) {
//
return fGeometryManager->NofVolumes();
}
+Int_t TGeant4::VolId2Mate(Int_t id) const {
+//
+ return fGeometryManager->VolId2Mate(id);
+}
+
+
+
// methods for physics management
// ------------------------------------------------
return fPhysicsManager->Xsec(reac, energy, part, mate);
}
+void TGeant4::SetExternalDecayer(AliDecayer* decayer) {
+//
+ fPhysicsManager->SetExternalDecayer(decayer);
+}
+
+AliDecayer* TGeant4::Decayer() const {
+//
+ return fPhysicsManager->Decayer();
+}
+
+
Int_t TGeant4::IdFromPDG(Int_t pdgID) const {
//
return fPhysicsManager->IdFromPDG(pdgID);
// ------------------------------------------------
// inlined (in TGeant4.icc)
-void TGeant4::Rndm(Float_t* array, const Int_t size) const {
-//
- fStepManager->Rndm(array, size);
-}
-
// methods for visualization
// ------------------------------------------------
TG4Globals:: Warning("TGeant4::Gtreve() is not implemented.");
}
-void TGeant4::Gtreve_root() {
+void TGeant4::GtreveRoot() {
//
- TG4Globals:: Warning("TGeant4::Gtreve_root() is not implemented.");
+ TG4Globals:: Warning("TGeant4::GtreveRoot() is not implemented.");
}
void TGeant4::Gckmat(Int_t itmed, char* natmed) {