casa
$Rev:20696$
|
MDoppler conversion routines. More...
#include <MCDoppler.h>
Public Member Functions | |
MCDoppler () | |
Default constructor. | |
~MCDoppler () | |
Static Public Member Functions | |
static String | showState () |
Show the state of the conversion engine (mainly for debugging purposes) | |
Private Types | |
enum | Routes { RADIO_RATIO, Z_RATIO, BETA_RATIO, GAMMA_RATIO, RATIO_RADIO, RATIO_Z, RATIO_BETA, RATIO_GAMMA, N_Routes } |
The list of actual routines provided. More... | |
Private Member Functions | |
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 Doppler from one reference frame to another. | |
void | doConvert (MVDoppler &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. | |
Static Private Attributes | |
static uInt | ToRef_p [N_Routes][3] |
Transition list. | |
static uInt | FromTo_p [MDoppler::N_Types][MDoppler::N_Types] |
Transition matrix. | |
static MutexedInit | theirMutexedInit |
Mutex for thread-safety. | |
Friends | |
class | MeasConvert< MDoppler > |
Conversion of data. |
MDoppler conversion routines.
Internal
<h3>Review Status</h3><dl><dt>Reviewed By:<dd>UNKNOWN<dt>Date Reviewed:<dd>before2004/08/25<dt>Test programs:<dd>tMeasure</dl>
Measure, Convert and Doppler
Contains state machinery and caching for actual conversions
Conversion of a radio Doppler to an optical
#include <measures/Measures.h> #include <measures/Measures/MDoppler.h> MDoppler radio(0.01); // A radio Doppler value cout << "Doppler radio = " << radio << "; optical = " << MDoppler::Convert(radio, MDoppler::OPTICAL)() << // Convert endl;
Setting up a conversion
MDoppler::Convert to_opt(MDoppler::RADIO, MDoppler::OPTICAL); for (Double d=0; d<0.1; d += 0.005) { cout << "radio = " << d << " to optical = " << to_opt(d) << endl;
Definition at line 95 of file MCDoppler.h.
enum casa::MCDoppler::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;
RADIO_RATIO | |
Z_RATIO | |
BETA_RATIO | |
GAMMA_RATIO | |
RATIO_RADIO | |
RATIO_Z | |
RATIO_BETA | |
RATIO_GAMMA | |
N_Routes |
Reimplemented from casa::MCBase.
Definition at line 122 of file MCDoppler.h.
Default constructor.
virtual void casa::MCDoppler::clearConvert | ( | ) | [private, virtual] |
Delete the pointers used in the MeasConvert help structure cache.
Implements casa::MCBase.
virtual void casa::MCDoppler::doConvert | ( | MeasValue & | in, |
MRBase & | inref, | ||
MRBase & | outref, | ||
const MConvertBase & | mc | ||
) | [private, virtual] |
Routine to convert Doppler from one reference frame to another.
Implements casa::MCBase.
void casa::MCDoppler::doConvert | ( | MVDoppler & | in, |
MRBase & | inref, | ||
MRBase & | outref, | ||
const MConvertBase & | mc | ||
) | [private] |
Conversion routine to cater for inheritance question.
static void casa::MCDoppler::doFillState | ( | void * | ) | [static, private] |
Fill the global state in a thread-safe way.
static void casa::MCDoppler::fillState | ( | ) | [inline, static, private] |
Fill the global state in a thread-safe way.
Definition at line 152 of file MCDoppler.h.
References casa::MutexedInit::exec(), and theirMutexedInit.
virtual void casa::MCDoppler::getConvert | ( | MConvertBase & | mc, |
const MRBase & | inref, | ||
const MRBase & | outref | ||
) | [private, virtual] |
Create conversion function pointer.
Implements casa::MCBase.
virtual void casa::MCDoppler::initConvert | ( | uInt | which, |
MConvertBase & | mc | ||
) | [private, virtual] |
Create help structures for Measure conversion routines.
Implements casa::MCBase.
static String casa::MCDoppler::showState | ( | ) | [static] |
Show the state of the conversion engine (mainly for debugging purposes)
friend class MeasConvert< MDoppler > [friend] |
Conversion of data.
Definition at line 101 of file MCDoppler.h.
uInt casa::MCDoppler::FromTo_p[MDoppler::N_Types][MDoppler::N_Types] [static, private] |
Transition matrix.
Definition at line 147 of file MCDoppler.h.
MutexedInit casa::MCDoppler::theirMutexedInit [static, private] |
uInt casa::MCDoppler::ToRef_p[N_Routes][3] [static, private] |
Transition list.
Definition at line 145 of file MCDoppler.h.