40 #ifndef EGS_BEAM_SOURCE_ 
   41 #define EGS_BEAM_SOURCE_ 
   53     #ifdef BUILD_BEAM_SOURCE_DLL 
   54         #define EGS_BEAM_SOURCE_EXPORT __declspec(dllexport) 
   56         #define EGS_BEAM_SOURCE_EXPORT __declspec(dllimport) 
   58     #define EGS_BEAM_SOURCE_LOCAL 
   62     #ifdef HAVE_VISIBILITY 
   63         #define EGS_BEAM_SOURCE_EXPORT __attribute__ ((visibility ("default")))
 
   64         #define EGS_BEAM_SOURCE_LOCAL  __attribute__ ((visibility ("hidden")))
 
   66         #define EGS_BEAM_SOURCE_EXPORT 
   67         #define EGS_BEAM_SOURCE_LOCAL 
   73 typedef void (*InitFunction)(
const int *, 
const int *, 
const int *,
 
   74                              const char *, 
const char *, 
const char *,
 
   75                              const char *, 
const char *, int,int,int,int,int);
 
   76 typedef void (*FinishFunction)();
 
   77 typedef void (*SampleFunction)(EGS_Float *, EGS_Float *, EGS_Float *,
 
   78                                EGS_Float *, EGS_Float *, EGS_Float *, EGS_Float *, EGS_Float *,
 
   79                                EGS_I32 *, EGS_I32 *, EGS_I64 *, EGS_I32 *);
 
   80 typedef void (*MotionSampleFunction)(EGS_Float *, EGS_Float *, EGS_Float *,
 
   81                                      EGS_Float *, EGS_Float *, EGS_Float *, EGS_Float *, EGS_Float *,
 
   82                                      EGS_I32 *, EGS_I32 *, EGS_I64 *, EGS_I32 *, EGS_Float *);
 
   83 typedef void (*MaxEnergyFunction)(EGS_Float *);
 
  147                             int &q, 
int &latch, EGS_Float &E, EGS_Float &wt,
 
  149     EGS_Float getEmax()
 const {
 
  152     EGS_Float getFluence()
 const {
 
  155     bool storeState(ostream &data)
 const {
 
  158     bool setState(istream &data) {
 
  161     bool addState(istream &data) {
 
  167     void resetCounter() {
 
  171     bool isValid()
 const {
 
  175     void setCutout(EGS_Float xmin, EGS_Float xmax, EGS_Float ymin,
 
  183     void containsDynamic(
bool &hasdynamic);
 
  188     FinishFunction finish;  
 
  190     SampleFunction sample;  
 
  191     MotionSampleFunction motionsample; 
 
  196     string      the_file_name;
 
  204     EGS_Float   Xmin, Xmax, Ymin, Ymax;
 
  205     EGS_Float   wmin, wmax;
 
  208     int         q_save, latch_save;
 
  209     EGS_Float   E_save, wt_save, time_save;
 
  213     int         n_reuse_photon, n_reuse_electron;
 
  214     int         i_reuse_photon, i_reuse_electron;
 
  219     EGS_Float tei,txi,tyi,tzi,tui,tvi,twi,twti,ttimei;
 
  220     int tqi,tlatchi,tiphati;
 
Base source class. All particle sources must be derived from this class.
A BEAM simulation source.
bool time_stored
true if time index stored
EGS_Library * lib
The BEAMnrc user code library.
A class for dynamically loading shared libraries.
Base random number generator class. All random number generators should be derived from this class.
A class representing 3D vectors.
EGS_BaseSource class header file.
Global egspp functions header file.
EGS_RandomGenerator class header file.
EGS_Vector methods for the manipulation of 3D vectors in cartesian co-ordinates.
bool EGS_EXPORT egsStoreI64(ostream &data, EGS_I64 n)
Writes the 64 bit integer n to the output stream data and returns true on success,...
bool EGS_EXPORT egsGetI64(istream &data, EGS_I64 &n)
Reads a 64 bit integer from the stream data and assigns it to n. Returns true on success,...