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;
332 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.
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_)
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 case-insensitive name of a moving source (ZENITH, SUN, etc.), or of a known standard source (CygA, etc.).
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...
Vector of three direction cosines.
this file contains all the compiler specific defines
ScalarMeasColumn< MDirection > ScalarColumn
Measure table Columns (e.g., MDirection::ScalarColumn)