![]() |
AAX SDK 2.6.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. | |
| virtual AAX_Result | Uninitialize ()=0 |
| Main uninitialization. | |
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. | |
Public Member Functions inherited from IACFUnknown | |
| virtual BEGIN_ACFINTERFACE ACFRESULT ACFMETHODCALLTYPE | QueryInterface (const acfIID &iid, void **ppOut)=0 |
| Returns pointers to supported interfaces. | |
| virtual acfUInt32 ACFMETHODCALLTYPE | AddRef (void)=0 |
| Increments reference count. | |
| virtual acfUInt32 ACFMETHODCALLTYPE | Release (void)=0 |
| Decrements reference count. | |
|
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.
1.9.6