Provides custom handlers to control various aspects of the engine's behaviour.
More...
|
| EngineBehaviour ()=default |
|
virtual | ~EngineBehaviour ()=default |
|
virtual juce::ReferenceCountedObjectPtr< RackType > | createPresetRackType (int, Edit &) |
|
virtual Plugin::Ptr | createCustomPlugin (PluginCreationInfo) |
| This will be called if the PluginManager doesn't know how to create a Plugin for the given info. More...
|
|
virtual std::unique_ptr< juce::PluginDescription > | findDescriptionForFileOrID (const juce::String &) |
| Gives an opportunity to load custom plugins for those that have been registered as custom formats but not added to the list. More...
|
|
virtual bool | isPluginDisabled (const juce::String &) |
| Should return if the given plugin is disabled or not. More...
|
|
virtual void | setPluginDisabled (const juce::String &, bool) |
| Should implement a way of saving if plugin is disabled or not. More...
|
|
virtual bool | shouldLoadPlugin (ExternalPlugin &p) |
| Should the plugin be loaded. More...
|
|
virtual void | doAdditionalInitialisation (ExternalPlugin &) |
| Gives the host a chance to do any extra configuration after a plugin is loaded. More...
|
|
virtual juce::Array< Exportable::ReferencedItem > | getReferencedItems (ExternalPlugin &) |
| If you have any special VST plugins that access items in the Edit, you need to return them. More...
|
|
virtual void | reassignReferencedItem (ExternalPlugin &, const Exportable::ReferencedItem &, ProjectItemID, double) |
| If you have any special VST plugins that access items in the Edit, you need to reassign them. More...
|
|
virtual bool | shouldBypassedPluginsBeRemovedFromPlaybackGraph () |
| Should return if plugins which have been bypassed should be included in the playback graph. More...
|
|
virtual bool | shouldProcessAuxSendWhenTrackIsMuted (AuxSendPlugin &) |
| Whether or not to include muted track contents in aux send plugins. More...
|
|
virtual void | saveCustomPluginProperties (juce::ValueTree &, juce::AudioPluginInstance &, juce::UndoManager *) |
| Gives plugins an opportunity to save custom data when the plugin state gets flushed. More...
|
|
virtual bool | canScanPluginsOutOfProcess () |
| Return true if your application supports scanning plugins out of process. More...
|
|
virtual bool | autoInitialiseDeviceManager () |
| You may want to disable auto initialisation of the device manager if you are using the engine in a plugin. More...
|
|
virtual bool | addSystemAudioIODeviceTypes () |
| In plugin builds, you might want to avoid adding the system audio devices and only use the host inputs. More...
|
|
virtual int | getMiddleCOctave () |
|
virtual void | setMiddleCOctave (int) |
|
virtual int | getDefaultNoteColour () |
|
virtual void | editHasBeenSaved (Edit &, juce::File) |
|
virtual bool | isMidiDriverUsedForIncommingMessageTiming () |
| Should return true if the incoming timestamp for MIDI messages should be used. More...
|
|
virtual void | setMidiDriverUsedForIncommingMessageTiming (bool) |
|
virtual bool | shouldPlayMidiGuideNotes () |
|
virtual int | getNumberOfCPUsToUseForAudio () |
|
virtual bool | shouldProcessMutedTracks () |
| Should muted tracks processing be disabled to save CPU. More...
|
|
virtual bool | monitorAudioInputsWithoutRecordEnable () |
| Should audio inputs be audible when monitor-enabled but not record enabled. More...
|
|
virtual bool | areAudioClipsRemappedWhenTempoChanges () |
|
virtual void | setAudioClipsRemappedWhenTempoChanges (bool) |
|
virtual bool | areAutoTempoClipsRemappedWhenTempoChanges () |
|
virtual void | setAutoTempoClipsRemappedWhenTempoChanges (bool) |
|
virtual bool | areMidiClipsRemappedWhenTempoChanges () |
|
virtual void | setMidiClipsRemappedWhenTempoChanges (bool) |
|
virtual bool | arePluginsRemappedWhenTempoChanges () |
|
virtual void | setPluginsRemappedWhenTempoChanges (bool) |
|
virtual EditLimits | getEditLimits () |
| Should return the maximum number of elements that can be added to an Edit. More...
|
|
virtual bool | lengthOfOneBeatDependsOnTimeSignature () |
| If this returns true, it means that the length (in seconds) of one "beat" at any point in an edit is considered to be the length of one division in the current bar's time signature. More...
|
|
virtual LevelMeterSettings | getLevelMeterSettings () |
|
virtual void | setLevelMeterSettings (LevelMeterSettings) |
|
virtual void | setProcessPriority (int) |
|
virtual bool | isDescriptionOfWaveDevicesSupported () |
| If this returns true, you must implement describeWaveDevices to determine the wave devices for a given device. More...
|
|
virtual void | describeWaveDevices (std::vector< WaveDeviceDescription > &, juce::AudioIODevice &, bool) |
| If isDescriptionOfWaveDevicesSupported returns true, this should be implemented to describe the wave devices for a given audio device. More...
|
|
virtual juce::MidiMessageSequence | createPlaybackMidiSequence (const MidiList &list, MidiClip &clip, MidiList::TimeBase tb, bool generateMPE) |
| Called by the MidiList to create a MidiMessageSequence for playback. More...
|
|
virtual int | getDefaultLoopedSequenceType () |
| Must return the default looped sequence type to use. More...
|
|
virtual bool | autoAddClipEdgeFades () |
| If this returns true, it means that newly inserted clips will automatically have a fade-in and fade-out of 3ms applied. More...
|
|
virtual ClipDefaults | getClipDefaults () |
| Returns the defaults to be applied to new clips. More...
|
|
virtual void | newClipAdded (Clip &, [[maybe_unused]] bool fromRecording) |
| Returns the defaults to be applied to new clips. More...
|
|
virtual ControlSurfaces | getDesiredControlSurfaces () |
| Return the control surfaces you want enabled in the engine. More...
|
|
virtual ControlSurface * | getCustomControlSurfaceForXML (ExternalControllerManager &, const juce::XmlElement &) |
| Restore a custom control surface from custom XML. More...
|
|
Provides custom handlers to control various aspects of the engine's behaviour.
Create a subclass of EngineBehaviour to customise how the engine operates
virtual bool tracktion::engine::EngineBehaviour::lengthOfOneBeatDependsOnTimeSignature |
( |
| ) |
|
|
virtual |
If this returns true, it means that the length (in seconds) of one "beat" at any point in an edit is considered to be the length of one division in the current bar's time signature.
So for example at 120BPM, in a bar of 4/4, one beat would be the length of a quarter-note (0.5s), but in a bar of 4/8, one beat would be the length of an eighth-note (0.25s)
If false, then the length of one beat always depends only the current BPM at that point in the edit, so where the BPM = 120, one beat is always 0.5s, regardless of the time-sig.
You shouldn't dynamically change this function's return value - just implement a function that always returns true or false.