AAX SDK  2.4.1
Avid Audio Extensions Development Kit
List of all members | Public Member Functions
AAX_IACFController_V2 Class Referenceabstract

#include <AAX_IACFController.h>

Inheritance diagram for AAX_IACFController_V2:
[legend]
Collaboration diagram for AAX_IACFController_V2:
[legend]

Description

Interface for the AAX host's view of a single instance of an effect. Used by both clients of the AAXHost and by effect components.

Public Member Functions

virtual AAX_Result SendNotification (AAX_CTypeID inNotificationType, const void *inNotificationData, uint32_t inNotificationDataSize)=0
 CALL: Dispatch a notification. More...
 
virtual AAX_Result GetHybridSignalLatency (int32_t *outSamples) const =0
 CALL: Returns the latency between the algorithm normal input samples and the inputs returning from the hyrbid component. More...
 
virtual AAX_Result GetCurrentAutomationTimestamp (AAX_CTransportCounter *outTimestamp) const =0
 CALL: Returns the current automation timestamp if called during the GenerateCoefficients() call AND the generation of coefficients is being triggered by an automation point instead of immediate changes. More...
 
virtual AAX_Result GetHostName (AAX_IString *outHostNameString) const =0
 CALL: Returns name of the host application this plug-in instance is being loaded by. This string also typically includes version information. More...
 
- Public Member Functions inherited from AAX_IACFController
virtual AAX_Result GetEffectID (AAX_IString *outEffectID) const =0
 
virtual AAX_Result GetSampleRate (AAX_CSampleRate *outSampleRate) const =0
 CALL: Returns the current literal sample rate. More...
 
virtual AAX_Result GetInputStemFormat (AAX_EStemFormat *outStemFormat) const =0
 CALL: Returns the plug-in's input stem format. More...
 
virtual AAX_Result GetOutputStemFormat (AAX_EStemFormat *outStemFormat) const =0
 CALL: Returns the plug-in's output stem format. More...
 
virtual AAX_Result GetSignalLatency (int32_t *outSamples) const =0
 CALL: Returns the most recent signal (algorithmic) latency that has been published by the plug-in. More...
 
virtual AAX_Result GetCycleCount (AAX_EProperty inWhichCycleCount, AAX_CPropertyValue *outNumCycles) const =0
 CALL: returns the plug-in's current real-time DSP cycle count. More...
 
virtual AAX_Result GetTODLocation (AAX_CTimeOfDay *outTODLocation) const =0
 CALL: Returns the current Time Of Day (TOD) of the system. More...
 
virtual AAX_Result SetSignalLatency (int32_t inNumSamples)=0
 CALL: Submits a request to change the delay compensation value that the host uses to account for the plug-in's signal (algorithmic) latency. More...
 
virtual AAX_Result SetCycleCount (AAX_EProperty *inWhichCycleCounts, AAX_CPropertyValue *iValues, int32_t numValues)=0
 CALL: Indicates a change in the plug-in's real-time DSP cycle count. More...
 
virtual AAX_Result PostPacket (AAX_CFieldIndex inFieldIndex, const void *inPayloadP, uint32_t inPayloadSize)=0
 CALL: Posts a data packet to the host for routing between plug-in components. More...
 
virtual AAX_Result GetCurrentMeterValue (AAX_CTypeID inMeterID, float *outMeterValue) const =0
 CALL: Retrieves the current value of a host-managed plug-in meter. More...
 
virtual AAX_Result GetMeterPeakValue (AAX_CTypeID inMeterID, float *outMeterPeakValue) const =0
 CALL: Retrieves the currently held peak value of a host-managed plug-in meter. More...
 
virtual AAX_Result ClearMeterPeakValue (AAX_CTypeID inMeterID) const =0
 CALL: Clears the peak value from a host-managed plug-in meter. More...
 
virtual AAX_Result GetMeterClipped (AAX_CTypeID inMeterID, AAX_CBoolean *outClipped) const =0
 CALL: Retrieves the clipped flag from a host-managed plug-in meter. More...
 
virtual AAX_Result ClearMeterClipped (AAX_CTypeID inMeterID) const =0
 CALL: Clears the clipped flag from a host-managed plug-in meter. More...
 
virtual AAX_Result GetMeterCount (uint32_t *outMeterCount) const =0
 CALL: Retrieves the number of host-managed meters registered by a plug-in. More...
 
virtual AAX_Result GetNextMIDIPacket (AAX_CFieldIndex *outPort, AAX_CMidiPacket *outPacket)=0
 CALL: Retrieves MIDI packets for described MIDI nodes. More...
 
- Public Member Functions inherited from IACFUnknown
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...
 

Member Function Documentation

◆ SendNotification()

virtual AAX_Result AAX_IACFController_V2::SendNotification ( AAX_CTypeID  inNotificationType,
const void *  inNotificationData,
uint32_t  inNotificationDataSize 
)
pure virtual

CALL: Dispatch a notification.

The notification is handled by the host and may be delivered back to other plug-in components such as the GUI or data model (via AAX_IEffectGUI::NotificationReceived() or AAX_IEffectParameters::NotificationReceived(), respectively) depending on the notification type.

The host may choose to dispatch the posted notification either synchronously or asynchronously.

See the AAX_ENotificationEvent documentation for more information.

This method is supported by AAX V2 Hosts only. Check the return code on the return of this function. If the error is AAX_ERROR_UNIMPLEMENTED, your plug-in is being loaded into a host that doesn't support this feature.

Parameters
[in]inNotificationTypeType of notification to send
[in]inNotificationDataBlock of notification data
[in]inNotificationDataSizeSize of inNotificationData, in bytes

◆ GetHybridSignalLatency()

virtual AAX_Result AAX_IACFController_V2::GetHybridSignalLatency ( int32_t *  outSamples) const
pure virtual

CALL: Returns the latency between the algorithm normal input samples and the inputs returning from the hyrbid component.

This method provides the number of samples that the AAX host expects the plug-in to delay a signal. The host will use this value when accounting for latency across the system.

Note
This value will generally scale up with sample rate, although it's not a simple multiple due to some fixed overhead. This value will be fixed for any given sample rate regardless of other buffer size settings in the host app.
Parameters
[out]outSamplesThe number of samples of hybrid signal delay

◆ GetCurrentAutomationTimestamp()

virtual AAX_Result AAX_IACFController_V2::GetCurrentAutomationTimestamp ( AAX_CTransportCounter outTimestamp) const
pure virtual

CALL: Returns the current automation timestamp if called during the GenerateCoefficients() call AND the generation of coefficients is being triggered by an automation point instead of immediate changes.

Note
This function will return 0 if called from outside of GenerateCoefficients() or if the GenerateCoefficients() call was initiated due to a non-automated change. In those cases, you can get your sample offset from the transport start using GetTODLocation().
Parameters
[out]outTimestampThe current coefficient timestamp. Sample count from transport start.

◆ GetHostName()

virtual AAX_Result AAX_IACFController_V2::GetHostName ( AAX_IString outHostNameString) const
pure virtual

CALL: Returns name of the host application this plug-in instance is being loaded by. This string also typically includes version information.

Host Compatibility Notes:
Pro Tools versions from Pro Tools 11.0 to Pro Tools 12.3.1 will return a generic version string to this call. This issue is resolved beginning in Pro Tools 12.4.
Parameters
[out]outHostNameStringThe name of the current host application.

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