Loading...
Searching...
No Matches
casacore::MCFrame Class Reference
measures package (libcasa_measures) » Measures_module » Measures_module_internal_classes

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

MCFrame & | operator= (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

- Measure class
- MeasFrame class

### 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));
casacore::MCFrame::MCFrame
MCFrame()
Construct using the MeasFrame parent.
casacore::MEpoch
Definition MEpoch.h:101
casacore::MEpoch::LAST
@ LAST
Local Apparent Sidereal Time.
Definition MEpoch.h:116
casacore::MEpoch::Convert
MeasConvert< MEpoch > Convert
Measure Convert (i.e.
Definition MEpoch.h:155
casacore::MeasData::MJDB1950
static const Double MJDB1950
MJD of B1950.0.
Definition MeasData.h:106
casacore::Quantity
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 | ) |

private delete

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:

- measures/Measures/MCFrame.h