29 #ifndef MEASURES_MDIRECTION_H 30 #define MEASURES_MDIRECTION_H 33 #include <casacore/casa/aips.h> 34 #include <casacore/measures/Measures/MeasBase.h> 35 #include <casacore/measures/Measures/MeasRef.h> 36 #include <casacore/casa/Quanta/MVDirection.h> 43 template <
class M>
class MeasConvert;
44 template <
class M>
class ArrayMeasColumn;
45 template <
class M>
class ScalarMeasColumn;
333 const uInt *&typ)
const;
A Measure: astronomical direction.
MeasRef< MDirection > Ref
Measure reference (i.e.
static void assure(const Measure &in)
Assert you are a direction.
static MDirection::GlobalTypes globalType(uInt tp)
Tell me the global type (like GRADEC) for tp (tp like MDirection::J2000)
virtual void checkTypes() const
Check if all internal tables of types (both enum and String) are complete and correct.
virtual Bool setOffset(const Measure &in)
Set the offset in the reference (False if non-matching Measure)
static Bool getType(MDirection::Types &tp, const String &in)
Translate string to reference code.
ArrayMeasColumn< MDirection > ArrayColumn
MCDirection MCType
Measure conversion routines for this class (i.e.
Physical quantities within reference frame.
Quantum< Vector< Double > > getAngle() const
Get Measure data.
Base class for all measures.
Read only access to table array Measure columns.
MDirection conversion routines.
Types
Types of known MDirections Warning: The order defines the order in the translation matrix FromTo in ...
MVDirection MVType
Measure value container for this class (i.e.
static void checkMyTypes()
void shiftLongitude(const Quantity &lng, Bool trueAngle=False)
Comet or other table-described solar system body.
Base class for values in a Measure.
virtual Bool setRefString(const String &in)
Set the reference type to the specified String.
LatticeExprNode pa(const LatticeExprNode &left, const LatticeExprNode &right)
This function finds 180/pi*atan2(left,right)/2.
virtual const String * allTypes(Int &nall, Int &nextra, const uInt *&typ) const
Get a list of all known reference codes.
virtual Bool isModel() const
Tell me if you are a pure model (e.g.
void shiftLatitude(const Quantum< Double > &lat, Bool trueAngle=False)
virtual Measure * clone() const
Make a copy.
virtual uInt type() const
Tell me your reference type (as Register()) N.B.
Bool giveMe(MDirection::Ref &mr, const String &in)
static MDirection::Types castType(uInt tp)
Translate reference code tp.
virtual String getRefString() const
Get the reference type (for records, including codes like R_)
typedef WHATEVER_SUN_TYPEDEF(MDirection) Types Types
Reference enum Types (included originally for gcc 2.95)
bool Bool
Define the standard types used by Casacore.
void shift(const Quantum< Double > &lng, const Quantum< Double > &lat, Bool trueAngle=False)
Shift the direction in longitude (radians if Double) and/or latitude.
static const String & showMe()
static uInt myType()
Get my type (as Register) N.B.
static const String & showType(MDirection::Types tp)
void shiftAngle(const Quantum< Double > &off, const Quantum< Double > &pa)
Shift over an angle off in the direction pa.
static MDirection makeMDirection(const String &sourceName)
Make an MDirection object given the name of a moving source (SUN, etc.) or of a known standard source...
static const String * allMyTypes(Int &nall, Int &nextra, const uInt *&typ)
virtual const String & getDefaultType() const
Get the default reference type.
virtual const String & tellMe() const
Tell me your type ('Direction')
String toString() const
Convert to a String in astronomer-friendly format based on reference frame.
String: the storage and methods of handling collections of characters.
MeasConvert< MDirection > Convert
Measure Convert (i.e.
MDirection()
Tip: In the following constructors and other functions, all MeasRef can be replaced with simple Meas...
Read only access to table scalar Measure columns.
Vector of three direction cosines.
this file contains all the compiler specific defines
ScalarMeasColumn< MDirection > ScalarColumn
Measure table Columns (e.g., MDirection::ScalarColumn)