casacore
Loading...
Searching...
No Matches

More...

#include <MCFrame.h>

Public Member Functions

 MCFrame ()
 Construct using the MeasFrame parent.
 MCFrame (const MCFrame &other)
 MCFrame (MCFrame &&other)
 ~MCFrame ()
 Destructor.
void resetEpoch ()
 Reset Epoch value.
void resetPosition ()
 Reset Position value.
void resetDirection ()
 Reset Direction value.
void resetRadialVelocity ()
 Reset RadialVelocity value.
void resetComet ()
 Reset Comet.
void makeEpoch (MeasFrame &frame)
 Make full Epoch.
void makePosition (const MeasFrame &frame)
 Make full Position.
void makeDirection (MeasFrame &frame)
 Make full Direction.
void makeRadialVelocity (const MeasFrame &frame)
 Make full RadialVelocity.
void makeComet ()
 Make full Comet.
Bool getTDB (Double &tdb, const MeasFrame &frame)
 Get time as Temps Dynamique Barycentrique (TDB, or Barycentric Dynamical Time) in days.
Bool getUT1 (Double &tdb, const MeasFrame &frame)
 Get UT1 in days.
Bool getTT (Double &tdb, const MeasFrame &frame)
 Get TT in days.
Bool getLong (Double &tdb, const MeasFrame &frame)
 Get the longitude (in rad).
Bool getLat (Double &tdb, const MeasFrame &frame)
 Get the latitude (ITRF) (in rad).
Bool getITRF (MVPosition &tdb, const MeasFrame &frame)
 Get the position.
Bool getRadius (Double &tdb, const MeasFrame &frame)
 Get the geocentric position (in m).
Bool getLatGeo (Double &tdb, const MeasFrame &frame)
 Get the geodetic latitude.
Bool getLAST (Double &tdb, const MeasFrame &frame)
 Get the LAST (in days).
Bool getLASTr (Double &tdb, const MeasFrame &frame)
 Get the LAST (in rad).
Bool getJ2000 (MVDirection &tdb, const MeasFrame &frame)
 Get J2000 coordinates (direction cosines) and long/lat (rad).
Bool getJ2000Long (Double &tdb, const MeasFrame &frame)
Bool getJ2000Lat (Double &tdb, const MeasFrame &frame)
Bool getB1950 (MVDirection &tdb, const MeasFrame &frame)
 Get B1950 coordinates (direction cosines) and long/lat (rad).
Bool getB1950Long (Double &tdb, const MeasFrame &frame)
Bool getB1950Lat (Double &tdb, const MeasFrame &frame)
Bool getApp (MVDirection &tdb, const MeasFrame &frame)
 Get apparent coordinates (direction cosines) and long/lat (rad).
Bool getAppLong (Double &tdb, const MeasFrame &frame)
Bool getAppLat (Double &tdb, const MeasFrame &frame)
Bool getLSR (Double &tdb, const MeasFrame &frame)
 Get LSR radial velocity (m/s).
Bool getCometType (uInt &tdb, const MeasFrame &frame)
 Get Comet type.
Bool getComet (MVPosition &tdb, const MeasFrame &frame)
 Get Comet position.

Private Member Functions

MCFrameoperator= (const MCFrame &other)=delete

Private Attributes

std::unique_ptr< MCFrameImplementation > impl_
 pointer-to-implementation (pimpl) pattern is used to avoid a large number of dependencies in the header file.

Detailed Description

Measure frame calculations proxy

Intended use:

Internal

Review Status

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

Prerequisite

Etymology

From Measure and Frame

Synopsis

The MeasFrame class contains the 'when and where' of an observed Measure. Calculations to get the appropiate value (e.g. the Earth's longitude) from this frame for conversions are done in this class, together with all the caching of (intermediate) results that can speed-up calculations.
The MCFrame class is used by the individual measure conversion classes (see MCBase class).

Example

MEpoch my_epoch(Quantity(MeasData::MJDB1950,"d")); // an epoch
MCFrame frame(my_epoch); // used in a frame
frame.set(obser); // add observatory (an MPosition)
MEpoch::Convert conv(my_epoch, MEPoch::Ref(MEpoch::LAST, frame));
MCFrame()
Construct using the MeasFrame parent.
@ LAST
Local Apparent Sidereal Time.
Definition MEpoch.h:116
MeasConvert< MEpoch > Convert
Measure Convert (i.e.
Definition MEpoch.h:155
static const Double MJDB1950
MJD of B1950.0.
Definition MeasData.h:106
Quantum< Double > Quantity
Definition Quantum.h:39

The conv conversion engine will (transpararently) use the MCFrame class in calls from MCEpoch (the time conversions), which will be called by the MEpoch::Convert () operator.

Motivation

To separate the frame calculations from the Measure containers, to enable e.g. Tables to have Measures.

Definition at line 87 of file MCFrame.h.

Constructor & Destructor Documentation

◆ MCFrame() [1/3]

casacore::MCFrame::MCFrame ( )

Construct using the MeasFrame parent.

Referenced by MCFrame(), MCFrame(), and operator=().

◆ MCFrame() [2/3]

casacore::MCFrame::MCFrame ( const MCFrame & other)

References MCFrame().

◆ MCFrame() [3/3]

casacore::MCFrame::MCFrame ( MCFrame && other)

References MCFrame().

◆ ~MCFrame()

casacore::MCFrame::~MCFrame ( )

Destructor.

Member Function Documentation

◆ getApp()

Bool casacore::MCFrame::getApp ( MVDirection & tdb,
const MeasFrame & frame )

Get apparent coordinates (direction cosines) and long/lat (rad).

◆ getAppLat()

Bool casacore::MCFrame::getAppLat ( Double & tdb,
const MeasFrame & frame )

◆ getAppLong()

Bool casacore::MCFrame::getAppLong ( Double & tdb,
const MeasFrame & frame )

◆ getB1950()

Bool casacore::MCFrame::getB1950 ( MVDirection & tdb,
const MeasFrame & frame )

Get B1950 coordinates (direction cosines) and long/lat (rad).

◆ getB1950Lat()

Bool casacore::MCFrame::getB1950Lat ( Double & tdb,
const MeasFrame & frame )

◆ getB1950Long()

Bool casacore::MCFrame::getB1950Long ( Double & tdb,
const MeasFrame & frame )

◆ getComet()

Bool casacore::MCFrame::getComet ( MVPosition & tdb,
const MeasFrame & frame )

Get Comet position.

◆ getCometType()

Bool casacore::MCFrame::getCometType ( uInt & tdb,
const MeasFrame & frame )

Get Comet type.

◆ getITRF()

Bool casacore::MCFrame::getITRF ( MVPosition & tdb,
const MeasFrame & frame )

Get the position.

◆ getJ2000()

Bool casacore::MCFrame::getJ2000 ( MVDirection & tdb,
const MeasFrame & frame )

Get J2000 coordinates (direction cosines) and long/lat (rad).

◆ getJ2000Lat()

Bool casacore::MCFrame::getJ2000Lat ( Double & tdb,
const MeasFrame & frame )

◆ getJ2000Long()

Bool casacore::MCFrame::getJ2000Long ( Double & tdb,
const MeasFrame & frame )

◆ getLAST()

Bool casacore::MCFrame::getLAST ( Double & tdb,
const MeasFrame & frame )

Get the LAST (in days).

◆ getLASTr()

Bool casacore::MCFrame::getLASTr ( Double & tdb,
const MeasFrame & frame )

Get the LAST (in rad).

◆ getLat()

Bool casacore::MCFrame::getLat ( Double & tdb,
const MeasFrame & frame )

Get the latitude (ITRF) (in rad).

◆ getLatGeo()

Bool casacore::MCFrame::getLatGeo ( Double & tdb,
const MeasFrame & frame )

Get the geodetic latitude.

◆ getLong()

Bool casacore::MCFrame::getLong ( Double & tdb,
const MeasFrame & frame )

Get the longitude (in rad).

◆ getLSR()

Bool casacore::MCFrame::getLSR ( Double & tdb,
const MeasFrame & frame )

Get LSR radial velocity (m/s).

◆ getRadius()

Bool casacore::MCFrame::getRadius ( Double & tdb,
const MeasFrame & frame )

Get the geocentric position (in m).

◆ getTDB()

Bool casacore::MCFrame::getTDB ( Double & tdb,
const MeasFrame & frame )

Get time as Temps Dynamique Barycentrique (TDB, or Barycentric Dynamical Time) in days.

◆ getTT()

Bool casacore::MCFrame::getTT ( Double & tdb,
const MeasFrame & frame )

Get TT in days.

◆ getUT1()

Bool casacore::MCFrame::getUT1 ( Double & tdb,
const MeasFrame & frame )

Get UT1 in days.

◆ makeComet()

void casacore::MCFrame::makeComet ( )

Make full Comet.

◆ makeDirection()

void casacore::MCFrame::makeDirection ( MeasFrame & frame)

Make full Direction.

◆ makeEpoch()

void casacore::MCFrame::makeEpoch ( MeasFrame & frame)

Make full Epoch.

◆ makePosition()

void casacore::MCFrame::makePosition ( const MeasFrame & frame)

Make full Position.

◆ makeRadialVelocity()

void casacore::MCFrame::makeRadialVelocity ( const MeasFrame & frame)

Make full RadialVelocity.

◆ operator=()

MCFrame & casacore::MCFrame::operator= ( const MCFrame & other)
privatedelete

References MCFrame().

◆ resetComet()

void casacore::MCFrame::resetComet ( )

Reset Comet.

◆ resetDirection()

void casacore::MCFrame::resetDirection ( )

Reset Direction value.

◆ resetEpoch()

void casacore::MCFrame::resetEpoch ( )

Reset Epoch value.

◆ resetPosition()

void casacore::MCFrame::resetPosition ( )

Reset Position value.

◆ resetRadialVelocity()

void casacore::MCFrame::resetRadialVelocity ( )

Reset RadialVelocity value.

Member Data Documentation

◆ impl_

std::unique_ptr<MCFrameImplementation> casacore::MCFrame::impl_
private

pointer-to-implementation (pimpl) pattern is used to avoid a large number of dependencies in the header file.

Definition at line 176 of file MCFrame.h.


The documentation for this class was generated from the following file: