BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
Interface class the developer should derive to construct their element. More...
#include <BDSComponentConstructor.hh>
Public Member Functions | |
virtual BDSAcceleratorComponent * | Construct (GMAD::Element const *elementIn, GMAD::Element const *prevElementIn, GMAD::Element const *nextElementIn, G4double currentArcLengthIn, G4double brhoIn, G4double beta0In)=0 |
Interface class the developer should derive to construct their element.
When creating a custom beam line component that inherits BDSAcceleratorComponent, the developer should also create a class that inherits this one. This will implement the one pure virtual method Construct() that will specify how to construct their component from the parser element class (GMAD::Element) provided by the parser.
One BDSComponentConstructer per one class that inherits BDSAcceleratorComponent.
Definition at line 43 of file BDSComponentConstructor.hh.
|
inline |
Definition at line 46 of file BDSComponentConstructor.hh.
|
inlinevirtual |
Definition at line 47 of file BDSComponentConstructor.hh.
|
pure virtual |
Construct an instance of the user implement component. You get access to the previous current and next elements from the parser in case of angled faces etc. The current cumulative arc length allows calculation of the phase with respect to the beginning of the beam line. The developer need not use all of the supplied parameters in their implementation.