22#include "BDSAcceleratorComponent.hh"
Abstract class that represents a component of an accelerator.
std::list< std::string > biasVacuumList
Copy of bias list from parser for this particular component.
const G4String name
Const protected member variable that may not be changed by derived classes.
std::list< std::string > biasMaterialLVList
Copy of bias list from parser for this particular component.
G4String region
Protected member variable that can be modified by derived classes.
std::list< std::string > biasMaterialList
Copy of bias list from parser for this particular component.
A class that hold multiple accelerator components.
virtual void SetBiasVacuumList(const std::list< std::string > &biasVacuumList)
Copy the bias list to each component.
virtual void BuildContainerLogicalVolume()
define pure virtual method
BDSLineVector::const_iterator const_iterator
Iterator mechanics.
virtual std::set< G4LogicalVolume * > GetAcceleratorVacuumLogicalVolumes() const
Re-implement from BDSAcceleratorComponent.
iterator begin()
Iterator mechanics.
BDSLine & operator=(const BDSLine &)=delete
Assignment and copy constructor not implemented nor used.
virtual void SetBiasMaterialList(const std::list< std::string > &biasMaterialList)
Copy the bias list to each component.
virtual void Initialise()
virtual void SetRegion(const G4String ®ion)
Set the region name for each component.
virtual std::set< G4LogicalVolume * > GetAcceleratorMaterialLogicalVolumes() const
Re-implement from BDSAcceleratorComponent.
iterator end()
Iterator mechanics.
const BDSAcceleratorComponent * back() const
Iterator mechanics.
virtual void SetBiasMaterialLVList(const std::list< std::string > &biasMaterialLVList)
Copy the bias list to each component.
BDSLineVector line
Member vector to store components.
std::vector< BDSAcceleratorComponent * > BDSLineVector
BDSAcceleratorComponent *const & operator[](G4int index) const
Accessor for part - exposes functionality of the vector for iteration by index.
const_iterator begin() const
Iterator mechanics.
void AddComponent(BDSAcceleratorComponent *component)
Add a component to the line.
G4bool empty() const
Iterator mechanics.
virtual G4double GetArcLength() const
Override base class method as BDSAcceleratorComponent::chordLength etc variables are const and we app...
BDSLine(BDSLine &)=delete
Assignment and copy constructor not implemented nor used.
const_iterator end() const
Iterator mechanics.
virtual G4double GetChordLength() const
Override base class method as BDSAcceleratorComponent::chordLength etc variables are const and we app...
size_t size() const
Size of line.
BDSLineVector::iterator iterator
Iterator mechanics.