TracktionEngine
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions
tracktion_EditTime.h File Reference

Classes

struct  tracktion::engine::EditPosition
 Represents a time point in an Edit stored as either time or beats. More...
 
class  tracktion::engine::EditPositionWithTempoSequence
 
struct  tracktion::engine::EditTimeRange
 Represents a time range in an Edit stored as either time or beats. More...
 
struct  tracktion::engine::ClipPosition
 Represents the position of a clip on a timeline. More...
 
struct  tracktion::engine::ClipPositionBeats
 Represents the position of a clip on a timeline. More...
 
struct  juce::VariantConverter< tracktion::core::TimePosition >
 
struct  juce::VariantConverter< tracktion::core::TimeDuration >
 
struct  juce::VariantConverter< tracktion::core::BeatPosition >
 
struct  juce::VariantConverter< tracktion::core::BeatDuration >
 

Namespaces

namespace  tracktion
 
namespace  tracktion::engine
 
namespace  juce
 

Typedefs

using tracktion::engine::EditDuration = std::variant< TimeDuration, BeatDuration >
 Alias for a duration.
 
using tracktion::engine::EditTime = EditPosition
 Alias provided for compatibility, may be removed in future.
 

Functions

BeatPosition tracktion::engine::toBeats (TimePosition, const TempoSequence &)
 Converts a TimePosition to a BeatPosition given a TempoSequence.
 
BeatPosition tracktion::engine::toBeats (TimePosition, const tempo::Sequence &)
 
TimePosition tracktion::engine::toTime (BeatPosition, const TempoSequence &)
 Converts a BeatPosition to a TimePosition given a TempoSequence.
 
TimePosition tracktion::engine::toTime (BeatPosition, const tempo::Sequence &)
 
BeatRange tracktion::engine::toBeats (TimeRange, const TempoSequence &)
 Converts a TimeRange to a BeatRange given a TempoSequence.
 
BeatRange tracktion::engine::toBeats (TimeRange, const tempo::Sequence &)
 
TimeRange tracktion::engine::toTime (BeatRange, const TempoSequence &)
 Converts a BeatRange to a TimeRange given a TempoSequence.
 
TimeRange tracktion::engine::toTime (BeatRange, const tempo::Sequence &)
 
EditPosition tracktion::engine::toPosition (EditDuration)
 Returns the raw value of beats or seconds, only really useful for comparing two EditDurations with the same time base.
 
double tracktion::engine::toUnderlying (EditDuration)
 Returns the raw value of beats or seconds, only really useful for comparing two EditDurations with the same time base.
 
bool tracktion::engine::isZero (EditDuration)
 Returns true if the duration is 0 beats or seconds.
 
bool tracktion::engine::isGreaterThanZero (EditDuration)
 Returns true if the duration is greater than zero beats or seconds.
 
EditPosition tracktion::engine::plus (const EditPosition &lhs, const EditDuration &rhs, const TempoSequence &ts)
 
EditPosition tracktion::engine::minus (const EditPosition &lhs, const EditDuration &rhs, const TempoSequence &ts)
 
bool tracktion::engine::equals (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
EditDuration tracktion::engine::minus (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
bool tracktion::engine::less (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
bool tracktion::engine::greater (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
bool tracktion::engine::lessThanOrEqualTo (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
bool tracktion::engine::greaterThanOrEqualTo (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
EditPosition tracktion::engine::min (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
EditPosition tracktion::engine::max (const EditPosition &lhs, const EditPosition &rhs, const TempoSequence &ts)
 
EditDuration tracktion::engine::toDuration (const EditPosition &p)
 
bool tracktion::engine::operator== (const EditPositionWithTempoSequence &lhs, const EditPositionWithTempoSequence &rhs)
 
bool tracktion::engine::operator< (const EditPositionWithTempoSequence &lhs, const EditPositionWithTempoSequence &rhs)
 
bool tracktion::engine::operator<= (const EditPositionWithTempoSequence &lhs, const EditPositionWithTempoSequence &rhs)
 
bool tracktion::engine::operator> (const EditPositionWithTempoSequence &lhs, const EditPositionWithTempoSequence &rhs)
 
bool tracktion::engine::operator>= (const EditPositionWithTempoSequence &lhs, const EditPositionWithTempoSequence &rhs)
 
EditDuration tracktion::engine::operator- (const EditPositionWithTempoSequence &lhs, const EditPositionWithTempoSequence &rhs)
 
EditPosition tracktion::engine::operator+ (const EditPositionWithTempoSequence &lhs, const EditDuration &rhs)
 
EditPosition tracktion::engine::operator- (const EditPositionWithTempoSequence &lhs, const EditDuration &rhs)
 
TimePosition tracktion::engine::toTime (EditPosition, const TempoSequence &)
 Converts an EditTime to a TimePosition.
 
BeatPosition tracktion::engine::toBeats (EditPosition, const TempoSequence &)
 Converts an EditTime to a BeatPosition.
 
double tracktion::engine::toUnderlying (EditPosition)
 Returns the raw number of seconds or beats.
 
juce::Range< double > tracktion::engine::toUnderlying (EditTimeRange)
 Returns the raw number of seconds or beats.
 
bool tracktion::engine::contains (EditTimeRange, EditPosition, const TempoSequence &)
 Returns true if the given position is contained within the given range.
 
bool tracktion::engine::containsInclusive (EditTimeRange, EditPosition, const TempoSequence &)
 Returns true if the given position is contained within the given closed range.
 
TimeRange tracktion::engine::toTime (EditTimeRange, const TempoSequence &)
 Converts an EditTimeRange to a TimeRange.
 
BeatRange tracktion::engine::toBeats (EditTimeRange, const TempoSequence &)
 Converts an EditTimeRange to a BeatRange.
 
ClipPosition tracktion::engine::createClipPosition (const TempoSequence &, TimeRange, TimeDuration offset={})
 Creates a ClipPosition from either a time or beat range.
 
ClipPosition tracktion::engine::createClipPosition (const TempoSequence &, BeatRange, BeatDuration offset={})
 Creates a ClipPosition from either a time or beat range.
 
TimePosition tracktion::engine::toTime (EditPosition et, const tempo::Sequence &ts)
 
BeatPosition tracktion::engine::toBeats (EditPosition et, const tempo::Sequence &ts)
 
TimeRange tracktion::engine::toTime (EditTimeRange r, const tempo::Sequence &ts)
 
BeatRange tracktion::engine::toBeats (EditTimeRange r, const tempo::Sequence &ts)