OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
Public Member Functions | List of all members
BGeometryBase Class Referenceabstract

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

#include <Geometry.h>

Inheritance diagram for BGeometryBase:
Inheritance graph
[legend]

Public Member Functions

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

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.

◆ BGeometryBase() [2/2]

BGeometryBase::BGeometryBase ( const BGeometryBase right)
inline

Definition at line 132 of file Geometry.h.

◆ ~BGeometryBase()

BGeometryBase::~BGeometryBase ( )
virtual

Definition at line 28 of file Geometry.cpp.

Member Function Documentation

◆ getArcLength()

virtual double BGeometryBase::getArcLength ( ) const
pure virtual

◆ getElementLength()

virtual double BGeometryBase::getElementLength ( ) const
pure virtual

◆ getEntrance()

double BGeometryBase::getEntrance ( ) const
virtual

Get entrance position.

Reimplemented in BeamlineGeometry, StraightGeometry, and PlanarArcGeometry.

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:

◆ getEntranceFrame()

Euclid3D BGeometryBase::getEntranceFrame ( ) const
virtual

Get transform.

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

Definition at line 61 of file Geometry.cpp.

References getEntrance(), and getTransform().

Referenced by ElementBase::getEntranceFrame().

Here is the call 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:

◆ getExit()

double BGeometryBase::getExit ( ) const
virtual

Get exit position.

Reimplemented in BeamlineGeometry, StraightGeometry, and PlanarArcGeometry.

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:

◆ getExitFrame()

Euclid3D BGeometryBase::getExitFrame ( ) const
virtual

Get transform.

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

Definition at line 66 of file Geometry.cpp.

References getExit(), and getTransform().

Referenced by ElementBase::getExitFrame().

Here is the call 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:

◆ getOrigin()

double BGeometryBase::getOrigin ( ) const
virtual

Get origin position.

Reimplemented in BeamlineGeometry, StraightGeometry, PlanarArcGeometry, and NullGeometry.

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:

◆ getTotalTransform()

Euclid3D BGeometryBase::getTotalTransform ( ) const
virtual

Get transform.

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

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:

◆ getTransform() [1/2]

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

◆ getTransform() [2/2]

Euclid3D BGeometryBase::getTransform ( double  s) const
virtual

Get transform.

Reimplemented in BeamlineGeometry, StraightGeometry, PlanarArcGeometry, and NullGeometry.

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.

◆ setElementLength()

void BGeometryBase::setElementLength ( double  length)
virtual

Set geometry length.

Reimplemented in PlanarArcGeometry, VarRadiusGeometry, StraightGeometry, and Euclid3DGeometry.

Definition at line 32 of file Geometry.cpp.

Referenced by ElementBase::setElementLength().


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