Geant4  10.03.p02
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4VIntraNuclearTransportModel.cc
Go to the documentation of this file.
1 //
2 // ********************************************************************
3 // * License and Disclaimer *
4 // * *
5 // * The Geant4 software is copyright of the Copyright Holders of *
6 // * the Geant4 Collaboration. It is provided under the terms and *
7 // * conditions of the Geant4 Software License, included in the file *
8 // * LICENSE and available at http://cern.ch/geant4/license . These *
9 // * include a list of copyright holders. *
10 // * *
11 // * Neither the authors of this software system, nor their employing *
12 // * institutes,nor the agencies providing financial support for this *
13 // * work make any representation or warranty, express or implied, *
14 // * regarding this software system or assume any liability for its *
15 // * use. Please see the license in the file LICENSE and URL above *
16 // * for the full disclaimer and the limitation of liability. *
17 // * *
18 // * This code implementation is the result of the scientific and *
19 // * technical work of the GEANT4 collaboration. *
20 // * By using, copying, modifying or distributing the software (or *
21 // * any work based on the software) you agree to acknowledge its *
22 // * use in resulting scientific publications, and indicate your *
23 // * acceptance of all terms of the Geant4 Software license. *
24 // ********************************************************************
25 //
26 // $Id: G4VIntraNuclearTransportModel.cc 69717 2013-05-13 09:47:57Z gcosmo $
27 //
28 // $Id: G4VIntraNuclearTransportModel.cc,v 1.0 1998/06/30
29 // -----------------------------------------------------------------------------
30 // GEANT 4 class implementation file
31 //
32 // History: first implementation, A. Feliciello, 30th June 1998
33 // Removed delete of DeExcitation model, deleted elsewhere.
34 // F.W.Jones, 06-JUL-99
35 // V.Ivanchenko 03.01.2012
36 // Added G4VPreCompoundModel pointer to the constructor and cleanup
37 // V. Uzhinsky Nov. 2012
38 // Added method PropagateNuclNucl for simulation of nucleus-nucleus inter.
39 // -----------------------------------------------------------------------------
40 
42 
44  const G4String& modName, G4VPreCompoundModel* ptr)
45  : G4HadronicInteraction(modName),theTransportModelName(modName),
46  the3DNucleus(0),theDeExcitation(ptr),thePrimaryProjectile(0)
47 {}
48 
50 {
51  // if(the3DNucleus!=NULL) delete the3DNucleus;
52  // This is deleted by ~G4HadronicInteractionRegistry
53  // if(theDeExcitation!=NULL) delete theDeExcitation;
54 }
55 
56 void G4VIntraNuclearTransportModel::ModelDescription(std::ostream& outFile) const
57 {
58  outFile << "G4VIntraNuclearTransportModel is abstract class" << G4endl;
59  G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",FatalException,
60  "G4VIntraNuclearTransportModel is abstract class, no description available");
61 }
62 
64 {
65  outFile << "G4VIntraNuclearTransportModel is abstract class, missing description" << G4endl;
66 // G4Exception("G4VIntraNuclearTransportModel::ModelDescription()","G4VINT01",FatalException,
67 // "G4VIntraNuclearTransportModel is abstract class, no description available");
68 }
69 
72 {
73  G4Exception("G4VIntraNuclearTransportModel::Propagate()","G4VINT02",FatalException,
74  "Propagate method for nucleus-nucleus interactions not implemented");
75  return 0;
76 }
G4VIntraNuclearTransportModel(const G4String &mName="CascadeModel", G4VPreCompoundModel *ptr=nullptr)
std::vector< G4ReactionProduct * > G4ReactionProductVector
virtual void PropagateModelDescription(std::ostream &outFile) const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
Definition: G4Exception.cc:41
virtual G4ReactionProductVector * PropagateNuclNucl(G4KineticTrackVector *theSecondaries, G4V3DNucleus *theNucleus, G4V3DNucleus *theProjectileNucleus)
#define G4endl
Definition: G4ios.hh:61
virtual void ModelDescription(std::ostream &outFile) const