Go to the documentation of this file.
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;
static MDirection::Types castType(uInt tp)
Translate reference code tp.
virtual Bool setRefString(const String &in)
Set the reference type to the specified String.
virtual const String * allTypes(Int &nall, Int &nextra, const uInt *&typ) const
Get a list of all known reference codes.
void shiftLatitude(const Quantum< Double > &lat, Bool trueAngle=False)
void shift(const Quantum< Double > &lng, const Quantum< Double > &lat, Bool trueAngle=False)
Shift the direction in longitude (radians if Double) and/or latitude.
virtual String getRefString() const
Get the reference type (for records, including codes like R_)
static uInt myType()
Get my type (as Register) N.B.
Physical quantities within reference frame.
Vector of three direction cosines.
static const String & showMe()
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.
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,...
static const String * allMyTypes(Int &nall, Int &nextra, const uInt *&typ)
virtual const String & getDefaultType() const
Get the default reference type.
Base class for values in a Measure.
MDirection()
Tip: In the following constructors and other functions, all MeasRef can be replaced with simple Measu...
MeasConvert< MDirection > Convert
Measure Convert (i.e.
ScalarMeasColumn< MDirection > ScalarColumn
Measure table Columns (e.g., MDirection::ScalarColumn)
A Measure: astronomical direction.
MeasRef< MDirection > Ref
Measure reference (i.e.
this file contains all the compiler specific defines
virtual void checkTypes() const
Check if all internal tables of types (both enum and String) are complete and correct.
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)
static Bool getType(MDirection::Types &tp, const String &in)
Translate string to reference code.
ArrayMeasColumn< MDirection > ArrayColumn
LatticeExprNode pa(const LatticeExprNode &left, const LatticeExprNode &right)
This function finds 180/pi*atan2(left,right)/2.
Comet or other table-described solar system body.
virtual Bool setOffset(const Measure &in)
Set the offset in the reference (False if non-matching Measure)
Base class for all measures.
String: the storage and methods of handling collections of characters.
MCDirection MCType
Measure conversion routines for this class (i.e.
bool Bool
Define the standard types used by Casacore.
Types
Types of known MDirections Warning: The order defines the order in the translation matrix FromTo in ...
Quantum< Vector< Double > > getAngle() const
Get Measure data.
static void checkMyTypes()
MVDirection MVType
Measure value container for this class (i.e.
MDirection conversion routines
void shiftLongitude(const Quantity &lng, Bool trueAngle=False)
virtual Bool isModel() const
Tell me if you are a pure model (e.g.
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)