25#if !defined(LSST_AFW_COORD_OBSERVATORY_H)
26#define LSST_AFW_COORD_OBSERVATORY_H
33#include "lsst/utils/hashCombine.h"
88 auto deltaLongitude = (_latitude - rhs.getLatitude()).wrapCtr();
89 auto deltaLatitude = (_longitude - rhs.getLongitude()).wrapCtr();
98 return utils::hashCombine(17, _latitude.
wrapCtr(), _longitude.
wrapCtr(), _elevation);
table::Key< lsst::geom::Angle > longitude
table::Key< lsst::geom::Angle > latitude
table::Key< double > elevation
Hold the location of an observatory.
void setLatitude(lsst::geom::Angle const latitude)
set telescope latitude (positive values are E of Greenwich)
std::string toString() const
get string representation
double getElevation() const noexcept
get telescope elevation (meters above reference spheroid)
std::size_t hash_value() const noexcept
Return a hash of this object.
Observatory(std::string const &longitude, std::string const &latitude, double const elevation)
Construct an Observatory with longitude and latitude specified as sexagesimal strings.
void setElevation(double const elevation)
set telescope elevation (meters above reference spheroid)
bool operator!=(Observatory const &rhs) const noexcept
void setLongitude(lsst::geom::Angle const longitude)
set telescope longitude
bool operator==(Observatory const &rhs) const noexcept
lsst::geom::Angle getLatitude() const noexcept
get telescope latitude
Observatory(lsst::geom::Angle const longitude, lsst::geom::Angle const latitude, double const elevation)
Construct an Observatory with longitude and latitude specified as lsst::geom::Angle.
lsst::geom::Angle getLongitude() const noexcept
get telescope longitude (positive values are E of Greenwich)
Angle wrapCtr() const noexcept
std::ostream & operator<<(std::ostream &os, Observatory const &obs)
Print an Observatory to the stream.
class[[deprecated("Removed with no replacement (but see lsst::afw::image::TransmissionCurve). Will be " "removed after v22.")]] FilterProperty final
Describe the properties of a Filter (e.g.
constexpr AngleUnit degrees
A base class for image defects.
size_t operator()(argument_type const &obj) const noexcept