![]() |
AAX SDK
2.4.1
Avid Audio Extensions Development Kit
|
#include <AAX_IACFEffectDirectData.h>
Optional interface for direct access to a plug-in's alg memory.
Direct data access allows a plug-in to directly manipulate the data in its algorithm's private data blocks. The callback methods in this interface provide a safe context from which this kind of access may be attempted.
Public Member Functions | |
Initialization and uninitialization | |
virtual AAX_Result | Initialize (IACFUnknown *iController)=0 |
Main initialization. More... | |
virtual AAX_Result | Uninitialize ()=0 |
Main uninitialization. More... | |
Safe data update callbacks | |
These callbacks provide a safe context from which to directly access the algorithm's private data blocks. Each callback is called regularly with roughly the schedule of its corresponding AAX_IEffectParameters counterpart.
| |
virtual AAX_Result | TimerWakeup (IACFUnknown *iDataAccessInterface)=0 |
Periodic wakeup callback for idle-time operations. More... | |
![]() | |
virtual BEGIN_ACFINTERFACE ACFRESULT ACFMETHODCALLTYPE | QueryInterface (const acfIID &iid, void **ppOut)=0 |
Returns pointers to supported interfaces. More... | |
virtual acfUInt32 ACFMETHODCALLTYPE | AddRef (void)=0 |
Increments reference count. More... | |
virtual acfUInt32 ACFMETHODCALLTYPE | Release (void)=0 |
Decrements reference count. More... | |
|
pure virtual |
Main initialization.
Called when the interface is created
[in] | iController | A versioned reference that resolves to an AAX_IController interface |
Implemented in AAX_CEffectDirectData.
|
pure virtual |
Main uninitialization.
Called when the interface is destroyed.
Implemented in AAX_CEffectDirectData.
|
pure virtual |
Periodic wakeup callback for idle-time operations.
Direct alg data updates must be triggered from this method.
This method is called from the host using a non-main thread. In general, it should be driven at approximately one call per 30 ms. However, the wakeup is not guaranteed to be called at any regular interval - for example, it could be held off by a high real-time processing load - and there is no host contract regarding maximum latency between wakeup calls.
This wakeup thread runs continuously and cannot be armed/disarmed or by the plug-in.
[in] | iDataAccessInterface | Reference to the direct access interface. |
Implemented in AAX_CEffectDirectData.