Abstract base for any celestial object that can be tracked from an observer location.
More...
|
| virtual | ~Target ()=default |
| |
| virtual std::string | name () const =0 |
| | Human-readable name for this target (e.g. "Sun", "Vega", "ICRS(279.2°, 38.8°)").
|
| |
| virtual qtty::Degree | altitude_at (const Geodetic &obs, const Time< TT, MJD > &mjd) const =0 |
| | Compute altitude (degrees) at a given Time<TT, MJD> instant.
|
| |
| virtual std::vector< Period< TT, MJD > > | above_threshold (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const =0 |
| | Find periods when the object is above a threshold altitude.
|
| |
| virtual std::vector< Period< TT, MJD > > | below_threshold (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const =0 |
| | Find periods when the object is below a threshold altitude.
|
| |
| virtual std::vector< CrossingEvent > | crossings (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree threshold, const SearchOptions &opts={}) const =0 |
| | Find threshold-crossing events (rising / setting).
|
| |
| virtual std::vector< CulminationEvent > | culminations (const Geodetic &obs, const Period< TT, MJD > &window, const SearchOptions &opts={}) const =0 |
| | Find culmination (local altitude extremum) events.
|
| |
| virtual qtty::Degree | azimuth_at (const Geodetic &obs, const Time< TT, MJD > &mjd) const =0 |
| | Compute azimuth (degrees, N-clockwise) at a given Time<TT, MJD> instant.
|
| |
| virtual std::vector< AzimuthCrossingEvent > | azimuth_crossings (const Geodetic &obs, const Period< TT, MJD > &window, qtty::Degree bearing, const SearchOptions &opts={}) const =0 |
| | Find epochs when the object crosses a given azimuth bearing.
|
| |
| | Target ()=default |
| |
| | Target (const Target &)=delete |
| |
| Target & | operator= (const Target &)=delete |
| |
| | Target (Target &&)=default |
| |
| Target & | operator= (Target &&)=default |
| |
Abstract base for any celestial object that can be tracked from an observer location.
Subclasses represent concrete target kinds: fixed sky directions, catalog stars, solar-system bodies, and (in the future) satellites. All must implement name(), altitude_at(), and azimuth_at(); the search helpers also need overrides.
Definition at line 54 of file trackable.hpp.