#include <G4VIntraNuclearTransportModel.hh>
Inheritance diagram for G4VIntraNuclearTransportModel:
Public Member Functions | |
G4VIntraNuclearTransportModel (const G4String &modelName="CascadeModel", G4VPreCompoundModel *ptr=0) | |
virtual | ~G4VIntraNuclearTransportModel () |
virtual G4ReactionProductVector * | Propagate (G4KineticTrackVector *theSecondaries, G4V3DNucleus *theNucleus)=0 |
void | SetDeExcitation (G4VPreCompoundModel *ptr) |
void | Set3DNucleus (G4V3DNucleus *const value) |
void | SetPrimaryProjectile (const G4HadProjectile &aPrimary) |
const G4String & | GetModelName () const |
virtual void | ModelDescription (std::ostream &outFile) const |
virtual void | PropagateModelDescription (std::ostream &outFile) const |
Protected Member Functions | |
G4V3DNucleus * | Get3DNucleus () const |
G4VPreCompoundModel * | GetDeExcitation () const |
const G4HadProjectile * | GetPrimaryProjectile () const |
Protected Attributes | |
G4String | theTransportModelName |
G4V3DNucleus * | the3DNucleus |
G4VPreCompoundModel * | theDeExcitation |
const G4HadProjectile * | thePrimaryProjectile |
Definition at line 62 of file G4VIntraNuclearTransportModel.hh.
G4VIntraNuclearTransportModel::G4VIntraNuclearTransportModel | ( | const G4String & | modelName = "CascadeModel" , |
|
G4VPreCompoundModel * | ptr = 0 | |||
) |
Definition at line 41 of file G4VIntraNuclearTransportModel.cc.
00043 : G4HadronicInteraction(modName),theTransportModelName(modName), 00044 the3DNucleus(0),theDeExcitation(ptr),thePrimaryProjectile(0) 00045 {}
G4VIntraNuclearTransportModel::~G4VIntraNuclearTransportModel | ( | ) | [virtual] |
Definition at line 47 of file G4VIntraNuclearTransportModel.cc.
00048 { 00049 // if(the3DNucleus!=NULL) delete the3DNucleus; 00050 // This is deleted by ~G4HadronicInteractionRegistry 00051 // if(theDeExcitation!=NULL) delete theDeExcitation; 00052 }
G4V3DNucleus * G4VIntraNuclearTransportModel::Get3DNucleus | ( | ) | const [inline, protected] |
Definition at line 115 of file G4VIntraNuclearTransportModel.hh.
References the3DNucleus.
00116 { 00117 return the3DNucleus; 00118 }
G4VPreCompoundModel * G4VIntraNuclearTransportModel::GetDeExcitation | ( | ) | const [inline, protected] |
Definition at line 125 of file G4VIntraNuclearTransportModel.hh.
References theDeExcitation.
Referenced by G4BinaryCascade::G4BinaryCascade().
00126 { 00127 return theDeExcitation; 00128 }
const G4String & G4VIntraNuclearTransportModel::GetModelName | ( | ) | const [inline] |
Reimplemented from G4HadronicInteraction.
Definition at line 110 of file G4VIntraNuclearTransportModel.hh.
References theTransportModelName.
00111 { 00112 return theTransportModelName; 00113 }
const G4HadProjectile * G4VIntraNuclearTransportModel::GetPrimaryProjectile | ( | ) | const [inline, protected] |
Definition at line 138 of file G4VIntraNuclearTransportModel.hh.
References thePrimaryProjectile.
Referenced by G4GeneratorPrecompoundInterface::Propagate(), and G4CascadeInterface::Propagate().
00139 { 00140 return thePrimaryProjectile; 00141 }
void G4VIntraNuclearTransportModel::ModelDescription | ( | std::ostream & | outFile | ) | const [virtual] |
Reimplemented from G4HadronicInteraction.
Reimplemented in G4BinaryCascade, and G4CascadeInterface.
Definition at line 54 of file G4VIntraNuclearTransportModel.cc.
References FatalException, G4endl, and G4Exception().
00055 { 00056 outFile << "G4VIntraNuclearTransportModel is abstract class" << G4endl; 00057 G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",FatalException, 00058 "G4VIntraNuclearTransportModel is abstract class, no description available"); 00059 }
virtual G4ReactionProductVector* G4VIntraNuclearTransportModel::Propagate | ( | G4KineticTrackVector * | theSecondaries, | |
G4V3DNucleus * | theNucleus | |||
) | [pure virtual] |
void G4VIntraNuclearTransportModel::PropagateModelDescription | ( | std::ostream & | outFile | ) | const [virtual] |
Reimplemented in G4BinaryCascade, and G4GeneratorPrecompoundInterface.
Definition at line 61 of file G4VIntraNuclearTransportModel.cc.
References G4endl.
00062 { 00063 outFile << "G4VIntraNuclearTransportModel is abstract class, missing description" << G4endl; 00064 // G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",FatalException, 00065 // "G4VIntraNuclearTransportModel is abstract class, no description available"); 00066 }
void G4VIntraNuclearTransportModel::Set3DNucleus | ( | G4V3DNucleus *const | value | ) | [inline] |
Definition at line 120 of file G4VIntraNuclearTransportModel.hh.
References the3DNucleus.
00121 { 00122 delete the3DNucleus; the3DNucleus = value; 00123 }
void G4VIntraNuclearTransportModel::SetDeExcitation | ( | G4VPreCompoundModel * | ptr | ) | [inline] |
Definition at line 131 of file G4VIntraNuclearTransportModel.hh.
References theDeExcitation.
Referenced by G4QGSBuilder::BuildModel(), G4BinaryCascade::G4BinaryCascade(), G4ElectroVDNuclearModel::G4ElectroVDNuclearModel(), G4FTFBinaryKaonBuilder::G4FTFBinaryKaonBuilder(), G4FTFBinaryPiKBuilder::G4FTFBinaryPiKBuilder(), G4FTFBinaryPionBuilder::G4FTFBinaryPionBuilder(), G4FTFBinaryProtonBuilder::G4FTFBinaryProtonBuilder(), G4GeneratorPrecompoundInterface::G4GeneratorPrecompoundInterface(), G4HyperonFTFPBuilder::G4HyperonFTFPBuilder(), G4MuonVDNuclearModel::G4MuonVDNuclearModel(), G4QGSBinaryNeutronBuilder::G4QGSBinaryNeutronBuilder(), G4QGSBinaryPiKBuilder::G4QGSBinaryPiKBuilder(), G4QGSBinaryProtonBuilder::G4QGSBinaryProtonBuilder(), G4QGSPNeutronBuilder::G4QGSPNeutronBuilder(), G4QGSPPiKBuilder::G4QGSPPiKBuilder(), G4QGSPPionBuilder::G4QGSPPionBuilder(), and G4QGSPProtonBuilder::G4QGSPProtonBuilder().
00132 { 00133 // previous pre-compound model will be deleted at the end of job 00134 theDeExcitation = value; 00135 }
void G4VIntraNuclearTransportModel::SetPrimaryProjectile | ( | const G4HadProjectile & | aPrimary | ) | [inline] |
Definition at line 144 of file G4VIntraNuclearTransportModel.hh.
References thePrimaryProjectile.
Referenced by G4TheoFSGenerator::ApplyYourself().
00145 { 00146 // NOTE: Previous pointer is NOT deleted: passed by reference, no ownership 00147 thePrimaryProjectile = &aPrimary; 00148 }
G4V3DNucleus* G4VIntraNuclearTransportModel::the3DNucleus [protected] |
Definition at line 103 of file G4VIntraNuclearTransportModel.hh.
Referenced by G4BinaryCascade::ApplyYourself(), Get3DNucleus(), G4BinaryCascade::Propagate(), and Set3DNucleus().
Definition at line 105 of file G4VIntraNuclearTransportModel.hh.
Referenced by G4BinaryCascade::ApplyYourself(), GetDeExcitation(), G4GeneratorPrecompoundInterface::Propagate(), and SetDeExcitation().
const G4HadProjectile* G4VIntraNuclearTransportModel::thePrimaryProjectile [protected] |
Definition at line 107 of file G4VIntraNuclearTransportModel.hh.
Referenced by GetPrimaryProjectile(), and SetPrimaryProjectile().