Import Geant4 5.0.0 source tree
This commit is contained in:
@@ -21,28 +21,60 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: G4VSampler.hh,v 1.1 2002/05/31 08:08:22 dressel Exp $
|
||||
// GEANT4 tag $Name: geant4-04-01 $
|
||||
// $Id: G4VSampler.hh,v 1.6 2002/10/22 13:25:57 dressel Exp $
|
||||
// GEANT4 tag $Name: geant4-05-00 $
|
||||
//
|
||||
// ----------------------------------------------------------------------
|
||||
// Class G4VSampler
|
||||
//
|
||||
// Class description:
|
||||
// The base class for importance sampling and scoring.
|
||||
//
|
||||
//
|
||||
// This interface discribes a configurable sampler.
|
||||
// It applies to a given particle type.
|
||||
// Concrete classes with this interface may be used for
|
||||
// scoring, importance sampling and weigth cutoff (weight roulett).
|
||||
//
|
||||
|
||||
// Author: Michael Dressel (Michael.Dressel@cern.ch)
|
||||
// ----------------------------------------------------------------------
|
||||
#ifndef G4VSampler_hh
|
||||
#define G4VSampler_hh G4VSampler_hh
|
||||
|
||||
class G4VSampler
|
||||
{
|
||||
public:
|
||||
virtual ~G4VSampler(){}
|
||||
virtual void Initialize() = 0;
|
||||
// the user must initialize the concrete object this interface
|
||||
// covers afer the initialization of the G4RunManager
|
||||
};
|
||||
|
||||
#include "globals.hh"
|
||||
|
||||
class G4VPhysicalVolume;
|
||||
class G4VImportanceAlgorithm;
|
||||
class G4VIStore;
|
||||
class G4VScorer;
|
||||
|
||||
|
||||
class G4VSampler {
|
||||
|
||||
public:
|
||||
|
||||
G4VSampler();
|
||||
virtual ~G4VSampler();
|
||||
|
||||
virtual void PrepareScoring(G4VScorer *Scorer) = 0;
|
||||
|
||||
virtual void PrepareImportanceSampling(G4VIStore *istore,
|
||||
const G4VImportanceAlgorithm
|
||||
*ialg = 0) = 0;
|
||||
|
||||
|
||||
virtual void PrepareWeightRoulett(G4double wsurvive = 0.5,
|
||||
G4double wlimit = 0.25,
|
||||
G4double isource = 1) = 0;
|
||||
|
||||
virtual void Configure() = 0;
|
||||
|
||||
virtual void ClearSampling() = 0;
|
||||
// clear the sampler and remove the processes
|
||||
|
||||
virtual G4bool IsConfigured() const = 0;
|
||||
// check if some initialization hase already been done
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user