29 #ifndef MEASURES_MEASURE_H
30 #define MEASURES_MEASURE_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/casa/iosfwd.h>
35 #include <casacore/casa/Arrays/ArrayFwd.h>
44 template <
class T>
class Quantum;
355 const uInt *&typ)
const;
413 virtual void print(std::ostream &os)
const = 0;
virtual const String & tellMe() const =0
Tell me your Measure type (e.g.
virtual Bool setOffset(const Measure &in)=0
Set the offset in the reference (False if non-matching Measure)
void dummy_giveMe() const
Each derived class should have a string-to-code translation routine for the reference type.
virtual ~Measure()
Destructor.
void dummy_getValue() const
Each derived class should be able to get its internal value and have:
virtual Measure * clone() const =0
Create a copy.
virtual const String * allTypes(Int &nall, Int &nextra, const uInt *&typ) const
Get a list of all known reference codes.
virtual void print(std::ostream &os) const =0
Print a Measure.
void * Convert
Each Measure should have typedefs of the form:
virtual MRBase * getRefPtr() const =0
Get general reference pointer.
virtual Bool isModel() const
Tell me if you are a pure model (e.g.
void dummy_getRef() const
Each class should have a function to return its reference:
virtual const MeasValue * getData() const =0
Get data pointer (used by MeasConvert)
virtual void set(const MeasValue &dt)=0
Each Measure should have the following set functions (with appropiate MVs and Ref):
virtual Bool setRefString(const String &in)=0
Set the reference type to the specified String.
virtual const Unit & getUnit() const =0
Get unit (only available if Measure generated from a Quantum, else "")
virtual const String & getDefaultType() const =0
Get the default reference type.
Types
Each derived class should have a Types enumeration, specifying the recognised frame types.
virtual String getRefString() const =0
Each Measure should have the following static methods to give its name (e.g.
friend std::ostream & operator<<(std::ostream &os, const Measure &meas)
Each derived class should have:
virtual void clear()=0
Clear the measure.
virtual Bool areYou(const String &tp) const =0
Check the type of derived Measure entity (e.g.
virtual void assured(const String &tp) const =0
All should have: Assert that we are the correct Measure type.
static uInt giveMe(const String &in, Int N_name, const String tname[])
A general string checking routine to be used in derived measures.
void dummy_data() const
Each class will have the following information: Actual data.
virtual Bool putValue(const Vector< Quantum< Double > > &in)=0
virtual void checkTypes() const =0
Check if all internal tables of types (both enum and String) are complete and correct.
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines
bool Bool
Define the standard types used by Casacore.
ostream & operator<<(ostream &os, const IComplex &)
Show on ostream.