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< CrossingEvent > crossings (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const override
 Find threshold-crossing events (rising / setting).
std::vector< CulminationEvent > culminations (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< AzimuthCrossingEvent > azimuth_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 Star & star () const
 Access the underlying Star reference.
Public Member Functions inherited from siderust::Target
virtual ~Target ()=default
 Target ()=default
 Target (const Target &)=delete
Target & operator= (const Target &)=delete
 Target (Target &&)=default
Target & operator= (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.

References star().

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.

◆ star()

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

Access the underlying Star reference.

Definition at line 97 of file star_target.hpp.

Referenced by StarTarget().


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