siderust-cpp 0.8.0
Header-only C++ wrapper for siderust
Loading...
Searching...
No Matches
siderust::StarTarget Class Reference

Target implementation wrapping a const Star&. More...

#include <siderust/star_target.hpp>

Inheritance diagram for siderust::StarTarget:
Collaboration diagram for siderust::StarTarget:

Public Member Functions

 StarTarget (const Star &star)
 Wrap a Star reference as a Target.
 
std::string name () const override
 Returns the star's catalog name (delegates to Star::name()).
 
qtty::Degree altitude_at (const Geodetic &obs, const Time< TT, MJD > &mjd) const override
 Compute altitude (degrees) at a given Time<TT, MJD> instant.
 
std::vector< Period< TT, MJD > > above_threshold (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
 Find periods when the object is above a threshold altitude.
 
std::vector< Period< TT, MJD > > below_threshold (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
 Find periods when the object is below a threshold altitude.
 
std::vector< CrossingEventcrossings (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
 Find threshold-crossing events (rising / setting).
 
std::vector< CulminationEventculminations (const Geodetic &obs, const Period< TT, MJD > &window, const SearchOptions &opts={}) const override
 Find culmination (local altitude extremum) events.
 
qtty::Degree azimuth_at (const Geodetic &obs, const Time< TT, MJD > &mjd) const override
 Compute azimuth (degrees, N-clockwise) at a given Time<TT, MJD> instant.
 
std::vector< AzimuthCrossingEventazimuth_crossings (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree bearing, const SearchOptions &opts={}) const override
 Find epochs when the object crosses a given azimuth bearing.
 
const Starstar () const
 Access the underlying Star reference.
 
- Public Member Functions inherited from siderust::Target
virtual ~Target ()=default
 
 Target ()=default
 
 Target (const Target &)=delete
 
Targetoperator= (const Target &)=delete
 
 Target (Target &&)=default
 
Targetoperator= (Target &&)=default
 

Detailed Description

Target implementation wrapping a const Star&.

The referenced Star must outlive the StarTarget. Typically used with the pre-built catalog stars (e.g. VEGA(), SIRIUS()) which are lazy-initialized singletons and live for the entire program.

Examples
05_target_tracking.cpp.

Definition at line 32 of file star_target.hpp.

Constructor & Destructor Documentation

◆ StarTarget()

siderust::StarTarget::StarTarget ( const Star star)
inlineexplicit

Wrap a Star reference as a Target.

Parameters
starReference to a Star. Must outlive this adapter.

Definition at line 38 of file star_target.hpp.

Member Function Documentation

◆ above_threshold()

std::vector< Period< TT, MJD > > siderust::StarTarget::above_threshold ( const Geodetic obs,
const Period< TT, MJD > &  window,
qtty::Degree  threshold,
const SearchOptions opts = {} 
) const
inlineoverridevirtual

Find periods when the object is above a threshold altitude.

Implements siderust::Target.

Definition at line 59 of file star_target.hpp.

◆ altitude_at()

qtty::Degree siderust::StarTarget::altitude_at ( const Geodetic obs,
const Time< TT, MJD > &  mjd 
) const
inlineoverridevirtual

Compute altitude (degrees) at a given Time<TT, MJD> instant.

Implements siderust::Target.

Definition at line 53 of file star_target.hpp.

References siderust::star_altitude::altitude_at().

◆ azimuth_at()

qtty::Degree siderust::StarTarget::azimuth_at ( const Geodetic obs,
const Time< TT, MJD > &  mjd 
) const
inlineoverridevirtual

Compute azimuth (degrees, N-clockwise) at a given Time<TT, MJD> instant.

Implements siderust::Target.

Definition at line 86 of file star_target.hpp.

References siderust::star_altitude::azimuth_at().

◆ azimuth_crossings()

std::vector< AzimuthCrossingEvent > siderust::StarTarget::azimuth_crossings ( const Geodetic obs,
const Period< TT, MJD > &  window,
qtty::Degree  bearing,
const SearchOptions opts = {} 
) const
inlineoverridevirtual

Find epochs when the object crosses a given azimuth bearing.

Implements siderust::Target.

Definition at line 91 of file star_target.hpp.

◆ below_threshold()

std::vector< Period< TT, MJD > > siderust::StarTarget::below_threshold ( const Geodetic obs,
const Period< TT, MJD > &  window,
qtty::Degree  threshold,
const SearchOptions opts = {} 
) const
inlineoverridevirtual

Find periods when the object is below a threshold altitude.

Implements siderust::Target.

Definition at line 65 of file star_target.hpp.

◆ crossings()

std::vector< CrossingEvent > siderust::StarTarget::crossings ( const Geodetic obs,
const Period< TT, MJD > &  window,
qtty::Degree  threshold,
const SearchOptions opts = {} 
) const
inlineoverridevirtual

Find threshold-crossing events (rising / setting).

Implements siderust::Target.

Definition at line 71 of file star_target.hpp.

◆ culminations()

std::vector< CulminationEvent > siderust::StarTarget::culminations ( const Geodetic obs,
const Period< TT, MJD > &  window,
const SearchOptions opts = {} 
) const
inlineoverridevirtual

Find culmination (local altitude extremum) events.

Implements siderust::Target.

Definition at line 77 of file star_target.hpp.

◆ name()

std::string siderust::StarTarget::name ( ) const
inlineoverridevirtual

Returns the star's catalog name (delegates to Star::name()).

Implements siderust::Target.

Definition at line 47 of file star_target.hpp.

References siderust::Star::name().

◆ star()

const Star & siderust::StarTarget::star ( ) const
inline

Access the underlying Star reference.

Definition at line 97 of file star_target.hpp.


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