42 #ifndef STEAM_PLAY_TIMINGS_H 43 #define STEAM_PLAY_TIMINGS_H 55 #include <boost/rational.hpp> 78 enum PlaybackUrgency {
100 PlaybackUrgency playbackUrgency;
101 boost::rational<FrameCnt> playbackSpeed;
117 Time getOrigin()
const;
119 Time getFrameStartAt (FrameCnt frameNr)
const;
121 Duration getFrameDurationAt (FrameCnt refFrameNr)
const;
124 FrameCnt getBreakPointAfter (
TimeValue refPoint)
const;
142 Offset getRealOffset (FrameCnt frameOffset)
const;
155 Time getTimeDue(FrameCnt frameOffset)
const;
165 Duration getPlanningChunkDuration()
const;
174 FrameCnt establishNextPlanningChunkStart(FrameCnt anchorFrame)
const;
177 bool isOriginalSpeed()
const;
178 bool isTimebound()
const;
182 bool isValid()
const;
196 Timings::isOriginalSpeed()
const 198 return 1 == playbackSpeed;
202 Timings::isTimebound()
const 204 return play::TIMEBOUND == playbackUrgency;
Time scheduledDelivery
a wall clock time corresponding to the Grid's origin. Can be Time::Never (=not time bound) ...
Framerate specified as frames per second.
Generic frame timing specification.
Steam-Layer implementation namespace root.
Implementation namespace for support and library code.
Lumiera's internal time value datatype.
static Timings DISABLED
marker for halted output
Duration engineLatency
reasonable guess at the scheduling and dispatch-delay of the render engine
Lumiera error handling (C++ interface).
Offset measures a distance in time.
Duration is the internal Lumiera time metric.
int64_t FrameCnt
relative framecount or frame number.
a family of time value like entities and their relationships.
basic constant internal time value.