52#include "egs_functions.h"
65 for (
size_t i=0; i <
children.size(); i++) {
120 vector<string>
getChildren(
string name, EGS_Input *inp);
a container for organizing meta data about the geometries
map< EGS_BaseGeometry *, GeomRegionInfo > geom_to_regioninfo
void getGeomRegs(Node, vector< GeomRegionInfo > &, int)
string source_envelope_name
vector< int > global_ir_to_local_ir
pointer for the geometry it belongs to
vector< GeomRegionInfo > ordered_geom_data
vector< EGS_BaseGeometry * > global_ir_to_geom
the source geometry index or -1 if not a source
vector< EB_Phantom * > phantom_geoms
pointers to all of the phantom objects
int phantomFromRegion(int ir)
return the phantom index for this region number or -1 if region is not in a phantom
int localToGlobal(GeomRegT)
int initializeFromInput(EGS_Input *input)
Initialize the GeomInfo structure (ginfo) This function reads the geometry input block,...
Node build_tree(string root, vector< Node > &children)
vector< int > global_ir_to_source
the phantoms geometry index or -1 if not a phant
int ngeom
total number of geometries created
void setGeometryIndexes(EGS_BaseGeometry *sim_geom)
Setup all arrays required to decide which geometry/phantom a region is in and whether or not we are s...
vector< int > global_ir_to_phant
array of size nreg mapping global region number to
GeomRegT globalToLocal(int ir)
convert global region number to (EGS_BaseGeometry, local_reg_num) pair
int nreg_total
total number of regions in the simulation geometry
int globalToLocalReg(int ir)
convert global region number to local_reg_num
vector< string > getChildren(string name, EGS_Input *inp)
vector< string > source_names
vector< string > phantom_names
Node(string n, vector< Node > children)
map< string, GeomRegionInfo > GeomRegionInfoMapT
a mapping from geometry name to information about that geometry
pair< EGS_BaseGeometry *, int > GeomRegT
pair of geometry and local region number
Header file for phantom objects.
a struct to contain elementary information aboud a geometry
vector< string > children