#include <AlignableDetOrUnitPtr.h>
Public Member Functions | |
Alignable * | alignable () |
const Alignable * | alignable () const |
AlignableBeamSpot * | alignableBeamSpot () |
const AlignableBeamSpot * | alignableBeamSpot () const |
AlignableDet * | alignableDet () |
const AlignableDet * | alignableDet () const |
AlignableDetOrUnitPtr (AlignableBeamSpot *aliBeamSpot) | |
Constructor from AlignableBeamSpot* (non-explicit: for automatic conversions) More... | |
AlignableDetOrUnitPtr (AlignableDet *aliDet) | |
Constructor from AlignableDet* (non-explicit: for automatic conversions) More... | |
AlignableDetOrUnitPtr (AlignableDetUnit *aliDetUnit) | |
Constructor from AlignableDetUnit* (non-explicit: for automatic conversions) More... | |
AlignableDetUnit * | alignableDetUnit () |
const AlignableDetUnit * | alignableDetUnit () const |
const AlignmentPositionError * | alignmentPositionError () const |
alignment position error (see comments in specific classes) More... | |
bool | isNull () const |
check for empty pointer More... | |
operator Alignable * () | |
operator const Alignable * () const | |
Alignable * | operator-> () |
const Alignable * | operator-> () const |
AlignableDetOrUnitPtr & | operator= (AlignableBeamSpot *aliBeamSpot) |
AlignableDetOrUnitPtr & | operator= (AlignableDet *aliDet) |
AlignableDetOrUnitPtr & | operator= (AlignableDetUnit *aliDetUnit) |
~AlignableDetOrUnitPtr () | |
Non-virtual destructor: do not use as base class. More... | |
Private Attributes | |
AlignableBeamSpot * | theAliBeamSpot |
Pointer to Alignable if it is the beam spot. More... | |
AlignableDet * | theAliDet |
Pointer to Alignable if it is a Det. More... | |
AlignableDetUnit * | theAliDetUnit |
Pointer to Alignable if it is a DetUnit. More... | |
Class to hold either a pointer to an AlignableDet or to an AlignableDetUnit. As such it is like a pointer to an Alignable of that hierarchy level on which hits can exists. Therefore it should be used whenever it should be ensured by C++ type safety that a lowest level Alignable* is dealt with.
Conversion and '->' operators exist to use this class as a pointer to the base class Alignable. On the other hand, the accessors alignableDet() and alignableDetUnit() can be used to check which concrete type it is.
Since this class is very light weighted, it can be used by value.
Original author: Gero Flucke, April 2007
(last update by
)
Definition at line 30 of file AlignableDetOrUnitPtr.h.
|
inline |
Constructor from AlignableBeamSpot* (non-explicit: for automatic conversions)
Definition at line 35 of file AlignableDetOrUnitPtr.h.
|
inline |
Constructor from AlignableDet* (non-explicit: for automatic conversions)
Definition at line 39 of file AlignableDetOrUnitPtr.h.
|
inline |
Constructor from AlignableDetUnit* (non-explicit: for automatic conversions)
Definition at line 43 of file AlignableDetOrUnitPtr.h.
|
inline |
Non-virtual destructor: do not use as base class.
Definition at line 46 of file AlignableDetOrUnitPtr.h.
|
inline |
Definition at line 62 of file AlignableDetOrUnitPtr.h.
Referenced by CSCAlignmentCorrections::applyAlignment(), and CSCChamberFitter::radiusCorrection().
|
inline |
Definition at line 63 of file AlignableDetOrUnitPtr.h.
|
inline |
Definition at line 66 of file AlignableDetOrUnitPtr.h.
References theAliBeamSpot.
|
inline |
Definition at line 67 of file AlignableDetOrUnitPtr.h.
References theAliBeamSpot.
|
inline |
Definition at line 68 of file AlignableDetOrUnitPtr.h.
References theAliDet.
|
inline |
Definition at line 69 of file AlignableDetOrUnitPtr.h.
References theAliDet.
|
inline |
Definition at line 70 of file AlignableDetOrUnitPtr.h.
References theAliDetUnit.
|
inline |
Definition at line 71 of file AlignableDetOrUnitPtr.h.
References theAliDetUnit.
const AlignmentPositionError * AlignableDetOrUnitPtr::alignmentPositionError | ( | ) | const |
alignment position error (see comments in specific classes)
Definition at line 36 of file AlignableDetOrUnitPtr.cc.
References AlignableDet::alignmentPositionError(), AlignableBeamSpot::alignmentPositionError(), AlignableDetUnit::alignmentPositionError(), theAliBeamSpot, theAliDet, and theAliDetUnit.
Referenced by isNull().
|
inline |
check for empty pointer
Definition at line 74 of file AlignableDetOrUnitPtr.h.
References alignmentPositionError(), theAliBeamSpot, theAliDet, and theAliDetUnit.
AlignableDetOrUnitPtr::operator Alignable * | ( | ) |
Definition at line 20 of file AlignableDetOrUnitPtr.cc.
AlignableDetOrUnitPtr::operator const Alignable * | ( | ) | const |
Definition at line 28 of file AlignableDetOrUnitPtr.cc.
|
inline |
Definition at line 59 of file AlignableDetOrUnitPtr.h.
|
inline |
Definition at line 60 of file AlignableDetOrUnitPtr.h.
|
inline |
Definition at line 48 of file AlignableDetOrUnitPtr.h.
References theAliBeamSpot, theAliDet, and theAliDetUnit.
|
inline |
Definition at line 50 of file AlignableDetOrUnitPtr.h.
References theAliBeamSpot, theAliDet, and theAliDetUnit.
|
inline |
Definition at line 52 of file AlignableDetOrUnitPtr.h.
References theAliBeamSpot, theAliDet, and theAliDetUnit.
|
private |
Pointer to Alignable if it is the beam spot.
Definition at line 82 of file AlignableDetOrUnitPtr.h.
Referenced by alignableBeamSpot(), alignmentPositionError(), isNull(), and operator=().
|
private |
Pointer to Alignable if it is a Det.
Definition at line 83 of file AlignableDetOrUnitPtr.h.
Referenced by alignableDet(), alignmentPositionError(), isNull(), and operator=().
|
private |
Pointer to Alignable if it is a DetUnit.
Definition at line 84 of file AlignableDetOrUnitPtr.h.
Referenced by alignableDetUnit(), alignmentPositionError(), isNull(), and operator=().