71 G4ThreadLocal std::vector<G4HadronInelasticProcess*>* G4IonBinaryCascadePhysics::G4MT_p_list = 0;
72 G4ThreadLocal std::vector<G4HadronicInteraction*>* G4IonBinaryCascadePhysics::G4MT_model_list = 0;
89 if(verbose > 1)
G4cout <<
"### G4IonBinaryCascadePhysics" <<
G4endl;
103 if(verbose > 1)
G4cout <<
"### G4IonBinaryCascadePhysics" <<
G4endl;
113 delete theBuilder; theBuilder = 0;
114 delete theGGNuclNuclXS; theGGNuclNuclXS = 0;
115 delete theNuclNuclData; theNuclNuclData = 0;
118 G4int n = G4MT_p_list->size();
119 for(i=0; i<
n; i++) {
delete (*G4MT_p_list)[i];}
123 if ( G4MT_model_list ) {
124 G4int n = G4MT_model_list->size();
125 for(i=0; i<
n; i++) {
delete (*G4MT_model_list)[i];}
126 delete G4MT_model_list;
135 if(wasActivated) {
return; }
144 if ( G4MT_model_list == 0 ) G4MT_model_list =
new std::vector<G4HadronicInteraction*>;
145 G4MT_model_list->push_back(theIonBC);
151 G4MT_model_list->push_back(theFTFP);
163 void G4IonBinaryCascadePhysics::AddProcess(
const G4String&
name,
166 if ( G4MT_p_list == 0 ) G4MT_p_list =
new std::vector<G4HadronInelasticProcess*>;
168 G4MT_p_list->push_back(hadi);
G4IonBinaryCascadePhysics(G4int ver=0)
G4int AddDiscreteProcess(G4VProcess *aProcess, G4int ord=ordDefault)
G4ProcessManager * GetProcessManager() const
G4HadronicInteraction * GetModel()
static void ConstructParticle()
void RegisterMe(G4HadronicInteraction *a)
virtual ~G4IonBinaryCascadePhysics()
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
G4GLOB_DLL std::ostream G4cout
virtual void ConstructParticle()
static G4Triton * Triton()
static G4Deuteron * Deuteron()
static G4GenericIon * GenericIon()
virtual void ConstructProcess()
void SetMaxEnergy(const G4double anEnergy)
void SetPhysicsType(G4int)
#define G4_DECLARE_PHYSCONSTR_FACTORY(physics_constructor)