47#ifndef EB_IAEA_SOURCE_
48#define EB_IAEA_SOURCE_
50#include "egs_config1.h"
51#include "egs_vector.h"
52#include "egs_base_source.h"
54#include "egs_alias_table.h"
55#include "../iaea_phsp/iaea_phsp.h"
62 #ifdef BUILD_EB_IAEA_PHSP_SOURCE_DLL
63 #define EB_IAEA_SOURCE_EXPORT __declspec(dllexport)
65 #define EB_IAEA_SOURCE_EXPORT __declspec(dllimport)
67 #define EB_IAEA_SOURCE_LOCAL
71 #ifdef HAVE_VISIBILITY
72 #define EB_IAEA_SOURCE_EXPORT __attribute__ ((visibility ("default")))
73 #define EB_IAEA_SOURCE_LOCAL __attribute__ ((visibility ("hidden")))
75 #define EB_IAEA_SOURCE_EXPORT
76 #define EB_IAEA_SOURCE_LOCAL
112 EGS_I64 getNextParticle(EGS_RandomGenerator *rndm,
113 int &q,
int &latch, EGS_Float &E, EGS_Float &wt,
114 EGS_Vector &x, EGS_Vector &u);
116 EGS_Float getEmax()
const;
118 EGS_Float getFluence()
const;
120 void setSimulationChunk(EGS_I64 nstart, EGS_I64 nrun);
121 bool storeState(ostream &data)
const;
122 bool setState(istream &data);
123 bool addState(istream &data);
126 bool isValid()
const;
155 void initSourceParams();
A phase space file source for egs_brachy.
static IAEA_I32 next_source_id
static const string iaea_header_ext
EGS_Float Emax
Maximum energy (obtained from the phsp file)
string phsp_file_name
The phase space file name.
IAEA_I64 Nfirst
first record this source can use
IAEA_I64 Nphoton
Number of photons in the file.
EGS_Float Nincident
Number of incident particles that created the file.
IAEA_I64 Nlast
Last record this source can use.
IAEA_I64 count
Particles delivered so far.
IAEA_I64 Nparticle
Number of particles in the file.
IAEA_I64 Npos
Next record to be read.
IAEA_I64 Nread
Number of particles read from file so far.
IAEA_I64 Nused
Number of particles used so far.
EGS_Float Emin
Minimum energy (obtained from the phsp file)
ifstream phsp_file
Phase space data stream.
#define EB_IAEA_SOURCE_EXPORT