casacore::MCEpoch Class Reference

MEpoch conversion routines. More...

#include <MCEpoch.h>

Inheritance diagram for casacore::MCEpoch:
casacore::MCBase

List of all members.

Public Member Functions

 MCEpoch ()
 Default constructor.
 ~MCEpoch ()

Static Public Member Functions

static String showState ()
 Show the state of the conversion engine (mainly for debugging purposes).

Private Types

enum  Routes {
  LAST_GAST,
  GAST_LAST,
  LMST_GMST1,
  GMST1_LMST,
  GMST1_UT1,
  UT1_GMST1,
  GAST_UT1,
  UT1_GAST,
  UT1_UTC,
  UTC_UT1,
  UT1_UT2,
  UT2_UT1,
  UTC_TAI,
  TAI_UTC,
  TAI_TDT,
  TDT_TAI,
  TDT_TDB,
  TDB_TDT,
  TDT_TCG,
  TCG_TDT,
  TDB_TCB,
  TCB_TDB,
  N_Routes,
  RAZING
}
 

The list of actual routines provided.

More...

Private Member Functions

 MCEpoch (const MCEpoch &other)
 Copy constructor (not implemented).
MCEpochoperator= (const MCEpoch &other)
 Assignment (not implemented).
virtual void getConvert (MConvertBase &mc, const MRBase &inref, const MRBase &outref)
 Create conversion function pointer.
virtual void initConvert (uInt which, MConvertBase &mc)
 Create help structures for Measure conversion routines.
virtual void clearConvert ()
 Delete the pointers used in the MeasConvert help structure cache.
virtual void doConvert (MeasValue &in, MRBase &inref, MRBase &outref, const MConvertBase &mc)
 Routine to convert time from one reference frame to another.
void doConvert (MVEpoch &in, MRBase &inref, MRBase &outref, const MConvertBase &mc)
 Conversion routine to cater for inheritance question.

Static Private Member Functions

static void fillState ()
 Fill the global state in a thread-safe way.
static void doFillState (void *)
 Fill the global state in a thread-safe way.

Private Attributes

NutationNUTATFROM
NutationNUTATTO

Static Private Attributes

static uInt ToRef_p [N_Routes][3]
 Transition list.
static uInt FromTo_p [MEpoch::N_Types][MEpoch::N_Types]
 Transition matrix.
static MutexedInit theirMutexedInit
 Mutex for thread-safety.

Friends

class MeasConvert< MEpoch >

Detailed Description

MEpoch conversion routines.

Intended use:

Internal

Review Status

Reviewed By:
UNKNOWN
Date Reviewed:
before2004/08/25
Test programs:
tMeasure

Prerequisite

Etymology

Measure, Convert and Epoch

Synopsis

Contains state machinery and caching for actual conversions

Example

Convert (with all steps explicit) a UTC to an IAT time.

 #include <casacore/measures/Measures.h>
 #include <casacore/measures/Measures/MEpoch.h>
 #include <casacore/measures/Measures/MCEpoch.h>
 cout << "TAI for UTC = MJD(50237.29): " <<
 MEpoch::Convert(MEpoch(MVEpoch(Quantity(50237.29, "d")),
 MEpoch::Ref(MEpoch::UTC)),
 MEpoch::Ref(MEpoch::TAI))() <<
 endl;

Motivation

To Do

Definition at line 92 of file MCEpoch.h.


Member Enumeration Documentation

enum casacore::MCEpoch::Routes [private]

The list of actual routines provided.


Warning: Each AA_BB in the list points to routine that can be used in the FromTo list in the getConvert routine; In addition the type to which each is converted should be in the ToRef array, again in the proper order;

Enumerator:
LAST_GAST 
GAST_LAST 
LMST_GMST1 
GMST1_LMST 
GMST1_UT1 
UT1_GMST1 
GAST_UT1 
UT1_GAST 
UT1_UTC 
UTC_UT1 
UT1_UT2 
UT2_UT1 
UTC_TAI 
TAI_UTC 
TAI_TDT 
TDT_TAI 
TDT_TDB 
TDB_TDT 
TDT_TCG 
TCG_TDT 
TDB_TCB 
TCB_TDB 
N_Routes 
RAZING 

Reimplemented from casacore::MCBase.

Definition at line 117 of file MCEpoch.h.


Constructor & Destructor Documentation

casacore::MCEpoch::MCEpoch (  ) 

Default constructor.

casacore::MCEpoch::~MCEpoch (  ) 
casacore::MCEpoch::MCEpoch ( const MCEpoch other  )  [private]

Copy constructor (not implemented).


Member Function Documentation

virtual void casacore::MCEpoch::clearConvert (  )  [private, virtual]

Delete the pointers used in the MeasConvert help structure cache.

Implements casacore::MCBase.

void casacore::MCEpoch::doConvert ( MVEpoch in,
MRBase inref,
MRBase outref,
const MConvertBase mc 
) [private]

Conversion routine to cater for inheritance question.

virtual void casacore::MCEpoch::doConvert ( MeasValue in,
MRBase inref,
MRBase outref,
const MConvertBase mc 
) [private, virtual]

Routine to convert time from one reference frame to another.

Implements casacore::MCBase.

static void casacore::MCEpoch::doFillState ( void *   )  [static, private]

Fill the global state in a thread-safe way.

static void casacore::MCEpoch::fillState (  )  [inline, static, private]

Fill the global state in a thread-safe way.

Definition at line 165 of file MCEpoch.h.

References casacore::MutexedInit::exec(), and theirMutexedInit.

virtual void casacore::MCEpoch::getConvert ( MConvertBase mc,
const MRBase inref,
const MRBase outref 
) [private, virtual]

Create conversion function pointer.

Implements casacore::MCBase.

virtual void casacore::MCEpoch::initConvert ( uInt  which,
MConvertBase mc 
) [private, virtual]

Create help structures for Measure conversion routines.

Implements casacore::MCBase.

MCEpoch& casacore::MCEpoch::operator= ( const MCEpoch other  )  [private]

Assignment (not implemented).

static String casacore::MCEpoch::showState (  )  [static]

Show the state of the conversion engine (mainly for debugging purposes).


Friends And Related Function Documentation

friend class MeasConvert< MEpoch > [friend]

Definition at line 97 of file MCEpoch.h.


Member Data Documentation

uInt casacore::MCEpoch::FromTo_p[MEpoch::N_Types][MEpoch::N_Types] [static, private]

Transition matrix.

Definition at line 160 of file MCEpoch.h.

Definition at line 153 of file MCEpoch.h.

Definition at line 154 of file MCEpoch.h.

Mutex for thread-safety.

Definition at line 162 of file MCEpoch.h.

Referenced by fillState().

uInt casacore::MCEpoch::ToRef_p[N_Routes][3] [static, private]

Transition list.

Definition at line 158 of file MCEpoch.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1