153 bool _dropFrame =
false;
Represents a video frame rate as a rational number.
Definition framerate.h:36
Dynamic array container wrapping std::vector.
Definition list.h:40
General-purpose timecode generator.
Definition timecodegenerator.h:37
FrameRate frameRate() const
Returns the configured frame rate.
Definition timecodegenerator.h:60
TimecodeGenerator(const FrameRate &frameRate, bool dropFrame=false)
Constructs a generator with the given frame rate.
Timecode advance()
Advances the generator by one frame.
void reset()
Resets the generator.
RunMode
Run mode for the generator.
Definition timecodegenerator.h:40
@ Forward
Timecode increments each frame.
Definition timecodegenerator.h:42
@ Still
Timecode does not advance.
Definition timecodegenerator.h:41
@ Reverse
Timecode decrements each frame.
Definition timecodegenerator.h:43
void setDropFrame(bool df)
Enables or disables drop-frame counting.
uint64_t frameCount() const
Returns the total number of frames advanced.
Definition timecodegenerator.h:142
bool dropFrame() const
Returns whether drop-frame counting is enabled.
Definition timecodegenerator.h:72
Timecode timecode() const
Returns the current timecode value.
Definition timecodegenerator.h:106
void setFrameRate(const FrameRate &frameRate)
Sets the frame rate and re-derives the timecode mode.
Timecode::Mode timecodeMode() const
Returns the resolved timecode mode.
Definition timecodegenerator.h:88
void jam(const Timecode &tc)
Jams to a new timecode value mid-run.
RunMode runMode() const
Returns the current run mode.
Definition timecodegenerator.h:94
void setTimecode(const Timecode &tc)
Sets the current timecode value.
TimecodeGenerator()=default
Constructs a default generator with no frame rate set.
void setRunMode(RunMode mode)
Sets the run mode.
Definition timecodegenerator.h:100
Describes the timecode mode (frame rate and drop-frame status).
Definition timecode.h:70
Class for holding and manipulating timecode.
Definition timecode.h:45
#define PROMEKI_NAMESPACE_BEGIN
Starts a promeki namespace block.
Definition namespace.h:14
#define PROMEKI_NAMESPACE_END
Ends a promeki namespace block.
Definition namespace.h:19