G4GeneralSpaceNNCrossSection.hh

Go to the documentation of this file.
00001 //
00002 // ********************************************************************
00003 // * License and Disclaimer                                           *
00004 // *                                                                  *
00005 // * The  Geant4 software  is  copyright of the Copyright Holders  of *
00006 // * the Geant4 Collaboration.  It is provided  under  the terms  and *
00007 // * conditions of the Geant4 Software License,  included in the file *
00008 // * LICENSE and available at  http://cern.ch/geant4/license .  These *
00009 // * include a list of copyright holders.                             *
00010 // *                                                                  *
00011 // * Neither the authors of this software system, nor their employing *
00012 // * institutes,nor the agencies providing financial support for this *
00013 // * work  make  any representation or  warranty, express or implied, *
00014 // * regarding  this  software system or assume any liability for its *
00015 // * use.  Please see the license in the file  LICENSE  and URL above *
00016 // * for the full disclaimer and the limitation of liability.         *
00017 // *                                                                  *
00018 // * This  code  implementation is the result of  the  scientific and *
00019 // * technical work of the GEANT4 collaboration.                      *
00020 // *                                                                  *
00021 // * Parts of this code which have been  developed by QinetiQ Ltd     *
00022 // * under contract to the European Space Agency (ESA) are the        *
00023 // * intellectual property of ESA. Rights to use, copy, modify and    *
00024 // * redistribute this software for general public use are granted    *
00025 // * in compliance with any licensing, distribution and development   *
00026 // * policy adopted by the Geant4 Collaboration. This code has been   *
00027 // * written by QinetiQ Ltd for the European Space Agency, under ESA  *
00028 // * contract 17191/03/NL/LvH (Aurora Programme).                     *
00029 // *                                                                  *
00030 // * By using,  copying,  modifying or  distributing the software (or *
00031 // * any work based  on the software)  you  agree  to acknowledge its *
00032 // * use  in  resulting  scientific  publications,  and indicate your *
00033 // * acceptance of all terms of the Geant4 Software license.          *
00034 // ********************************************************************
00035 //
00036 #ifndef G4GeneralSpaceNNCrossSection_h
00037 #define G4GeneralSpaceNNCrossSection_h
00038 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
00039 //
00040 // MODULE:              G4TESAGeneralNNCrossSection.hh
00041 //
00042 // Version:             B.1
00043 // Date:                15/04/04
00044 // Author:              P R Truscott
00045 // Organisation:        QinetiQ Ltd, UK
00046 // Customer:            ESA/ESTEC, NOORDWIJK
00047 // Contract:            17191/03/NL/LvH
00048 //
00049 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
00050 //
00051 // CHANGE HISTORY
00052 // --------------
00053 //
00054 // 6 October 2003, P R Truscott, QinetiQ Ltd, UK
00055 // Created.
00056 //
00057 // 15 March 2004, P R Truscott, QinetiQ Ltd, UK
00058 // Beta release
00059 //
00060 // 4 June 2004, J.P. Wellisch, CERN
00061 // trivial porting issue to windows.
00062 //
00063 // 19 Aug 2011, V.Ivanchenko move to new design and make x-section per element
00064 //
00065 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
00066 //
00067 // Class Description
00068 //
00069 //
00070 // Class Description - End
00071 //
00072 // %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
00074 //
00075 #include "G4VCrossSectionDataSet.hh"
00076 #include "globals.hh"
00077 
00078 class G4ProtonInelasticCrossSection;
00079 class G4IonProtonCrossSection;
00080 class G4TripathiLightCrossSection;
00081 class G4TripathiCrossSection;
00082 class G4IonsShenCrossSection;
00083 class G4Proton;
00084 
00086 //
00087 class G4GeneralSpaceNNCrossSection : public G4VCrossSectionDataSet
00088 {
00089 public:
00090 
00091   G4GeneralSpaceNNCrossSection ();
00092   ~G4GeneralSpaceNNCrossSection ();
00093 
00094   virtual G4bool IsElementApplicable(const G4DynamicParticle* theProjectile,
00095                                      G4int Z, const G4Material*);
00096 
00097   virtual 
00098   G4double GetElementCrossSection(const G4DynamicParticle* theProjectile,
00099                                   G4int Z, const G4Material*);
00100 
00101 private:
00102 
00103   G4ProtonInelasticCrossSection *protonInelastic;
00104   G4IonProtonCrossSection       *ionProton;
00105   G4TripathiLightCrossSection   *TripathiLight;
00106   G4TripathiCrossSection        *TripathiGeneral;
00107   G4IonsShenCrossSection        *Shen;
00108   G4Proton                      *theProton;
00109 
00110 };
00111 
00112 #endif

Generated on Mon May 27 17:48:21 2013 for Geant4 by  doxygen 1.4.7