OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
BGeometryBase Class Referenceabstract

Abstract base class for accelerator geometry classes. More...

#include <Geometry.h>

Inheritance diagram for BGeometryBase:
Collaboration diagram for BGeometryBase:

Public Member Functions

 BGeometryBase ()
 BGeometryBase (const BGeometryBase &right)
virtual ~BGeometryBase ()
const BGeometryBaseoperator= (const BGeometryBase &right)
virtual double getArcLength () const =0
 Get arc length.
virtual double getElementLength () const =0
 Get geometry length.
virtual void setElementLength (double length)
 Set geometry length.
virtual double getOrigin () const
 Get origin position.
virtual double getEntrance () const
 Get entrance position.
virtual double getExit () const
 Get exit position.
virtual Euclid3D getTransform (double fromS, double toS) const =0
 Get transform.
virtual Euclid3D getTransform (double s) const
 Get transform.
virtual Euclid3D getTotalTransform () const
 Get transform.
virtual Euclid3D getEntranceFrame () const
 Get transform.
virtual Euclid3D getExitFrame () const
 Get transform.
virtual Euclid3D getEntrancePatch () const
 Get patch.
virtual Euclid3D getExitPatch () const
 Get patch.

Detailed Description

Abstract base class for accelerator geometry classes.

Definition at line 43 of file Geometry.h.

Constructor & Destructor Documentation

◆ BGeometryBase() [1/2]

BGeometryBase::BGeometryBase ( )
inline

Definition at line 129 of file Geometry.h.

Referenced by BGeometryBase(), Euclid3DGeometry::Euclid3DGeometry(), Euclid3DGeometry::Euclid3DGeometry(), NullGeometry::NullGeometry(), operator=(), PlanarArcGeometry::PlanarArcGeometry(), StraightGeometry::StraightGeometry(), and VarRadiusGeometry::VarRadiusGeometry().

Here is the caller graph for this function:

◆ BGeometryBase() [2/2]

BGeometryBase::BGeometryBase ( const BGeometryBase & right)
inline

Definition at line 132 of file Geometry.h.

References BGeometryBase().

Here is the call graph for this function:

◆ ~BGeometryBase()

BGeometryBase::~BGeometryBase ( )
virtual

Definition at line 28 of file Geometry.cpp.

Member Function Documentation

◆ getArcLength()

virtual double BGeometryBase::getArcLength ( ) const
pure virtual

Get arc length.

Implemented in BeamlineGeometry, Euclid3DGeometry, NullGeometry, PlanarArcGeometry, RBendGeometry, StraightGeometry, and VarRadiusGeometry.

Referenced by ElementBase::getArcLength(), getExit(), and getOrigin().

Here is the caller graph for this function:

◆ getElementLength()

virtual double BGeometryBase::getElementLength ( ) const
pure virtual

Get geometry length.

Implemented in BeamlineGeometry, Euclid3DGeometry, NullGeometry, PlanarArcGeometry, StraightGeometry, and VarRadiusGeometry.

Referenced by ElementBase::getElementLength().

Here is the caller graph for this function:

◆ getEntrance()

double BGeometryBase::getEntrance ( ) const
virtual

Get entrance position.

Reimplemented in BeamlineGeometry, PlanarArcGeometry, and StraightGeometry.

Definition at line 41 of file Geometry.cpp.

References getOrigin().

Referenced by ElementBase::getEntrance(), getEntranceFrame(), VarRadiusGeometry::getEntranceFrame(), and getTotalTransform().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getEntranceFrame()

Euclid3D BGeometryBase::getEntranceFrame ( ) const
virtual

Get transform.

Reimplemented in BeamlineGeometry, PlanarArcGeometry, RBendGeometry, StraightGeometry, and VarRadiusGeometry.

Definition at line 61 of file Geometry.cpp.

References getEntrance(), and getTransform().

Referenced by ElementBase::getEntranceFrame().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getEntrancePatch()

Euclid3D BGeometryBase::getEntrancePatch ( ) const
virtual

Get patch.

Reimplemented in RBendGeometry.

Definition at line 71 of file Geometry.cpp.

References Euclid3D::identity().

Referenced by ElementBase::getEntrancePatch().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getExit()

double BGeometryBase::getExit ( ) const
virtual

Get exit position.

Reimplemented in BeamlineGeometry, PlanarArcGeometry, and StraightGeometry.

Definition at line 46 of file Geometry.cpp.

References getArcLength(), and getOrigin().

Referenced by ElementBase::getExit(), getExitFrame(), VarRadiusGeometry::getExitFrame(), and getTotalTransform().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getExitFrame()

Euclid3D BGeometryBase::getExitFrame ( ) const
virtual

Get transform.

Reimplemented in BeamlineGeometry, PlanarArcGeometry, RBendGeometry, StraightGeometry, and VarRadiusGeometry.

Definition at line 66 of file Geometry.cpp.

References getExit(), and getTransform().

Referenced by ElementBase::getExitFrame().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getExitPatch()

Euclid3D BGeometryBase::getExitPatch ( ) const
virtual

Get patch.

Reimplemented in RBendGeometry.

Definition at line 76 of file Geometry.cpp.

References Euclid3D::identity().

Referenced by ElementBase::getExitPatch().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getOrigin()

double BGeometryBase::getOrigin ( ) const
virtual

Get origin position.

Reimplemented in BeamlineGeometry, NullGeometry, PlanarArcGeometry, and StraightGeometry.

Definition at line 36 of file Geometry.cpp.

References getArcLength().

Referenced by getEntrance(), VarRadiusGeometry::getEntranceFrame(), getExit(), VarRadiusGeometry::getExitFrame(), and ElementBase::getOrigin().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getTotalTransform()

Euclid3D BGeometryBase::getTotalTransform ( ) const
virtual

Get transform.

Reimplemented in BeamlineGeometry, Euclid3DGeometry, PlanarArcGeometry, RBendGeometry, and StraightGeometry.

Definition at line 51 of file Geometry.cpp.

References getEntrance(), getExit(), and getTransform().

Referenced by Ring::appendElement(), and ElementBase::getTotalTransform().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getTransform() [1/2]

virtual Euclid3D BGeometryBase::getTransform ( double fromS,
double toS ) const
pure virtual

Get transform.

Implemented in BeamlineGeometry, Euclid3DGeometry, NullGeometry, PlanarArcGeometry, StraightGeometry, and VarRadiusGeometry.

Referenced by getEntranceFrame(), getExitFrame(), getTotalTransform(), getTransform(), ElementBase::getTransform(), and ElementBase::getTransform().

Here is the caller graph for this function:

◆ getTransform() [2/2]

Euclid3D BGeometryBase::getTransform ( double s) const
virtual

Get transform.

Reimplemented in BeamlineGeometry, Euclid3DGeometry, NullGeometry, PlanarArcGeometry, StraightGeometry, and VarRadiusGeometry.

Definition at line 56 of file Geometry.cpp.

References getTransform().

Here is the call graph for this function:

◆ operator=()

const BGeometryBase & BGeometryBase::operator= ( const BGeometryBase & right)
inline

Definition at line 135 of file Geometry.h.

References BGeometryBase().

Here is the call graph for this function:

◆ setElementLength()

void BGeometryBase::setElementLength ( double length)
virtual

Set geometry length.

Reimplemented in Euclid3DGeometry, PlanarArcGeometry, StraightGeometry, and VarRadiusGeometry.

Definition at line 32 of file Geometry.cpp.

Referenced by ElementBase::setElementLength().

Here is the caller graph for this function:

The documentation for this class was generated from the following files: