AAX SDK 2.8.0
Avid Audio Extensions Development Kit
Loading...
Searching...
No Matches
AAX_Callbacks.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 *
4 * Copyright 2014-2017, 2023-2024 Avid Technology, Inc.
5 * All rights reserved.
6 *
7 * This file is part of the Avid AAX SDK.
8 *
9 * The AAX SDK is subject to commercial or open-source licensing.
10 *
11 * By using the AAX SDK, you agree to the terms of both the Avid AAX SDK License
12 * Agreement and Avid Privacy Policy.
13 *
14 * AAX SDK License: https://developer.avid.com/aax
15 * Privacy Policy: https://www.avid.com/legal/privacy-policy-statement
16 *
17 * Or: You may also use this code under the terms of the GPL v3 (see
18 * www.gnu.org/licenses).
19 *
20 * THE AAX SDK IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
21 * EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
22 * DISCLAIMED.
23 *
24 */
25
32/*================================================================================================*/
33
34
36#ifndef AAX_CALLBACKS_H_
37#define AAX_CALLBACKS_H_
39
40#include "AAX.h"
41
42// Callback IDs
44{
51};
52
53class IACFUnknown;
54
56
57
61template <typename aContextType>
63{
64 public:
65
66 typedef void
68 aContextType * const inContextPtrsBegin [],
69 const void * inContextPtrsEnd);
70
71 typedef void *
73 const aContextType * inContextPtr,
74 AAX_CFieldIndex inOutputPort,
75 AAX_CTimestamp inTimestamp);
76
77 typedef int32_t
79 const aContextType * inInstanceContextPtr,
81
82 typedef int32_t
83 (AAX_CALLBACK *CBackgroundProc) ( void );
84
85 typedef void
87 AAX_CFieldIndex inFieldIndex,
88 void * inNewBlock,
89 int32_t inSize,
90 IACFUnknown * const inController);
91
92};
93
115
129
151
162
205
207#endif // AAX_CALLBACKS_H_
AAX_EComponentInstanceInitAction
Selector indicating the action that occurred to prompt a component initialization callback.
Definition: AAX_Enums.h:860
Various utility definitions for AAX.
#define AAX_CALLBACK
Definition: AAX.h:295
int64_t AAX_CTimestamp
Time stamp value. Measured against the DAE clock (see AAX_IComponentDescriptor::AddClock() )
Definition: AAX.h:341
AAX_CIndex AAX_CFieldIndex
Not used by AAX plug-ins (except in AAX_FIELD_INDEX macro)
Definition: AAX.h:359
AAX_Component< void >::CInstanceInitProc AAX_CInstanceInitProc
A user-defined callback that AAX calls to notify the component that an instance is being added or rem...
Definition: AAX_Callbacks.h:150
AAX_Component< void >::CPacketAllocator AAX_CPacketAllocator
Used by AAX_SchedulePacket()
Definition: AAX_Callbacks.h:128
IACFUnknown *(AAX_CALLBACK * AAXCreateObjectProc)(void)
Definition: AAX_Callbacks.h:55
AAX_Component< void >::CBackgroundProc AAX_CBackgroundProc
A user-defined callback that AAX calls in the AAX Idle time.
Definition: AAX_Callbacks.h:161
AAX_Component< void >::CProcessProc AAX_CProcessProc
A user-defined callback that AAX calls to process data packets and/or audio.
Definition: AAX_Callbacks.h:114
AAX_Component< void >::CInitPrivateDataProc AAX_CInitPrivateDataProc
A user-defined callback to initialize a private data block.
Definition: AAX_Callbacks.h:204
AAX_CProcPtrID
Definition: AAX_Callbacks.h:44
@ kAAX_ProcPtrID_Create_HostProcessor
AAX_IHostProcessor creation procedure
Definition: AAX_Callbacks.h:47
@ kAAX_ProcPtrID_Create_EffectGUI
AAX_IEffectGUI creation procedure
Definition: AAX_Callbacks.h:46
@ kAAX_ProcPtrID_Create_EffectDirectData
AAX_IEffectDirectData creation procedure, used by plug-ins that want direct access to their alg memor...
Definition: AAX_Callbacks.h:48
@ kAAX_ProcPtrID_Create_EffectParameters
AAX_IEffectParameters creation procedure
Definition: AAX_Callbacks.h:45
@ kAAX_ProcPtrID_Create_SessionDocumentClient
AAX_ISessionDocumentClient creation procedure
Definition: AAX_Callbacks.h:50
@ kAAX_ProcPtrID_Create_TaskAgent
AAX_ITaskAgent creation procedure, used by plug-ins that want to process task requests made by the ho...
Definition: AAX_Callbacks.h:49
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:265
Empty class containing type declarations for the AAX algorithm and associated callbacks.
Definition: AAX_Callbacks.h:63
void(AAX_CALLBACK * CInitPrivateDataProc)(AAX_CFieldIndex inFieldIndex, void *inNewBlock, int32_t inSize, IACFUnknown *const inController)
Definition: AAX_Callbacks.h:86
int32_t(AAX_CALLBACK * CBackgroundProc)(void)
Definition: AAX_Callbacks.h:83
void *(AAX_CALLBACK * CPacketAllocator)(const aContextType *inContextPtr, AAX_CFieldIndex inOutputPort, AAX_CTimestamp inTimestamp)
Definition: AAX_Callbacks.h:72
void(AAX_CALLBACK * CProcessProc)(aContextType *const inContextPtrsBegin[], const void *inContextPtrsEnd)
Definition: AAX_Callbacks.h:67
int32_t(AAX_CALLBACK * CInstanceInitProc)(const aContextType *inInstanceContextPtr, AAX_EComponentInstanceInitAction iAction)
Definition: AAX_Callbacks.h:78