|
BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Const entry to parser objects. More...
#include <BDSParser.hh>


Public Member Functions | |
| BDSParser () | |
| Default constructor. | |
| virtual | ~BDSParser () |
| Destructor. | |
| const GMAD::Options & | GetOptions () const |
| Return options. | |
| const GMAD::OptionsBase * | GetOptionsBase () const |
| Return bare options base class. | |
| const GMAD::Beam & | GetBeam () const |
| Return beam. | |
| GMAD::Beam & | GetBeam () |
| Return beam non-const. Required when loading a file and need to change beam parameters to match. | |
| const GMAD::BeamBase * | GetBeamBase () const |
| Return bare beam base class. | |
| void | AmalgamateOptions (const GMAD::Options &optionsIn) |
| Amalgamate the input options with the ones stored in the parser. | |
| void | AmalgamateBeam (const GMAD::Beam &beamIn, bool recreate) |
| Amalgamate the input beam definition with the ones stored in teh parser. | |
| void | CheckOptions () |
| Check options for consistency. This also checks the beam options. | |
| const GMAD::FastList< GMAD::Element > & | GetSequence (const std::string &name) |
| Return sequence. | |
| const GMAD::Element * | GetElement (const std::string &name) |
| const GMAD::Element * | GetPlacementElement (const std::string &name) |
| const GMAD::FastList< GMAD::PhysicsBiasing > & | GetBiasing () const |
| Return biasing list. | |
| GMAD::CoolingChannel | GetCoolingChannel (const std::string &objectName) |
| Return a cooling channel object by name. Throws an exception if it doesn't exist. | |
| std::vector< GMAD::Atom > | GetAtoms () const |
| Return the parser list of that object. | |
| const std::vector< GMAD::PhysicsBiasing > | GetBiasingVector () const |
| Return the parser list of that object. | |
| std::vector< GMAD::CavityModel > | GetCavityModels () const |
| Return the parser list of that object. | |
| std::vector< GMAD::NewColour > | GetColours () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Crystal > | GetCrystals () const |
| Return the parser list of that object. | |
| std::vector< GMAD::CoolingChannel > | GetCoolingChannels () const |
| Return the parser list of that object. | |
| std::map< std::string, GMAD::CoolingChannel > | GetCoolingChannelMap () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Field > | GetFields () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Laser > | GetLasers () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Material > | GetMaterials () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Placement > | GetPlacements () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Query > | GetQuery () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Region > | GetRegions () const |
| Return the parser list of that object. | |
| std::vector< GMAD::SamplerPlacement > | GetSamplerPlacements () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Scorer > | GetScorers () const |
| Return the parser list of that object. | |
| std::vector< GMAD::ScorerMesh > | GetScorerMesh () const |
| Return the parser list of that object. | |
| std::vector< GMAD::BLMPlacement > | GetBLMs () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Modulator > | GetModulators () const |
| Return the parser list of that object. | |
| std::vector< GMAD::Aperture > | GetApertures () const |
| Return the parser list of that object. | |
Public Member Functions inherited from GMAD::Parser | |
| virtual | ~Parser () |
| Destructor. | |
| Parser () | |
| Default contructor. | |
| void | quit () |
| Exit method. | |
| void | write_table (std::string *name, ElementType type, bool isLine=false) |
| Method that transfers parameters to element properties. | |
| void | expand_line (FastList< Element > &target, const std::string &name, const std::string &start="", const std::string &end="") |
| void | expand_line (const std::string &name, const std::string &start, const std::string &end) |
| Expand the main beamline as defined by the use command. | |
| const FastList< Element > & | get_sequence (const std::string &name) |
| int | add_sampler_partIDSet (std::list< int > *samplerPartIDListIn) |
| void | add_sampler (const std::string &name, int count, ElementType type, std::string samplerType, std::list< int > *samplerPartIDListIn=nullptr) |
| insert a sampler into beamline_list | |
| template<class C , class Container = FastList<C>> | |
| void | Add () |
| Insert global object of parser class C in Container class. | |
| template<class C , class Container = FastList<C>> | |
| void | Add (bool unique, const std::string &className) |
| template<class C > | |
| C & | GetGlobal () |
| Get global object of parser class C. | |
| template<class C > | |
| C * | GetGlobalPtr () |
| template<class C , class Container = FastList<C>> | |
| Container & | GetList () |
| Get list for parser class C. | |
| const std::set< std::set< int > > & | GetSamplerFilters () const |
| const std::map< int, std::set< int > > & | GetSamplerFilterIDToSet () const |
| Element & | find_element (const std::string &element_name) |
| find element | |
| const Element & | find_element (const std::string &element_name) const |
| find element (const) | |
| const Element * | find_element_safe (const std::string &element_name) const |
| find element by pointer - nullptr if not found - searches element_list | |
| const Element * | find_placement_element_safe (const std::string &element_name) const |
| search placement_element | |
| double | property_lookup (const std::string &element_name, const std::string &property_name) const |
| access property of Element with element_name | |
| void | add_element_temp (const std::string &name, int number, bool pushfront, ElementType linetype) |
| add element to temporary element sequence tmp_list | |
| int | copy_element_to_params (const std::string &elementName) |
| copy properties from Element into params, returns element type as integer, returs _NONE if not found | |
| bool | InvalidSymbolName (const std::string &s, std::string &errorReason) |
| Symtab * | symcreate (const std::string &s) |
| create new parser symbol | |
| Symtab * | symlook (const std::string &s) |
| look up parser symbol | |
| void | ClearParams () |
| template<class C , typename T > | |
| void | SetValue (std::string property, T value) |
| Set value for parser class. | |
| template<class C > | |
| double | GetValue (std::string property) |
| Get value for parser class (only for doubles) | |
| template<typename T > | |
| std::list< T > * | ArrayToList (Array *) |
| template<typename T > | |
| void | ExtendValue (const std::string &property, T value) |
| Add value to be extended to object. | |
| void | Overwrite (const std::string &objectName) |
| Overwrite object with current values. | |
| void | AddVariable (std::string *name) |
| Add variable memory to variable list for memory management. | |
| bool | TryPrintingObject (const std::string &objectName) const |
| const FastList< Element > & | GetBeamline () const |
| template<> | |
| Aperture & | GetGlobal () |
| template<> | |
| Aperture * | GetGlobalPtr () |
| template<> | |
| FastList< Aperture > & | GetList () |
| template<> | |
| Atom & | GetGlobal () |
| template<> | |
| Atom * | GetGlobalPtr () |
| template<> | |
| FastList< Atom > & | GetList () |
| template<> | |
| Beam & | GetGlobal () |
| template<> | |
| Beam * | GetGlobalPtr () |
| template<> | |
| BLMPlacement & | GetGlobal () |
| template<> | |
| BLMPlacement * | GetGlobalPtr () |
| template<> | |
| FastList< BLMPlacement > & | GetList () |
| template<> | |
| CavityModel & | GetGlobal () |
| template<> | |
| CavityModel * | GetGlobalPtr () |
| template<> | |
| FastList< CavityModel > & | GetList () |
| template<> | |
| NewColour & | GetGlobal () |
| template<> | |
| NewColour * | GetGlobalPtr () |
| template<> | |
| FastList< NewColour > & | GetList () |
| template<> | |
| CoolingChannel & | GetGlobal () |
| template<> | |
| CoolingChannel * | GetGlobalPtr () |
| template<> | |
| FastList< CoolingChannel > & | GetList () |
| template<> | |
| Crystal & | GetGlobal () |
| template<> | |
| Crystal * | GetGlobalPtr () |
| template<> | |
| FastList< Crystal > & | GetList () |
| template<> | |
| Field & | GetGlobal () |
| template<> | |
| Field * | GetGlobalPtr () |
| template<> | |
| FastList< Field > & | GetList () |
| template<> | |
| Material & | GetGlobal () |
| template<> | |
| Material * | GetGlobalPtr () |
| template<> | |
| FastList< Material > & | GetList () |
| template<> | |
| Laser & | GetGlobal () |
| template<> | |
| Laser * | GetGlobalPtr () |
| template<> | |
| FastList< Laser > & | GetList () |
| template<> | |
| Modulator & | GetGlobal () |
| template<> | |
| Modulator * | GetGlobalPtr () |
| template<> | |
| FastList< Modulator > & | GetList () |
| template<> | |
| Options & | GetGlobal () |
| template<> | |
| Options * | GetGlobalPtr () |
| template<> | |
| Parameters & | GetGlobal () |
| template<> | |
| Parameters * | GetGlobalPtr () |
| template<> | |
| PhysicsBiasing & | GetGlobal () |
| template<> | |
| PhysicsBiasing * | GetGlobalPtr () |
| template<> | |
| FastList< PhysicsBiasing > & | GetList () |
| template<> | |
| Placement & | GetGlobal () |
| template<> | |
| Placement * | GetGlobalPtr () |
| template<> | |
| FastList< Placement > & | GetList () |
| template<> | |
| Query & | GetGlobal () |
| template<> | |
| Query * | GetGlobalPtr () |
| template<> | |
| FastList< Query > & | GetList () |
| template<> | |
| Region & | GetGlobal () |
| template<> | |
| Region * | GetGlobalPtr () |
| template<> | |
| FastList< Region > & | GetList () |
| template<> | |
| SamplerPlacement & | GetGlobal () |
| template<> | |
| SamplerPlacement * | GetGlobalPtr () |
| template<> | |
| FastList< SamplerPlacement > & | GetList () |
| template<> | |
| Scorer & | GetGlobal () |
| template<> | |
| Scorer * | GetGlobalPtr () |
| template<> | |
| FastList< Scorer > & | GetList () |
| template<> | |
| ScorerMesh & | GetGlobal () |
| template<> | |
| ScorerMesh * | GetGlobalPtr () |
| template<> | |
| FastList< ScorerMesh > & | GetList () |
| template<> | |
| Tunnel & | GetGlobal () |
| template<> | |
| Tunnel * | GetGlobalPtr () |
| template<> | |
| FastList< Tunnel > & | GetList () |
| template<> | |
| void | ExtendValue (const std::string &property, double value) |
| template<> | |
| void | ExtendValue (const std::string &property, std::string value) |
| template<> | |
| void | ExtendValue (const std::string &property, Array *value) |
| template<> | |
| void | Add (bool unique, const std::string &className) |
| void | Store (double value) |
| Add value to front of temporary list. | |
| void | Store (const std::string &name) |
| Add value to front of temporary list. | |
| void | FillArray (Array *) |
| void | FillString (Array *) |
| void | PrintBeamline () const |
| Print methods. | |
| void | PrintElements () const |
| Print methods. | |
| void | PrintOptions () const |
| Print methods. | |
Static Public Member Functions | |
| static BDSParser * | Instance (const std::string &filename) |
| Constructor method. | |
| static BDSParser * | Instance () |
| Access method. | |
| static bool | IsInitialised () |
| Returns if parser is initialised. | |
Static Public Member Functions inherited from GMAD::Parser | |
| static Parser * | Instance (const std::string &filename) |
| Constructor method. | |
| static Parser * | Instance () |
| Access method. | |
Protected Member Functions | |
| BDSParser (const std::string &filename) | |
| Constructor from filename. | |
Protected Member Functions inherited from GMAD::Parser | |
| Parser (std::string filename) | |
| Constructor from filename. | |
Static Private Attributes | |
| static BDSParser * | instance = nullptr |
| Instance. | |
Additional Inherited Members | |
Data Fields inherited from GMAD::Parser | |
| std::string | current_line |
| Name of beamline. | |
| std::string | current_start |
| Name of beamline. | |
| std::string | current_end |
| Name of beamline. | |
Protected Attributes inherited from GMAD::Parser | |
| Beam | beam |
| Beam instance;. | |
| Options | options |
| General options. | |
| FastList< Element > | beamline_list |
| Beamline. | |
| FastList< Atom > | atom_list |
| List of parser defined instances of that object. | |
| FastList< NewColour > | colour_list |
| List of parser defined instances of that object. | |
| FastList< Crystal > | crystal_list |
| List of parser defined instances of that object. | |
| FastList< CoolingChannel > | coolingchannel_list |
| List of parser defined instances of that object. | |
| FastList< Field > | field_list |
| List of parser defined instances of that object. | |
| FastList< Material > | material_list |
| List of parser defined instances of that object. | |
| FastList< Query > | query_list |
| List of parser defined instances of that object. | |
| FastList< Region > | region_list |
| List of parser defined instances of that object. | |
| FastList< Tunnel > | tunnel_list |
| List of parser defined instances of that object. | |
| FastList< PhysicsBiasing > | xsecbias_list |
| List of parser defined instances of that object. | |
| FastList< Placement > | placement_list |
| List of parser defined instances of that object. | |
| FastList< Laser > | laser_list |
| List of parser defined instances of that object. | |
| FastList< CavityModel > | cavitymodel_list |
| List of parser defined instances of that object. | |
| FastList< SamplerPlacement > | samplerplacement_list |
| List of parser defined instances of that object. | |
| FastList< Scorer > | scorer_list |
| List of parser defined instances of that object. | |
| FastList< ScorerMesh > | scorermesh_list |
| List of parser defined instances of that object. | |
| FastList< Aperture > | aperture_list |
| List of parser defined instances of that object. | |
| FastList< BLMPlacement > | blm_list |
| List of parser defined instances of that object. | |
| FastList< Modulator > | modulator_list |
| List of parser defined instances of that object. | |
| BDSParser::BDSParser | ( | ) |
Default constructor.
Definition at line 69 of file BDSParser.cc.
References instance.
Referenced by Instance().

|
virtual |
|
explicitprotected |
Constructor from filename.
Definition at line 63 of file BDSParser.cc.
| void BDSParser::AmalgamateBeam | ( | const GMAD::Beam & | beamIn, |
| bool | recreate | ||
| ) |
Amalgamate the input beam definition with the ones stored in teh parser.
Definition at line 75 of file BDSParser.cc.
References GMAD::Beam::Amalgamate(), and GMAD::Parser::beam.
Referenced by BDSIM::Initialise(), and BDSIMLink::Initialise().


| void BDSParser::AmalgamateOptions | ( | const GMAD::Options & | optionsIn | ) |
Amalgamate the input options with the ones stored in the parser.
Definition at line 86 of file BDSParser.cc.
References GMAD::Options::Amalgamate(), GMAD::Parser::options, and GMAD::OptionsBase::recreate.
Referenced by BDSIM::Initialise(), and BDSIMLink::Initialise().


| void BDSParser::CheckOptions | ( | ) |
Check options for consistency. This also checks the beam options.
Definition at line 94 of file BDSParser.cc.
References GMAD::Parser::beam, GMAD::OptionsBase::beamlineS, BDS::IsFinite(), GMAD::OptionsBase::nGenerate, GMAD::Parser::options, and GMAD::BeamBase::S0.
Referenced by BDSIM::Initialise(), and BDSIMLink::Initialise().


|
inline |
Return the parser list of that object.
Definition at line 115 of file BDSParser.hh.
References GMAD::Parser::aperture_list.
Referenced by BDSDetectorConstruction::InitialiseApertures().

|
inline |
Return the parser list of that object.
Definition at line 97 of file BDSParser.hh.
References GMAD::Parser::atom_list.
Referenced by BDSMaterials::PrepareRequiredMaterials().

|
inline |
Return beam non-const. Required when loading a file and need to change beam parameters to match.
Definition at line 60 of file BDSParser.hh.
References GMAD::Parser::beam.
|
inline |
Return beam.
Definition at line 57 of file BDSParser.hh.
References GMAD::Parser::beam.
Referenced by BDSIM::Initialise(), and BDSIMLink::Initialise().

|
inline |
Return bare beam base class.
Definition at line 63 of file BDSParser.hh.
References GMAD::Parser::beam.
Referenced by BDSIM::GeneratePrimariesOnly().

|
inline |
Return biasing list.
Definition at line 93 of file BDSParser.hh.
References GMAD::Parser::xsecbias_list.
Referenced by BDSDetectorConstruction::BuildCrossSectionBias(), BDSDetectorConstruction::BuildPhysicsBias(), and BDSIM::Initialise().

|
inline |
Return the parser list of that object.
Definition at line 98 of file BDSParser.hh.
References GMAD::Parser::xsecbias_list.
|
inline |
Return the parser list of that object.
Definition at line 113 of file BDSParser.hh.
References GMAD::Parser::blm_list.
|
inline |
Return the parser list of that object.
Definition at line 99 of file BDSParser.hh.
References GMAD::Parser::cavitymodel_list.
Referenced by BDSComponentFactory::PrepareCavityModels().

|
inline |
Return the parser list of that object.
Definition at line 100 of file BDSParser.hh.
References GMAD::Parser::colour_list.
Referenced by BDSComponentFactory::PrepareColours().

| GMAD::CoolingChannel BDSParser::GetCoolingChannel | ( | const std::string & | objectName | ) |
Return a cooling channel object by name. Throws an exception if it doesn't exist.
Definition at line 118 of file BDSParser.cc.
References GMAD::Parser::coolingchannel_list.
|
inline |
Return the parser list of that object.
Definition at line 103 of file BDSParser.hh.
References GMAD::Parser::coolingchannel_list.
|
inline |
Return the parser list of that object.
Definition at line 102 of file BDSParser.hh.
References GMAD::Parser::coolingchannel_list.
|
inline |
Return the parser list of that object.
Definition at line 101 of file BDSParser.hh.
References GMAD::Parser::crystal_list.
Referenced by BDSComponentFactory::PrepareCrystals().

|
inline |
Return an element definition. Returns nullptr if not found. Note the element_list is emptied after parsing.
Definition at line 86 of file BDSParser.hh.
References GMAD::Parser::find_element_safe().

|
inline |
Return the parser list of that object.
Definition at line 104 of file BDSParser.hh.
References GMAD::Parser::field_list.
|
inline |
Return the parser list of that object.
Definition at line 105 of file BDSParser.hh.
References GMAD::Parser::laser_list.
Referenced by BDSComponentFactory::PrepareLasers().

|
inline |
Return the parser list of that object.
Definition at line 106 of file BDSParser.hh.
References GMAD::Parser::material_list.
Referenced by BDSMaterials::PrepareRequiredMaterials().

|
inline |
Return the parser list of that object.
Definition at line 114 of file BDSParser.hh.
References GMAD::Parser::modulator_list.
|
inline |
Return options.
Definition at line 51 of file BDSParser.hh.
References GMAD::Parser::options.
Referenced by BDSDetectorConstruction::BuildPhysicsBias(), BDSMaterials::DefineVacuums(), BDSIM::Initialise(), and BDSIMLink::Initialise().

|
inline |
Return bare options base class.
Definition at line 54 of file BDSParser.hh.
References GMAD::Parser::options.
Referenced by BDSIM::GeneratePrimariesOnly().

|
inline |
Return a placement element definition. Returns nullptr if not found. Only searches elements used in the placement.
Definition at line 90 of file BDSParser.hh.
References GMAD::Parser::find_placement_element_safe().
Referenced by BDS::BuildPlacementGeometry().


|
inline |
Return the parser list of that object.
Definition at line 107 of file BDSParser.hh.
References GMAD::Parser::placement_list.
Referenced by BDSDetectorConstruction::BuildBeamlines(), BDSDetectorConstruction::CountPlacementFields(), and BDS::NumberOfExtraWorldsRequired().

|
inline |
Return the parser list of that object.
Definition at line 108 of file BDSParser.hh.
References GMAD::Parser::query_list.
Referenced by BDSDetectorConstruction::PrepareFieldQueries().

|
inline |
Return the parser list of that object.
Definition at line 109 of file BDSParser.hh.
References GMAD::Parser::region_list.
Referenced by BDSDetectorConstruction::InitialiseRegions().

|
inline |
Return the parser list of that object.
Definition at line 110 of file BDSParser.hh.
References GMAD::Parser::samplerplacement_list.
Referenced by BDSDetectorConstruction::CalculateExtentOfSamplerPlacements(), BDSParallelWorldSampler::Construct(), and BDSDetectorConstruction::UpdateSamplerDiameterAndCountSamplers().

|
inline |
Return the parser list of that object.
Definition at line 112 of file BDSParser.hh.
References GMAD::Parser::scorermesh_list.
Referenced by BDSDetectorConstruction::CalculateExtentOfScorerMeshes(), and BDSDetectorConstruction::ConstructScoringMeshes().

|
inline |
Return the parser list of that object.
Definition at line 111 of file BDSParser.hh.
References GMAD::Parser::scorer_list.
Referenced by BDS::BuildBLMs(), and BDSDetectorConstruction::ConstructScoringMeshes().

|
inline |
Return sequence.
Definition at line 82 of file BDSParser.hh.
References GMAD::Parser::get_sequence().
Referenced by BDSDetectorConstruction::BuildBeamlines(), and BDS::NumberOfExtraWorldsRequired().


|
static |
Access method.
Definition at line 30 of file BDSParser.cc.
References instance.
Referenced by BDSFieldFactory::BDSFieldFactory(), BDSDetectorConstruction::BuildBeamlines(), BDS::BuildBLMs(), BDSDetectorConstruction::BuildCrossSectionBias(), BDSDetectorConstruction::BuildPhysicsBias(), BDS::BuildPlacementGeometry(), BDSDetectorConstruction::CalculateExtentOfSamplerPlacements(), BDSDetectorConstruction::CalculateExtentOfScorerMeshes(), BDSDetectorConstruction::Construct(), BDSParallelWorldSampler::Construct(), BDSDetectorConstruction::ConstructScoringMeshes(), BDSDetectorConstruction::CountPlacementFields(), BDSMaterials::DefineVacuums(), BDSIM::GeneratePrimariesOnly(), BDSIM::Initialise(), BDSIMLink::Initialise(), BDSDetectorConstruction::InitialiseApertures(), BDSDetectorConstruction::InitialiseRegions(), BDSGlobalConstants::Instance(), BDS::NumberOfExtraWorldsRequired(), BDSComponentFactory::PrepareCavityModels(), BDSComponentFactory::PrepareColours(), BDSComponentFactory::PrepareCrystals(), BDSDetectorConstruction::PrepareExtraSamplerSDs(), BDSDetectorConstruction::PrepareFieldQueries(), BDSComponentFactory::PrepareLasers(), BDSMaterials::PrepareRequiredMaterials(), and BDSDetectorConstruction::UpdateSamplerDiameterAndCountSamplers().

|
static |
Constructor method.
Definition at line 40 of file BDSParser.cc.
References BDSParser(), and instance.

|
static |
Returns if parser is initialised.
Definition at line 51 of file BDSParser.cc.
References instance.
Referenced by BDSFieldFactory::BDSFieldFactory(), BDSMaterials::DefineVacuums(), and BDSGlobalConstants::Instance().

|
staticprivate |
Instance.
Definition at line 128 of file BDSParser.hh.
Referenced by BDSParser(), Instance(), Instance(), IsInitialised(), and ~BDSParser().