TracktionEngine
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tracktion::engine::ClipEffects Class Reference
Inheritance diagram for tracktion::engine::ClipEffects:

Classes

struct  Listener
 
struct  RenderInhibitor
 

Public Member Functions

 ClipEffects (const juce::ValueTree &, AudioClipBase &)
 
 ~ClipEffects () override
 
void flushStateToValueTree ()
 
ClipEffectgetClipEffect (const juce::ValueTree &v)
 
HashCode getHash () const
 Returns the hash for this set of effects. More...
 
TimePosition getEffectsStartTime () const
 Returns the start position in the file that the effect should apply to. More...
 
TimeDuration getEffectsLength () const
 Returns the length of the effect. More...
 
TimeRange getEffectsRange () const
 Returns the range of the file that the effect should apply to. More...
 
double getSpeedRatioEstimate () const
 Returns the speed ratio of the clip or an estimate of this if the clip is auto tempo. More...
 
bool isUsingFile (const AudioFile &af)
 
void notifyListenersOfRenderCompletion ()
 
RenderManager::Job::Ptr createRenderJob (const AudioFile &destFile, const AudioFile &sourceFile) const
 
bool isSuitableType (const juce::ValueTree &v) const override
 
ClipEffectcreateNewObject (const juce::ValueTree &v) override
 
void deleteObject (ClipEffect *ce) override
 
void newObjectAdded (ClipEffect *) override
 
void objectRemoved (ClipEffect *) override
 
void objectOrderChanged () override
 
void addListener (Listener *l)
 
void removeListener (Listener *l)
 
- Public Member Functions inherited from tracktion::engine::ValueTreeObjectList< ClipEffect >
 ValueTreeObjectList (const juce::ValueTree &parentTree)
 
 ~ValueTreeObjectList () override
 
int size () const
 
bool isEmpty () const noexcept
 
ClipEffectoperator[] (int idx) const
 
ClipEffectat (int idx)
 
ClipEffect ** begin ()
 
ClipEffect *const * begin () const
 
ClipEffect ** end ()
 
ClipEffect *const * end () const
 
void rebuildObjects ()
 
void freeObjects ()
 
void valueTreeChildAdded (juce::ValueTree &, juce::ValueTree &tree) override
 
void valueTreeChildRemoved (juce::ValueTree &exParent, juce::ValueTree &tree, int) override
 
void valueTreeChildOrderChanged (juce::ValueTree &tree, int, int) override
 
void valueTreePropertyChanged (juce::ValueTree &, const juce::Identifier &) override
 
void valueTreeParentChanged (juce::ValueTree &) override
 
void valueTreeRedirected (juce::ValueTree &) override
 
int compareElements (ClipEffect *first, ClipEffect *second) const
 
 ValueTreeObjectList (const juce::ValueTree &parentTree)
 
 ~ValueTreeObjectList () override
 
int size () const
 
bool isEmpty () const noexcept
 
ClipEffectoperator[] (int idx) const
 
ClipEffectat (int idx)
 
ClipEffect ** begin ()
 
ClipEffect *const * begin () const
 
ClipEffect ** end ()
 
ClipEffect *const * end () const
 
void rebuildObjects ()
 
void freeObjects ()
 
void valueTreeChildAdded (juce::ValueTree &, juce::ValueTree &tree) override
 
void valueTreeChildRemoved (juce::ValueTree &exParent, juce::ValueTree &tree, int) override
 
void valueTreeChildOrderChanged (juce::ValueTree &tree, int, int) override
 
void valueTreePropertyChanged (juce::ValueTree &, const juce::Identifier &) override
 
void valueTreeParentChanged (juce::ValueTree &) override
 
void valueTreeRedirected (juce::ValueTree &) override
 
int compareElements (ClipEffect *first, ClipEffect *second) const
 

Static Public Member Functions

static juce::ValueTree create ()
 

Public Attributes

AudioClipBaseclip
 
juce::ValueTree state
 
- Public Attributes inherited from tracktion::engine::ValueTreeObjectList< ClipEffect >
juce::Array< ClipEffect * > objects
 
juce::DummyCriticalSection arrayLock
 
juce::Array< ClipEffect * > objects
 
juce::DummyCriticalSection arrayLock
 

Additional Inherited Members

- Public Types inherited from tracktion::engine::ValueTreeObjectList< ClipEffect >
using ScopedLockType = typename CriticalSectionType::ScopedLockType
 
using ScopedLockType = typename CriticalSectionType::ScopedLockType
 
- Protected Member Functions inherited from tracktion::engine::ValueTreeObjectList< ClipEffect >
void deleteAllObjects ()
 
bool isChildTree (juce::ValueTree &v) const
 
int indexOf (const juce::ValueTree &v) const noexcept
 
void sortArray ()
 
void deleteAllObjects ()
 
bool isChildTree (juce::ValueTree &v) const
 
int indexOf (const juce::ValueTree &v) const noexcept
 
void sortArray ()
 
- Protected Attributes inherited from tracktion::engine::ValueTreeObjectList< ClipEffect >
juce::ValueTree parent
 
juce::ValueTree parent
 

Constructor & Destructor Documentation

◆ ClipEffects()

tracktion::engine::ClipEffects::ClipEffects ( const juce::ValueTree &  ,
AudioClipBase  
)

◆ ~ClipEffects()

tracktion::engine::ClipEffects::~ClipEffects ( )
override

Member Function Documentation

◆ create()

static juce::ValueTree tracktion::engine::ClipEffects::create ( )
static

◆ flushStateToValueTree()

void tracktion::engine::ClipEffects::flushStateToValueTree ( )

◆ getClipEffect()

ClipEffect* tracktion::engine::ClipEffects::getClipEffect ( const juce::ValueTree &  v)

◆ getHash()

HashCode tracktion::engine::ClipEffects::getHash ( ) const

Returns the hash for this set of effects.

References tracktion::engine::ValueTreeObjectList< ClipEffect >::objects.

◆ getEffectsStartTime()

TimePosition tracktion::engine::ClipEffects::getEffectsStartTime ( ) const

Returns the start position in the file that the effect should apply to.

In practice this is the loop start point.

◆ getEffectsLength()

TimeDuration tracktion::engine::ClipEffects::getEffectsLength ( ) const

Returns the length of the effect.

This will be the effective length of the source file i.e. taking into account loop length and speed ratio.

◆ getEffectsRange()

TimeRange tracktion::engine::ClipEffects::getEffectsRange ( ) const

Returns the range of the file that the effect should apply to.

In practice this is the loop start point and loop length.

◆ getSpeedRatioEstimate()

double tracktion::engine::ClipEffects::getSpeedRatioEstimate ( ) const

Returns the speed ratio of the clip or an estimate of this if the clip is auto tempo.

Note that because Edits can have multiple tempo changes this will only be an estimate based on the tempo at the start of the clip.

◆ isUsingFile()

bool tracktion::engine::ClipEffects::isUsingFile ( const AudioFile af)

◆ notifyListenersOfRenderCompletion()

void tracktion::engine::ClipEffects::notifyListenersOfRenderCompletion ( )

◆ createRenderJob()

RenderManager::Job::Ptr tracktion::engine::ClipEffects::createRenderJob ( const AudioFile destFile,
const AudioFile sourceFile 
) const

◆ isSuitableType()

bool tracktion::engine::ClipEffects::isSuitableType ( const juce::ValueTree &  v) const
overridevirtual

◆ createNewObject()

ClipEffect* tracktion::engine::ClipEffects::createNewObject ( const juce::ValueTree &  v)
overridevirtual

◆ deleteObject()

void tracktion::engine::ClipEffects::deleteObject ( ClipEffect ce)
overridevirtual

◆ newObjectAdded()

void tracktion::engine::ClipEffects::newObjectAdded ( ClipEffect )
overridevirtual

◆ objectRemoved()

void tracktion::engine::ClipEffects::objectRemoved ( ClipEffect )
overridevirtual

◆ objectOrderChanged()

void tracktion::engine::ClipEffects::objectOrderChanged ( )
overridevirtual

◆ addListener()

void tracktion::engine::ClipEffects::addListener ( Listener l)

◆ removeListener()

void tracktion::engine::ClipEffects::removeListener ( Listener l)

Member Data Documentation

◆ clip

AudioClipBase& tracktion::engine::ClipEffects::clip

◆ state

juce::ValueTree tracktion::engine::ClipEffects::state

The documentation for this class was generated from the following file: