|
OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
|
Abstract base class for accelerator geometry classes. More...
#include <Geometry.h>

Public Member Functions | |
| BGeometryBase () | |
| BGeometryBase (const BGeometryBase &right) | |
| virtual | ~BGeometryBase () |
| const BGeometryBase & | operator= (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... | |
Abstract base class for accelerator geometry classes.
Definition at line 43 of file Geometry.h.
|
inline |
Definition at line 129 of file Geometry.h.
|
inline |
Definition at line 132 of file Geometry.h.
|
virtual |
Definition at line 28 of file Geometry.cpp.
|
pure virtual |
Get arc length.
Implemented in Euclid3DGeometry, NullGeometry, PlanarArcGeometry, RBendGeometry, StraightGeometry, VarRadiusGeometry, and BeamlineGeometry.
Referenced by ElementBase::getArcLength(), getExit(), and getOrigin().
|
pure virtual |
Get geometry length.
Implemented in Euclid3DGeometry, NullGeometry, PlanarArcGeometry, StraightGeometry, VarRadiusGeometry, and BeamlineGeometry.
Referenced by ElementBase::getElementLength().
|
virtual |
Get entrance position.
Reimplemented in PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.
Definition at line 41 of file Geometry.cpp.
References getOrigin().
Referenced by ElementBase::getEntrance(), getEntranceFrame(), VarRadiusGeometry::getEntranceFrame(), and getTotalTransform().

|
virtual |
Get transform.
Reimplemented in PlanarArcGeometry, RBendGeometry, StraightGeometry, VarRadiusGeometry, and BeamlineGeometry.
Definition at line 61 of file Geometry.cpp.
References getEntrance(), and getTransform().
Referenced by ElementBase::getEntranceFrame().

|
virtual |
Get patch.
Reimplemented in RBendGeometry.
Definition at line 71 of file Geometry.cpp.
References Euclid3D::identity().
Referenced by ElementBase::getEntrancePatch().

|
virtual |
Get exit position.
Reimplemented in PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.
Definition at line 46 of file Geometry.cpp.
References getArcLength(), and getOrigin().
Referenced by ElementBase::getExit(), getExitFrame(), VarRadiusGeometry::getExitFrame(), and getTotalTransform().

|
virtual |
Get transform.
Reimplemented in PlanarArcGeometry, RBendGeometry, StraightGeometry, VarRadiusGeometry, and BeamlineGeometry.
Definition at line 66 of file Geometry.cpp.
References getExit(), and getTransform().
Referenced by ElementBase::getExitFrame().

|
virtual |
Get patch.
Reimplemented in RBendGeometry.
Definition at line 76 of file Geometry.cpp.
References Euclid3D::identity().
Referenced by ElementBase::getExitPatch().

|
virtual |
Get origin position.
Reimplemented in NullGeometry, PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.
Definition at line 36 of file Geometry.cpp.
References getArcLength().
Referenced by getEntrance(), VarRadiusGeometry::getEntranceFrame(), getExit(), VarRadiusGeometry::getExitFrame(), and ElementBase::getOrigin().

|
virtual |
Get transform.
Reimplemented in Euclid3DGeometry, PlanarArcGeometry, RBendGeometry, StraightGeometry, and BeamlineGeometry.
Definition at line 51 of file Geometry.cpp.
References getEntrance(), getExit(), and getTransform().
Referenced by Ring::appendElement(), and ElementBase::getTotalTransform().

|
pure virtual |
Get transform.
Implemented in Euclid3DGeometry, NullGeometry, PlanarArcGeometry, StraightGeometry, VarRadiusGeometry, and BeamlineGeometry.
Referenced by getEntranceFrame(), getExitFrame(), getTotalTransform(), ElementBase::getTransform(), and getTransform().
|
virtual |
Get transform.
Reimplemented in NullGeometry, PlanarArcGeometry, StraightGeometry, and BeamlineGeometry.
Definition at line 56 of file Geometry.cpp.
References getTransform().

|
inline |
Definition at line 135 of file Geometry.h.
|
virtual |
Set geometry length.
Reimplemented in Euclid3DGeometry, StraightGeometry, VarRadiusGeometry, and PlanarArcGeometry.
Definition at line 32 of file Geometry.cpp.
Referenced by ElementBase::setElementLength().