WSF
WsfDE_FileHandle Class Reference

#include <WsfDE_FileHandle.hpp>

Public Member Functions

 WsfDE_FileHandle (const WsfDE_File &aDE_File)
 WsfDE_FileHandle (const WsfDE_FileHandle &aOther)=default
 ~WsfDE_FileHandle ()=default
WsfDE_FileHandleoperator= (const WsfDE_FileHandle &aOther)=default
WsfDE_FileHandleClone () const
void GetPlanetEphemeris (const WsfDE_File::Date &aEpoch, WsfDE_File::Body aTarget, WsfDE_File::Body aOrigin, UtVec3d &aPosition, UtVec3d &aVelocity) const
int GetDE_Num () const
 Return the DE number contained in the DE file to which this is a handle.
double GetFileStartJD () const
double GetFileEndJD () const
const std::string & GetFileName () const
 Return the name of the file that provided this ephemeris.

Detailed Description

A handle to a JPL DE file.

JPL Development Ephemeris (DE) files can contain a good deal of data. These handles provide a means for multiple clients to share the data loaded from such a file. This is largely a pass-through class to the underlying file object, but this object owns the WsfDE_File::Workspace used during interpolation.

Constructor & Destructor Documentation

◆ WsfDE_FileHandle() [1/2]

WsfDE_FileHandle::WsfDE_FileHandle ( const WsfDE_File & aDE_File)
explicit

Construct a handle to a DE file.

This method should only be called by the WsfDE_FileManager, which acts as a central repository for DE files loaded into AFSIM.

Referenced by Clone(), operator=(), and WsfDE_FileHandle().

◆ WsfDE_FileHandle() [2/2]

WsfDE_FileHandle::WsfDE_FileHandle ( const WsfDE_FileHandle & aOther)
default

References WsfDE_FileHandle().

◆ ~WsfDE_FileHandle()

WsfDE_FileHandle::~WsfDE_FileHandle ( )
default

Member Function Documentation

◆ Clone()

WsfDE_FileHandle * WsfDE_FileHandle::Clone ( ) const
inline

References WsfDE_FileHandle().

◆ GetDE_Num()

int WsfDE_FileHandle::GetDE_Num ( ) const
inline

Return the DE number contained in the DE file to which this is a handle.

◆ GetFileEndJD()

double WsfDE_FileHandle::GetFileEndJD ( ) const
inline

Return the latest Julian date for the ephemeris covered by this file.

The returned value will be Julian date reference to the TDB time scale.

Returns
- Latest Julian date (in TDB) covered by the DE file to which this is a handle.

◆ GetFileName()

const std::string & WsfDE_FileHandle::GetFileName ( ) const
inline

Return the name of the file that provided this ephemeris.

◆ GetFileStartJD()

double WsfDE_FileHandle::GetFileStartJD ( ) const
inline

Return the earliest Julian date for the ephemeris covered by this file.

The returned value will be Julian date referenced to the TDB time scale.

Returns
- Earliest Julian date (in TDB) covered by the DE file to which this is a handle.

◆ GetPlanetEphemeris()

void WsfDE_FileHandle::GetPlanetEphemeris ( const WsfDE_File::Date & aEpoch,
WsfDE_File::Body aTarget,
WsfDE_File::Body aOrigin,
UtVec3d & aPosition,
UtVec3d & aVelocity ) const

Get the position and velocity for a body relative to another.

Retrieve the position and velocity of the aTarget relative to aOrigin at the given aEpoch. The position and velocity will be given in the ECI frame. The input aEpoch is a two-component Julian date, where the epoch at which the ephemeris will be given is the sum of the two components. For simplicity, the full Julian date can be placed in the first component. However, for highest precision interpolation, aTimeJD should have its first component equal to the most recent midnight at or before the interpolation epoch, and the second component equal to the fraction of a day since that midnight.

The input time is on the TDB scale which is different from TT by periodic variations of magnitude less that 1.6 ms.

Parameters
aEpoch- The epoch at which to produce the ephemeris.
aTarget- The target body.
aOrigin- The body to use as origin.
aPosition[out] - The ephemeris position in km.
aVelocity[out] - The ephemeris velocity in km/s.

◆ operator=()

WsfDE_FileHandle & WsfDE_FileHandle::operator= ( const WsfDE_FileHandle & aOther)
default

References WsfDE_FileHandle().


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved