tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | List of all members
tracktion::engine::Engine Class Reference

The Engine is the central class for all tracktion sessions. More...

#include "tracktion_Engine.h"

Public Types

using WeakRef = juce::WeakReference< Engine >
 

Public Member Functions

 Engine (juce::String applicationName)
 Constructs a default Engine with an application name.
 
 Engine (juce::String applicationName, std::unique_ptr< UIBehaviour >, std::unique_ptr< EngineBehaviour >)
 Constructs an Engine with an application name and custom UIBehaviour and EngineBehaviour.
 
 Engine (std::unique_ptr< PropertyStorage >, std::unique_ptr< UIBehaviour >, std::unique_ptr< EngineBehaviour >)
 Constructs an Engine with custom PropertyStorage, UIBehaviour and EngineBehaviour.
 
 ~Engine ()
 Destructor.
 
TemporaryFileManagergetTemporaryFileManager () const
 Returns the TemporaryFileManager allowing to handle the default app and user temporary folders.
 
AudioFileFormatManagergetAudioFileFormatManager () const
 Returns the AudioFileFormatManager that maintains a list of available audio file formats.
 
PropertyStoragegetPropertyStorage () const
 Returns the PropertyStorage user settings customisable XML file.
 
UIBehaviourgetUIBehaviour () const
 Returns the UIBehaviour class.
 
EngineBehaviourgetEngineBehaviour () const
 Returns the EngineBehaviour instance.
 
DeviceManagergetDeviceManager () const
 Returns the DeviceManager instance for handling audio / MIDI devices.
 
MidiProgramManagergetMidiProgramManager () const
 Returns the MidiProgramManager instance that handles MIDI banks, programs, sets or presets.
 
ExternalControllerManagergetExternalControllerManager () const
 Returns the ExternalControllerManager instance.
 
RenderManagergetRenderManager () const
 Returns the RenderManager instance.
 
BackgroundJobManagergetBackgroundJobs () const
 Returns the BackgroundJobManager instance.
 
AudioFileManagergetAudioFileManager () const
 Returns the AudioFileManager instance.
 
MidiLearnStategetMidiLearnState () const
 Returns the MidiLearnState instance.
 
PluginManagergetPluginManager () const
 Returns the PluginManager instance.
 
EditDeletergetEditDeleter () const
 Returns the EditDeleter instance.
 
RecordingThumbnailManagergetRecordingThumbnailManager () const
 Returns the RecordingThumbnailManager instance.
 
WaveInputRecordingThreadgetWaveInputRecordingThread () const
 Returns the WaveInputRecordingThread instance.
 
ActiveEditsgetActiveEdits () const noexcept
 Returns the ActiveEdits instance.
 
GrooveTemplateManagergetGrooveTemplateManager ()
 Returns the GrooveTemplateManager instance.
 
CompFactorygetCompFactory () const
 Returns the CompFactory instance.
 
WarpTimeFactorygetWarpTimeFactory () const
 Returns the WarpTimeFactory instance.
 
ProjectManagergetProjectManager () const
 Returns the ProjectManager instance.
 
SharedTimergetBackToArrangerUpdateTimer () const
 Returns the SharedTimer instance.
 
BufferedAudioFileManagergetBufferedAudioFileManager ()
 Returns the BufferedAudioFileManager instance.
 

Static Public Member Functions

static juce::String getVersion ()
 Returns the current version of Tracktion Engine.
 
static juce::Array< Engine * > getEngines ()
 Returns the list of currently active engines.
 

Detailed Description

The Engine is the central class for all tracktion sessions.

Create a Engine before creating any edits. Pass in subclasses of behaviours to customise how the engine behaves or pass nullptr to use the defaults. To get going quickly, just use the constructor that takes an application name, which uses default settings.

Typical declaration in your main component:

private:
tracktion_engine::Engine engine { ProjectInfo::projectName}
The Engine is the central class for all tracktion sessions.

For Extended UI use:

private:
tracktion_engine::Engine engine { ProjectInfo::projectName, std::make_unique<ExtendedUIBehaviour>(), nullptr };
T is_pointer_v

Definition at line 34 of file tracktion_Engine.h.

Member Typedef Documentation

◆ WeakRef

Definition at line 83 of file tracktion_Engine.h.

Constructor & Destructor Documentation

◆ Engine() [1/3]

Engine::Engine ( juce::String  applicationName)

Constructs a default Engine with an application name.

Definition at line 43 of file tracktion_Engine.cpp.

◆ Engine() [2/3]

Engine::Engine ( juce::String  applicationName,
std::unique_ptr< UIBehaviour ub,
std::unique_ptr< EngineBehaviour eb 
)

Constructs an Engine with an application name and custom UIBehaviour and EngineBehaviour.

Definition at line 38 of file tracktion_Engine.cpp.

◆ Engine() [3/3]

Constructs an Engine with custom PropertyStorage, UIBehaviour and EngineBehaviour.

Definition at line 17 of file tracktion_Engine.cpp.

◆ ~Engine()

Engine::~Engine ( )

Destructor.

Definition at line 77 of file tracktion_Engine.cpp.

Member Function Documentation

◆ getActiveEdits()

ActiveEdits & Engine::getActiveEdits ( ) const
noexcept

Returns the ActiveEdits instance.

Definition at line 235 of file tracktion_Engine.cpp.

◆ getAudioFileFormatManager()

AudioFileFormatManager & Engine::getAudioFileFormatManager ( ) const

Returns the AudioFileFormatManager that maintains a list of available audio file formats.

Definition at line 139 of file tracktion_Engine.cpp.

◆ getAudioFileManager()

AudioFileManager & Engine::getAudioFileManager ( ) const

Returns the AudioFileManager instance.

Definition at line 193 of file tracktion_Engine.cpp.

◆ getBackgroundJobs()

BackgroundJobManager & Engine::getBackgroundJobs ( ) const

Returns the BackgroundJobManager instance.

Definition at line 169 of file tracktion_Engine.cpp.

◆ getBackToArrangerUpdateTimer()

SharedTimer & Engine::getBackToArrangerUpdateTimer ( ) const

Returns the SharedTimer instance.

Definition at line 265 of file tracktion_Engine.cpp.

◆ getBufferedAudioFileManager()

BufferedAudioFileManager & Engine::getBufferedAudioFileManager ( )

Returns the BufferedAudioFileManager instance.

Definition at line 273 of file tracktion_Engine.cpp.

◆ getCompFactory()

CompFactory & Engine::getCompFactory ( ) const

Returns the CompFactory instance.

Definition at line 249 of file tracktion_Engine.cpp.

◆ getDeviceManager()

DeviceManager & Engine::getDeviceManager ( ) const

Returns the DeviceManager instance for handling audio / MIDI devices.

Definition at line 145 of file tracktion_Engine.cpp.

◆ getEditDeleter()

EditDeleter & Engine::getEditDeleter ( ) const

Returns the EditDeleter instance.

Definition at line 211 of file tracktion_Engine.cpp.

◆ getEngineBehaviour()

EngineBehaviour & Engine::getEngineBehaviour ( ) const

Returns the EngineBehaviour instance.

Definition at line 187 of file tracktion_Engine.cpp.

◆ getEngines()

juce::Array< Engine * > Engine::getEngines ( )
static

Returns the list of currently active engines.

Definition at line 120 of file tracktion_Engine.cpp.

◆ getExternalControllerManager()

ExternalControllerManager & Engine::getExternalControllerManager ( ) const

Returns the ExternalControllerManager instance.

Definition at line 157 of file tracktion_Engine.cpp.

◆ getGrooveTemplateManager()

GrooveTemplateManager & Engine::getGrooveTemplateManager ( )

Returns the GrooveTemplateManager instance.

Definition at line 241 of file tracktion_Engine.cpp.

◆ getMidiLearnState()

MidiLearnState & Engine::getMidiLearnState ( ) const

Returns the MidiLearnState instance.

Definition at line 199 of file tracktion_Engine.cpp.

◆ getMidiProgramManager()

MidiProgramManager & Engine::getMidiProgramManager ( ) const

Returns the MidiProgramManager instance that handles MIDI banks, programs, sets or presets.

Definition at line 151 of file tracktion_Engine.cpp.

◆ getPluginManager()

PluginManager & Engine::getPluginManager ( ) const

Returns the PluginManager instance.

Definition at line 205 of file tracktion_Engine.cpp.

◆ getProjectManager()

ProjectManager & Engine::getProjectManager ( ) const

Returns the ProjectManager instance.

Definition at line 133 of file tracktion_Engine.cpp.

◆ getPropertyStorage()

PropertyStorage & Engine::getPropertyStorage ( ) const

Returns the PropertyStorage user settings customisable XML file.

Definition at line 175 of file tracktion_Engine.cpp.

◆ getRecordingThumbnailManager()

RecordingThumbnailManager & Engine::getRecordingThumbnailManager ( ) const

Returns the RecordingThumbnailManager instance.

Definition at line 223 of file tracktion_Engine.cpp.

◆ getRenderManager()

RenderManager & Engine::getRenderManager ( ) const

Returns the RenderManager instance.

Definition at line 163 of file tracktion_Engine.cpp.

◆ getTemporaryFileManager()

TemporaryFileManager & Engine::getTemporaryFileManager ( ) const

Returns the TemporaryFileManager allowing to handle the default app and user temporary folders.

Definition at line 217 of file tracktion_Engine.cpp.

◆ getUIBehaviour()

UIBehaviour & Engine::getUIBehaviour ( ) const

Returns the UIBehaviour class.

Definition at line 181 of file tracktion_Engine.cpp.

◆ getVersion()

juce::String Engine::getVersion ( )
static

Returns the current version of Tracktion Engine.

Definition at line 115 of file tracktion_Engine.cpp.

◆ getWarpTimeFactory()

WarpTimeFactory & Engine::getWarpTimeFactory ( ) const

Returns the WarpTimeFactory instance.

Definition at line 257 of file tracktion_Engine.cpp.

◆ getWaveInputRecordingThread()

WaveInputRecordingThread & Engine::getWaveInputRecordingThread ( ) const

Returns the WaveInputRecordingThread instance.

Definition at line 229 of file tracktion_Engine.cpp.


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