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.
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.
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.