22#ifndef ASTSHIM_TIMEFRAME_H
23#define ASTSHIM_TIMEFRAME_H
90 :
Frame(reinterpret_cast<AstFrame *>(astTimeFrame(
"%s", options.c_str()))) {
155 return copyImpl<TimeFrame, AstTimeFrame>();
159 explicit TimeFrame(AstTimeFrame *rawptr) :
Frame(reinterpret_cast<AstFrame *>(rawptr)) {
160 if (!astIsATimeFrame(getRawPtr())) {
162 os <<
"this is a " << getClassName() <<
", which is not a TimeFrame";
TimeFrame(TimeFrame &&)=default
TimeFrame(TimeFrame const &)=default
Copy constructor: make a deep copy.
virtual std::shared_ptr< Object > copyPolymorphic() const override
TimeFrame(AstTimeFrame *rawptr)
Construct a TimeFrame from a raw AST pointer.
TimeFrame & operator=(TimeFrame &&)=default
void setLTOffset(double offset)
Set LTOffset: the offset of Local Time from UTC, in hours.
TimeFrame & operator=(TimeFrame const &)=delete
double getTimeOrigin() const
Get TimeOrigin: the zero point for TimeFrame axis values.
void setAlignTimeScale(std::string const &scale)
Set AlignTimeScale: time scale in which to align TimeFrames.
double currentTime() const
Get the current system time.
void setTimeOrigin(double origin)
Set TimeOrigin: the zero point for TimeFrame axis values.
std::shared_ptr< TimeFrame > copy() const
Return a deep copy of this object.
double getLTOffset() const
Get LTOffset: the offset of Local Time from UTC, in hours.
std::string getAlignTimeScale() const
Get AlignTimeScale: time scale in which to align TimeFrames.
void setTimeScale(std::string const &scale)
Set TimeScale: the timescale used by the TimeFrame.
TimeFrame(std::string const &options="")
Construct a TimeFrame.
std::string getTimeScale() const
Get TimeScale: the timescale used by the TimeFrame.
double safeDouble(double val)
Return a double value after checking status and replacing AST__BAD with nan.
AST wrapper classes and functions.
Frame(int naxes, std::string const &options="")
Frame is used to represent a coordinate system.
void assertOK(AstObject *rawPtr1=nullptr, AstObject *rawPtr2=nullptr)
Throw std::runtime_error if AST's state is bad.
PointD offset(PointD point1, PointD point2, double offset) const
Find the point which is offset a specified distance along the geodesic curve between two other points...
T static_pointer_cast(T... args)