TracktionEngine
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
engine::ClipEffects Class Reference

#include <tracktion_ClipEffects.h>

Inheritance diagram for 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.
 
TimePosition getEffectsStartTime () const
 Returns the start position in the file that the effect should apply to.
 
TimeDuration getEffectsLength () const
 Returns the length of the effect.
 
TimeRange getEffectsRange () const
 Returns the range of the file that the effect should apply to.
 
double getSpeedRatioEstimate () const
 Returns the speed ratio of the clip or an estimate of this if the clip is auto tempo.
 
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 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
 

Static Public Member Functions

static juce::ValueTree create ()
 

Public Attributes

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

Additional Inherited Members

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

Constructor & Destructor Documentation

◆ ClipEffects()

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

◆ ~ClipEffects()

engine::ClipEffects::~ClipEffects ( )
override

Member Function Documentation

◆ create()

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

◆ flushStateToValueTree()

void engine::ClipEffects::flushStateToValueTree ( )

◆ getClipEffect()

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

◆ getHash()

HashCode engine::ClipEffects::getHash ( ) const

Returns the hash for this set of effects.

◆ getEffectsStartTime()

TimePosition 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 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 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 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 engine::ClipEffects::isUsingFile ( const AudioFile af)

◆ notifyListenersOfRenderCompletion()

void engine::ClipEffects::notifyListenersOfRenderCompletion ( )

◆ createRenderJob()

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

◆ isSuitableType()

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

◆ createNewObject()

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

◆ deleteObject()

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

◆ newObjectAdded()

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

◆ objectRemoved()

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

◆ objectOrderChanged()

void engine::ClipEffects::objectOrderChanged ( )
overridevirtual

◆ addListener()

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

◆ removeListener()

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

Member Data Documentation

◆ clip

AudioClipBase& engine::ClipEffects::clip

◆ state

juce::ValueTree engine::ClipEffects::state

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