24#include "pybind11/pybind11.h"
44using namespace pybind11::literals;
61 [](
auto &mod,
auto &cls) {
63 cls.def(py::init<table::RecordId, double, double, daf::base::DateTime const &, double,
64 lsst::geom::Angle const &, lsst::geom::SpherePoint const &,
65 lsst::geom::SpherePoint const &, double, lsst::geom::Angle const &,
66 RotType const &, coord::Observatory const &, coord::Weather const &,
67 std::string const &, table::RecordId const &>(),
68 "exposureId"_a = 0,
"exposureTime"_a = nan,
"darkTime"_a = nan,
69 "date"_a = daf::base::DateTime(),
"ut1"_a = nan,
"era"_a = nanAngle,
70 "boresightRaDec"_a = lsst::geom::SpherePoint(nanAngle, nanAngle),
71 "boresightAzAlt"_a = lsst::geom::SpherePoint(nanAngle, nanAngle),
72 "boresightAirmass"_a = nan,
"boresightRotAngle"_a = nanAngle,
73 "rotType"_a = RotType::UNKNOWN,
74 "observatory"_a = coord::Observatory(nanAngle, nanAngle, nan),
75 "weather"_a = coord::Weather(nan, nan, nan),
"instrumentLabel"_a =
"",
"id"_a = 0);
76 cls.def(py::init<daf::base::PropertySet const &>(),
"metadata"_a);
77 cls.def(py::init<VisitInfo const &>(),
"visitInfo"_a);
79 table::io::python::addPersistableMethods<VisitInfo>(cls);
83 "__eq__", [](VisitInfo const &self, VisitInfo const &other) { return self == other; },
134 wrappers.wrapType(py::enum_<RotType>(wrappers.module,
"RotType"), [](
auto &mod,
auto &enm) {
135 enm.value(
"UNKNOWN", RotType::UNKNOWN);
136 enm.value(
"SKY", RotType::SKY);
137 enm.value(
"HORIZON", RotType::HORIZON);
138 enm.value(
"MOUNT", RotType::MOUNT);
144 wrappers.addInheritanceDependency(
"lsst.daf.base");
145 wrappers.addInheritanceDependency(
"lsst.geom");
146 wrappers.addInheritanceDependency(
"lsst.afw.coord");
147 wrappers.addInheritanceDependency(
"lsst.afw.typehandling");
150 wrappers.wrap([](
auto &mod) {
Information about a single exposure of an imaging camera.
daf::base::DateTime getDate() const
get uniform date and time at middle of exposure
coord::Weather getWeather() const
get basic weather information
lsst::geom::Angle getLocalEra() const
double getUt1() const
get UT1 (universal time) MJD date at middle of exposure
double getBoresightAirmass() const
get airmass at the boresight, relative to zenith at sea level (and at the middle of the exposure,...
lsst::geom::Angle getBoresightHourAngle() const
lsst::geom::Angle getBoresightRotAngle() const
Get rotation angle at boresight at middle of exposure.
table::RecordId getExposureId() const
get exposure ID
lsst::geom::Angle getEra() const
get earth rotation angle at middle of exposure
bool isPersistable() const noexcept override
Return true if this particular object can be persisted using afw::table::io.
table::RecordId getId() const
double getExposureTime() const
get exposure duration (shutter open time); (sec)
RotType getRotType() const
get rotation type of boresightRotAngle
lsst::geom::SpherePoint getBoresightAzAlt() const
get refracted apparent topocentric Az/Alt position at the boresight (and at the middle of the exposur...
lsst::geom::SpherePoint getBoresightRaDec() const
get ICRS RA/Dec position at the boresight (and at the middle of the exposure, if it varies with time)
std::string getInstrumentLabel() const
double getDarkTime() const
get time from CCD flush to exposure readout, including shutter open time (despite the name); (sec)
coord::Observatory getObservatory() const
get observatory longitude, latitude and elevation
lsst::geom::Angle getBoresightParAngle() const
Get parallactic angle at the boresight.
Interface supporting iteration over heterogenous containers.
A class representing an angle.
int stripVisitInfoKeywords(daf::base::PropertySet &metadata)
Remove VisitInfo-related keywords from the metadata.
void setVisitInfoMetadata(daf::base::PropertyList &metadata, VisitInfo const &visitInfo)
Set FITS metadata from a VisitInfo.
Backwards-compatibility support for depersisting the old Calib (FluxMag0/FluxMag0Err) objects.
void declareVisitInfo(lsst::utils::python::WrapperCollection &wrappers)
void declareRotType(lsst::utils::python::WrapperCollection &wrappers)
void wrapVisitInfo(lsst::utils::python::WrapperCollection &)
void addOutputOp(PyClass &cls, std::string const &method)
Add __str__ or __repr__ method implemented by operator<<.
A base class for image defects.