casa
$Rev:20696$
|
Reference frame for physical measures. More...
#include <MeasRef.h>
Classes | |
class | RefRep |
Representation class. More... | |
Public Member Functions | |
MeasRef () | |
Construct an empty MeasRef. | |
MeasRef (const MeasRef< Ms > &other) | |
Copy constructor. | |
MeasRef & | operator= (const MeasRef< Ms > &other) |
Copy assignment. | |
MeasRef (const uInt tp) | |
Construct a reference with specified type, offset and Frame. | |
MeasRef (const uInt tp, const Ms &ep) | |
MeasRef (const uInt tp, const MeasFrame &mf) | |
MeasRef (const uInt tp, const MeasFrame &mf, const Ms &ep) | |
~MeasRef () | |
Bool | operator== (const MeasRef< Ms > &other) const |
Check if same MeasRef. | |
Bool | operator!= (const MeasRef< Ms > &other) const |
Check if unequal MeasRef. | |
virtual Bool | empty () const |
Check if empty reference. | |
virtual uInt | getType () const |
Return the type of the reference Caution: the following should really be (and should be interpreted as), but cannot create a virtual function: Ms::Types getType(); | |
virtual MeasFrame & | getFrame () |
Return the frame of reference. | |
virtual const Measure * | offset () const |
Return the offset (or 0) | |
virtual void | setType (uInt tp) |
Set the type. | |
virtual void | set (uInt tp) |
void | set (const Ms &ep) |
Set a new offset. | |
void | set (const Measure &ep) |
Set a new offset (for internal use only) | |
virtual void | set (const MeasFrame &mf) |
Set a new frame. | |
virtual void | print (ostream &os) const |
Print a Measure. | |
Static Public Member Functions | |
static const String & | showMe () |
Check the type of Measure the reference can be used for. | |
static const MeasFrame & | framePosition (MRBase &ref1, MRBase &ref2) |
Return the first frame which has specified information. | |
static const MeasFrame & | frameEpoch (MRBase &ref1, MRBase &ref2) |
static const MeasFrame & | frameDirection (MRBase &ref1, MRBase &ref2) |
static const MeasFrame & | frameRadialVelocity (MRBase &ref1, MRBase &ref2) |
static const MeasFrame & | frameComet (MRBase &ref1, MRBase &ref2) |
Private Member Functions | |
void | create () |
Create an instance of MeasRef. | |
MeasRef | copy () |
Copy an instance. | |
Private Attributes | |
CountedPtr< RefRep > | rep_p |
Reference frame for physical measures.
Public interface
<h3>Review Status</h3><dl><dt>Reviewed By:<dd>UNKNOWN<dt>Date Reviewed:<dd>before2004/08/25<dt>Test programs:<dd>tMeasure</dl>
From Measure and Reference frame
MeasRef specifies the reference frame for a physical quantity specified by one of the derived Measure classes (e.g. MEpoch ). It is derived from MRBase , which describes the class.
MeasRef containres are created using the Measure::Ref
class (e.g. MDirection::Ref
).
See Measure for an example
To gather all reference frame information in the one class.
casa::MeasRef< Ms >::MeasRef | ( | ) |
Construct an empty MeasRef.
I.e. it will have a standard, default, type; no offsets and Frame.
casa::MeasRef< Ms >::MeasRef | ( | const MeasRef< Ms > & | other | ) |
Copy constructor.
casa::MeasRef< Ms >::MeasRef | ( | const uInt | tp | ) | [explicit] |
Construct a reference with specified type, offset and Frame.
Caution: The following should really be (and should still be called as), but compiler does not accept it, due to incomplete definition when called in MeasBase:
MeasRef(Ms::Types tp);
Furthermore, default arguments are not supported with templated classes:
casa::MeasRef< Ms >::MeasRef | ( | const uInt | tp, |
const Ms & | ep | ||
) |
casa::MeasRef< Ms >::MeasRef | ( | const uInt | tp, |
const MeasFrame & | mf | ||
) |
casa::MeasRef< Ms >::MeasRef | ( | const uInt | tp, |
const MeasFrame & | mf, | ||
const Ms & | ep | ||
) |
casa::MeasRef< Ms >::~MeasRef | ( | ) |
MeasRef casa::MeasRef< Ms >::copy | ( | ) | [private] |
Copy an instance.
void casa::MeasRef< Ms >::create | ( | ) | [private] |
Create an instance of MeasRef.
virtual Bool casa::MeasRef< Ms >::empty | ( | ) | const [virtual] |
Check if empty reference.
Implements casa::MRBase.
static const MeasFrame& casa::MeasRef< Ms >::frameComet | ( | MRBase & | ref1, |
MRBase & | ref2 | ||
) | [static] |
static const MeasFrame& casa::MeasRef< Ms >::frameDirection | ( | MRBase & | ref1, |
MRBase & | ref2 | ||
) | [static] |
static const MeasFrame& casa::MeasRef< Ms >::frameEpoch | ( | MRBase & | ref1, |
MRBase & | ref2 | ||
) | [static] |
static const MeasFrame& casa::MeasRef< Ms >::framePosition | ( | MRBase & | ref1, |
MRBase & | ref2 | ||
) | [static] |
Return the first frame which has specified information.
Checking is done in argument order.
static const MeasFrame& casa::MeasRef< Ms >::frameRadialVelocity | ( | MRBase & | ref1, |
MRBase & | ref2 | ||
) | [static] |
virtual MeasFrame& casa::MeasRef< Ms >::getFrame | ( | ) | [virtual] |
Return the frame of reference.
Implements casa::MRBase.
virtual uInt casa::MeasRef< Ms >::getType | ( | ) | const [virtual] |
Return the type of the reference
Caution: the following should really be (and should be interpreted as), but cannot create a virtual function:
Ms::Types getType();
Implements casa::MRBase.
Referenced by casa::SDPointingHandler::directionRefType().
virtual const Measure* casa::MeasRef< Ms >::offset | ( | ) | const [virtual] |
Return the offset (or 0)
Implements casa::MRBase.
Bool casa::MeasRef< Ms >::operator!= | ( | const MeasRef< Ms > & | other | ) | const |
Check if unequal MeasRef.
MeasRef& casa::MeasRef< Ms >::operator= | ( | const MeasRef< Ms > & | other | ) |
Copy assignment.
Bool casa::MeasRef< Ms >::operator== | ( | const MeasRef< Ms > & | other | ) | const |
Check if same MeasRef.
virtual void casa::MeasRef< Ms >::print | ( | ostream & | os | ) | const [virtual] |
Print a Measure.
Implements casa::MRBase.
virtual void casa::MeasRef< Ms >::set | ( | uInt | tp | ) | [virtual] |
Implements casa::MRBase.
void casa::MeasRef< Ms >::set | ( | const Ms & | ep | ) |
Set a new offset.
void casa::MeasRef< Ms >::set | ( | const Measure & | ep | ) |
Set a new offset (for internal use only)
virtual void casa::MeasRef< Ms >::set | ( | const MeasFrame & | mf | ) | [virtual] |
Set a new frame.
Implements casa::MRBase.
virtual void casa::MeasRef< Ms >::setType | ( | uInt | tp | ) | [virtual] |
Set the type.
Caution: the following should really be (and should be called as), but compiler does not accept it, since a virtual function:
void set(Ms::Types tp);
Implements casa::MRBase.
static const String& casa::MeasRef< Ms >::showMe | ( | ) | [static] |
Check the type of Measure the reference can be used for.
CountedPtr<RefRep> casa::MeasRef< Ms >::rep_p [private] |