#include <RKLocalFieldProvider.h>
Public Types | |
typedef GloballyPositioned< float > | Frame |
typedef Frame::GlobalPoint | GlobalPoint |
typedef Frame::GlobalVector | GlobalVector |
typedef Frame::LocalPoint | LocalPoint |
typedef Frame::LocalVector | LocalVector |
typedef Frame::PositionType | Position |
typedef Frame::RotationType | Rotation |
typedef GlobalVector::BasicVectorType | Vector |
Public Member Functions | |
const Frame & | frame () const |
The reference frame in which the field is defined. | |
Vector | inTesla (double x, double y, double z) const |
Vector | inTesla (const Vector &v) const |
Vector | inTesla (const LocalPoint &lp) const |
the argument lp is in the local frame specified in the constructor | |
RKLocalFieldProvider (const MagVolume &vol, const Frame &frame) | |
Local field access to the MagVolume field, transformed to the "frame" frame. | |
RKLocalFieldProvider (const MagVolume &vol) | |
Local field access to the MagVolume field, in the MagVolume frame. | |
Private Attributes | |
const Frame & | theFrame |
const MagVolume & | theVolume |
bool | transform_ |
Definition at line 9 of file RKLocalFieldProvider.h.
typedef GloballyPositioned<float> RKLocalFieldProvider::Frame |
Definition at line 12 of file RKLocalFieldProvider.h.
Definition at line 14 of file RKLocalFieldProvider.h.
Definition at line 13 of file RKLocalFieldProvider.h.
Definition at line 16 of file RKLocalFieldProvider.h.
Definition at line 15 of file RKLocalFieldProvider.h.
Definition at line 17 of file RKLocalFieldProvider.h.
Definition at line 18 of file RKLocalFieldProvider.h.
Definition at line 19 of file RKLocalFieldProvider.h.
RKLocalFieldProvider::RKLocalFieldProvider | ( | const MagVolume & | vol | ) | [explicit] |
Local field access to the MagVolume field, in the MagVolume frame.
Definition at line 5 of file RKLocalFieldProvider.cc.
: theVolume( vol), theFrame(vol), transform_(false) {}
Local field access to the MagVolume field, transformed to the "frame" frame.
Definition at line 8 of file RKLocalFieldProvider.cc.
: theVolume( vol), theFrame(frame), transform_(true) {}
const Frame& RKLocalFieldProvider::frame | ( | ) | const [inline] |
The reference frame in which the field is defined.
Definition at line 39 of file RKLocalFieldProvider.h.
{return theFrame;}
Vector RKLocalFieldProvider::inTesla | ( | double | x, |
double | y, | ||
double | z | ||
) | const [inline] |
Definition at line 30 of file RKLocalFieldProvider.h.
{ return inTesla( LocalPoint(x,y,z)); }
Definition at line 34 of file RKLocalFieldProvider.h.
{ return inTesla( LocalPoint(v)); }
RKLocalFieldProvider::Vector RKLocalFieldProvider::inTesla | ( | const LocalPoint & | lp | ) | const |
the argument lp is in the local frame specified in the constructor
Definition at line 11 of file RKLocalFieldProvider.cc.
References PV3DBase< T, PVType, FrameType >::basicVector(), MagVolume::fieldInTesla(), theFrame, theVolume, GloballyPositioned< T >::toGlobal(), GloballyPositioned< T >::toLocal(), transform_, and unlikely.
Referenced by PathToPlane2Order::operator()().
{ if unlikely(transform_) { LocalPoint vlp( theVolume.toLocal( theFrame.toGlobal( lp))); return theFrame.toLocal( theVolume.toGlobal( theVolume.fieldInTesla( vlp))).basicVector(); } return theVolume.fieldInTesla( lp).basicVector(); }
const Frame& RKLocalFieldProvider::theFrame [private] |
Definition at line 44 of file RKLocalFieldProvider.h.
Referenced by inTesla().
const MagVolume& RKLocalFieldProvider::theVolume [private] |
Definition at line 43 of file RKLocalFieldProvider.h.
Referenced by inTesla().
bool RKLocalFieldProvider::transform_ [private] |
Definition at line 45 of file RKLocalFieldProvider.h.
Referenced by inTesla().