11namespace tracktion {
inline namespace engine
17enum class TimecodeType
37 TimecodeSnapType (TimecodeType t,
int lev) noexcept : type (t), level (lev) {}
48 bool useStartLabelIfZero)
const;
58 int getLevel()
const noexcept {
return level; }
59 int getOneBarLevel()
const noexcept;
68 TimecodeType type = TimecodeType::millisecs;
116 bool isBarsBeats()
const;
117 bool isMilliseconds()
const;
118 bool isSMPTE()
const;
131 int getMaxCharsInPart (
int part,
bool canBeNegative)
const;
133 int getMinValueOfPart (
int part,
bool isRelative)
const;
137 int part,
int newValue,
bool isRelative)
const;
142 int getNumSnapTypes()
const;
145 int getSubSecondDivisions()
const;
154 const int subSecondDivisions = 1000,
155 bool showHours =
false);
167 bool isTripletOverride);
176 int getMinimumResolutionLevel() const noexcept {
return minSnapType.getLevel(); }
179 bool isOneBarOrGreater() const noexcept;
185 bool isTripletOverride;
203 if (v ==
"beats")
return tracktion::engine::TimecodeType::barsBeats;
204 if (v ==
"fps24")
return tracktion::engine::TimecodeType::fps24;
205 if (v ==
"fps25")
return tracktion::engine::TimecodeType::fps25;
206 if (v ==
"fps30")
return tracktion::engine::TimecodeType::fps30;
208 return tracktion::engine::TimecodeType::millisecs;
213 if (t.type == tracktion::engine::TimecodeType::barsBeats)
return "beats";
214 if (t.type == tracktion::engine::TimecodeType::fps24)
return "fps24";
215 if (t.type == tracktion::engine::TimecodeType::fps25)
return "fps25";
216 if (t.type == tracktion::engine::TimecodeType::fps30)
return "fps30";
The Tracktion Edit class!
Holds a list of TempoSetting objects, to form a sequence of tempo changes.
A tempo value, as used in a TempoSequence.
Stores a duration in both beats and seconds.
Represents a duration in beats.
Represents a duration in real-life time.
Represents a position in real-life time.
Iterates along a timeline for drawing things like the ticks on the timebar.
int getCurrentResolutionLevel() const noexcept
the resolution level of the timecode that the current interval is at
TimePosition next()
returns the next time.