casacore
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | Private Attributes | List of all members

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));
@ LAST
Local Apparent Sidereal Time.
Definition MEpoch.h:116
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.

◆ MCFrame() [2/3]

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

◆ MCFrame() [3/3]

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

◆ ~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

◆ 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: