Ignore:
Timestamp:
Apr 6, 2009, 12:30:29 PM (15 years ago)
Author:
garnier
Message:

update processes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/processes/hadronic/cross_sections/include/G4VCrossSectionDataSet.hh

    r819 r962  
    2424// ********************************************************************
    2525//
     26// $Id: G4VCrossSectionDataSet.hh,v 1.13 2009/01/24 11:54:47 vnivanch Exp $
     27// GEANT4 tag $Name: geant4-09-02-ref-02 $
    2628//
    27 // GEANT4 physics abstract class: G4VCrossSectionData -- header file
    28 // F.W. Jones, TRIUMF, 20-JAN-97
     29// -------------------------------------------------------------------
     30//
     31// GEANT4 Class header file
     32//
     33//
     34// File name:    G4VCrossSectionDataSet
     35//
     36// Author  F.W. Jones, TRIUMF, 20-JAN-97
     37//
     38// Modifications:
     39// 23.01.2009 V.Ivanchenko move constructor and destructor to source
     40//
     41 
    2942//
    3043// Class Description
     
    4356class G4VCrossSectionDataSet
    4457{
    45 public:
    46 
    47    G4VCrossSectionDataSet() :
    48       verboseLevel(0)
    49    {}
    50 
    51    virtual ~G4VCrossSectionDataSet()
    52    {}
    53 
    5458public: //with description
    5559
    56    // The following methods need to be implemented for each new data set.
    57    virtual
    58    G4bool IsApplicable(const G4DynamicParticle*, const G4Element*) = 0;
     60  G4VCrossSectionDataSet();
    5961
    60    virtual
    61    G4bool IsZAApplicable(const G4DynamicParticle*, G4double /*Z*/, G4double /*A*/);
     62  virtual ~G4VCrossSectionDataSet();
    6263
    63    virtual
    64    G4double GetCrossSection(const G4DynamicParticle*,
    65                             const G4Element*,
    66                             G4double aTemperature = 0.) = 0;
     64  // The following methods need to be implemented for each new data set.
     65  virtual
     66  G4bool IsApplicable(const G4DynamicParticle*, const G4Element*) = 0;
    6767
    68    virtual
    69    G4double GetIsoCrossSection(const G4DynamicParticle*, const G4Isotope*,
    70                                G4double aTemperature = 0.);
     68  virtual
     69  G4bool IsZAApplicable(const G4DynamicParticle*, G4double /*Z*/, G4double /*A*/);
    7170
    72    virtual
    73    G4double GetIsoZACrossSection(const G4DynamicParticle*, G4double /*Z*/,
    74                                  G4double /*A*/, G4double aTemperature = 0.);
     71  virtual
     72  G4double GetCrossSection(const G4DynamicParticle*,
     73                           const G4Element*,
     74                           G4double aTemperature = 0.) = 0;
    7575
    76    virtual
    77    void BuildPhysicsTable(const G4ParticleDefinition&) = 0;
     76  virtual
     77  G4double GetIsoCrossSection(const G4DynamicParticle*, const G4Isotope*,
     78                              G4double aTemperature = 0.);
    7879
    79    virtual
    80    void DumpPhysicsTable(const G4ParticleDefinition&) = 0;
     80  virtual
     81  G4double GetIsoZACrossSection(const G4DynamicParticle*, G4double /*Z*/,
     82                                G4double /*A*/, G4double aTemperature = 0.);
     83
     84  virtual
     85  void BuildPhysicsTable(const G4ParticleDefinition&) = 0;
     86
     87  virtual
     88  void DumpPhysicsTable(const G4ParticleDefinition&) = 0;
    8189
    8290public: // Without Description
    8391
    84   void SetVerboseLevel(G4int value)
    85    {
    86       verboseLevel = value;
    87    }
     92  inline void SetVerboseLevel(G4int value)
     93  {
     94    verboseLevel = value;
     95  }
    8896
    89   G4int GetVerboseLevel()
    90    {
    91       return verboseLevel;
    92    }
     97  inline G4int GetVerboseLevel()
     98  {
     99    return verboseLevel;
     100  }
    93101
    94102protected:
    95103
    96    G4int verboseLevel;
     104  G4int verboseLevel;
    97105};
    98106
Note: See TracChangeset for help on using the changeset viewer.