29 #ifndef MEASURES_MCEPOCH_H
30 #define MEASURES_MCEPOCH_H
33 #include <casacore/casa/aips.h>
34 #include <casacore/measures/Measures/MeasBase.h>
35 #include <casacore/measures/Measures/MeasRef.h>
36 #include <casacore/measures/Measures/MCBase.h>
37 #include <casacore/measures/Measures/MConvertBase.h>
38 #include <casacore/measures/Measures/MEpoch.h>
39 #include <casacore/casa/OS/Mutex.h>
Wrapper around std::call_once.
Routes
Each derived class should have a list of routines to be called:
static uInt FromTo_p[MEpoch::N_Types][MEpoch::N_Types]
Transition matrix.
virtual void initConvert(uInt which, MConvertBase &mc)
Create help structures for Measure conversion routines.
virtual void doConvert(MeasValue &in, MRBase &inref, MRBase &outref, const MConvertBase &mc)
Routine to convert time from one reference frame to another.
static String showState()
Show the state of the conversion engine (mainly for debugging purposes)
void doConvert(MVEpoch &in, MRBase &inref, MRBase &outref, const MConvertBase &mc)
Conversion routine to cater for inheritance question.
MCEpoch(const MCEpoch &other)
Copy constructor (not implemented)
virtual void getConvert(MConvertBase &mc, const MRBase &inref, const MRBase &outref)
Create conversion function pointer.
static void doFillState()
Fill the global state.
virtual void clearConvert()
Delete the pointers used in the MeasConvert help structure cache.
static CallOnce0 theirInitOnce
Object to ensure safe multi-threaded lazy single initialization.
static uInt ToRef_p[N_Routes][3]
Transition list.
MCEpoch()
Default constructor.
MCEpoch & operator=(const MCEpoch &other)
Assignment (not implemented)
@ N_Types
Number of types.
String: the storage and methods of handling collections of characters.
this file contains all the compiler specific defines