MEarthMagnetic conversion routines. More...
#include <MCEarthMagnetic.h>
Public Member Functions | |
MCEarthMagnetic () | |
Default constructor. | |
~MCEarthMagnetic () | |
Static Public Member Functions | |
static String | showState () |
Show the state of the conversion engine (mainly for debugging purposes). | |
Private Types | |
enum | Routes { GAL_J2000, GAL_B1950, J2000_GAL, B1950_GAL, J2000_B1950, B1950_J2000, J2000_JMEAN, B1950_BMEAN, JMEAN_J2000, JMEAN_JTRUE, BMEAN_B1950, BMEAN_BTRUE, JTRUE_JMEAN, BTRUE_BMEAN, J2000_JNAT, JNAT_J2000, B1950_APP, APP_B1950, APP_TOPO, HADEC_AZEL, HADEC_AZELGEO, AZEL_HADEC, AZELGEO_HADEC, HADEC_TOPO, AZEL_AZELSW, AZELGEO_AZELSWGEO, AZELSW_AZEL, AZELSWGEO_AZELGEO, APP_JNAT, JNAT_APP, J2000_ECLIP, ECLIP_J2000, JMEAN_MECLIP, MECLIP_JMEAN, JTRUE_TECLIP, TECLIP_JTRUE, GAL_SUPERGAL, SUPERGAL_GAL, ITRF_HADEC, HADEC_ITRF, TOPO_HADEC, TOPO_APP, ICRS_J2000, J2000_ICRS, N_Routes, R_MODEL0, R_MODEL, R_IGRF } |
The list of actual routines provided. More... | |
Private Member Functions | |
MCEarthMagnetic (const MCEarthMagnetic &other) | |
Copy constructor (not implemented). | |
MCEarthMagnetic & | operator= (const MCEarthMagnetic &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) |
Routines to convert EarthMagnetics from one reference frame to another. | |
void | doConvert (MVEarthMagnetic &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 | |
MVPosition * | MVPOS1 |
EarthField * | EFIELD |
MeasMath | measMath |
Static Private Attributes | |
static uInt | ToRef_p [N_Routes][3] |
Transition list. | |
static uInt | FromTo_p [MEarthMagnetic::N_Types][MEarthMagnetic::N_Types] |
Transition matrix. | |
static MutexedInit | theirMutexedInit |
Mutex for thread-safety. | |
Friends | |
class | MeasConvert< MEarthMagnetic > |
Conversion of data. |
MEarthMagnetic conversion routines.
Internal
Measure, Convert and EarthMagnetic
Contains state machinery and caching for actual conversions
See Measures module description for conversion examples.
Definition at line 86 of file MCEarthMagnetic.h.
enum casacore::MCEarthMagnetic::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;
GAL_J2000 | |
GAL_B1950 | |
J2000_GAL | |
B1950_GAL | |
J2000_B1950 | |
B1950_J2000 | |
J2000_JMEAN | |
B1950_BMEAN | |
JMEAN_J2000 | |
JMEAN_JTRUE | |
BMEAN_B1950 | |
BMEAN_BTRUE | |
JTRUE_JMEAN | |
BTRUE_BMEAN | |
J2000_JNAT | |
JNAT_J2000 | |
B1950_APP | |
APP_B1950 | |
APP_TOPO | |
HADEC_AZEL | |
HADEC_AZELGEO | |
AZEL_HADEC | |
AZELGEO_HADEC | |
HADEC_TOPO | |
AZEL_AZELSW | |
AZELGEO_AZELSWGEO | |
AZELSW_AZEL | |
AZELSWGEO_AZELGEO | |
APP_JNAT | |
JNAT_APP | |
J2000_ECLIP | |
ECLIP_J2000 | |
JMEAN_MECLIP | |
MECLIP_JMEAN | |
JTRUE_TECLIP | |
TECLIP_JTRUE | |
GAL_SUPERGAL | |
SUPERGAL_GAL | |
ITRF_HADEC | |
HADEC_ITRF | |
TOPO_HADEC | |
TOPO_APP | |
ICRS_J2000 | |
J2000_ICRS | |
N_Routes | |
R_MODEL0 |
General for Models. |
R_MODEL | |
R_IGRF |
Individual models. Order should be the same as in MEarthMagnetic.h |
Reimplemented from casacore::MCBase.
Definition at line 112 of file MCEarthMagnetic.h.
casacore::MCEarthMagnetic::MCEarthMagnetic | ( | ) |
Default constructor.
casacore::MCEarthMagnetic::~MCEarthMagnetic | ( | ) |
casacore::MCEarthMagnetic::MCEarthMagnetic | ( | const MCEarthMagnetic & | other | ) | [private] |
Copy constructor (not implemented).
virtual void casacore::MCEarthMagnetic::clearConvert | ( | ) | [private, virtual] |
Delete the pointers used in the MeasConvert help structure cache.
Implements casacore::MCBase.
void casacore::MCEarthMagnetic::doConvert | ( | MVEarthMagnetic & | in, | |
MRBase & | inref, | |||
MRBase & | outref, | |||
const MConvertBase & | mc | |||
) | [private] |
Conversion routine to cater for inheritance question.
virtual void casacore::MCEarthMagnetic::doConvert | ( | MeasValue & | in, | |
MRBase & | inref, | |||
MRBase & | outref, | |||
const MConvertBase & | mc | |||
) | [private, virtual] |
Routines to convert EarthMagnetics from one reference frame to another.
Implements casacore::MCBase.
static void casacore::MCEarthMagnetic::doFillState | ( | void * | ) | [static, private] |
Fill the global state in a thread-safe way.
static void casacore::MCEarthMagnetic::fillState | ( | ) | [inline, static, private] |
Fill the global state in a thread-safe way.
Definition at line 187 of file MCEarthMagnetic.h.
References casacore::MutexedInit::exec(), and theirMutexedInit.
virtual void casacore::MCEarthMagnetic::getConvert | ( | MConvertBase & | mc, | |
const MRBase & | inref, | |||
const MRBase & | outref | |||
) | [private, virtual] |
Create conversion function pointer.
Implements casacore::MCBase.
virtual void casacore::MCEarthMagnetic::initConvert | ( | uInt | which, | |
MConvertBase & | mc | |||
) | [private, virtual] |
Create help structures for Measure conversion routines.
Implements casacore::MCBase.
MCEarthMagnetic& casacore::MCEarthMagnetic::operator= | ( | const MCEarthMagnetic & | other | ) | [private] |
Assignment (not implemented).
static String casacore::MCEarthMagnetic::showState | ( | ) | [static] |
Show the state of the conversion engine (mainly for debugging purposes).
friend class MeasConvert< MEarthMagnetic > [friend] |
Conversion of data.
Definition at line 92 of file MCEarthMagnetic.h.
EarthField* casacore::MCEarthMagnetic::EFIELD [private] |
Definition at line 175 of file MCEarthMagnetic.h.
uInt casacore::MCEarthMagnetic::FromTo_p[MEarthMagnetic::N_Types][MEarthMagnetic::N_Types] [static, private] |
Transition matrix.
Definition at line 182 of file MCEarthMagnetic.h.
MeasMath casacore::MCEarthMagnetic::measMath [private] |
Definition at line 176 of file MCEarthMagnetic.h.
MVPosition* casacore::MCEarthMagnetic::MVPOS1 [private] |
Definition at line 174 of file MCEarthMagnetic.h.
MutexedInit casacore::MCEarthMagnetic::theirMutexedInit [static, private] |
Mutex for thread-safety.
Definition at line 184 of file MCEarthMagnetic.h.
Referenced by fillState().
uInt casacore::MCEarthMagnetic::ToRef_p[N_Routes][3] [static, private] |
Transition list.
Definition at line 180 of file MCEarthMagnetic.h.