| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

- Welcome
- Manual
- Classes
- Files
- Lists
- Support

- File List
- File Members

Loading...
Searching...
No Matches
AAX_IACFEffectDescriptor.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 *
4 * Copyright 2013-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
35#ifndef AAX_IACFEFFECTDESCRIPTOR_H
36#define AAX_IACFEFFECTDESCRIPTOR_H
37
38#include "AAX.h"
39#include "AAX_Callbacks.h"
40
41#ifdef __clang__
42#pragma clang diagnostic push
43#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
44#endif
45
46#include "acfunknown.h"
47
48
51 class AAX_IACFEffectDescriptor : public IACFUnknown
52{
53 public:
54
55 virtual AAX_Result AddComponent ( IACFUnknown* inComponentDescriptor ) = 0;
56 virtual AAX_Result AddName ( const char *inPlugInName ) = 0;
57 virtual AAX_Result AddCategory ( uint32_t inCategory ) = 0;
58 virtual AAX_Result AddCategoryBypassParameter ( uint32_t inCategory, AAX_CParamID inParamID ) = 0;
59 virtual AAX_Result AddProcPtr ( void * inProcPtr, AAX_CProcPtrID inProcID ) = 0;
60 virtual AAX_Result SetProperties ( IACFUnknown * inProperties ) = 0;
61 virtual AAX_Result AddResourceInfo ( AAX_EResourceType inResourceType, const char * inInfo ) = 0;
62 virtual AAX_Result AddMeterDescription( AAX_CTypeID inMeterID, const char * inMeterName, IACFUnknown * inProperties ) = 0;
63};
64
69 class AAX_IACFEffectDescriptor_V2 : public AAX_IACFEffectDescriptor
70{
71 public:
72 virtual AAX_Result AddControlMIDINode ( AAX_CTypeID inNodeID, AAX_EMIDINodeType inNodeType, const char inNodeName[], uint32_t inChannelMask ) = 0;
73};
74
75#ifdef __clang__
76#pragma clang diagnostic pop
77#endif
78
79#endif // AAX_IACFEFFECTDESCRIPTOR_H
AAX_EMIDINodeType
AAX_EMIDINodeType
MIDI node types.
Definition: AAX_Enums.h:1026
AAX_EResourceType
AAX_EResourceType
Types of resources that can be added to an Effect's description.
Definition: AAX_Enums.h:455
AAX.h
Various utility definitions for AAX.
AAX_CParamID
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:362
AAX_Result
int32_t AAX_Result
Definition: AAX.h:347
AAX_CTypeID
uint32_t AAX_CTypeID
Matches type of OSType used in classic plugins.
Definition: AAX.h:346
AAX_Callbacks.h
AAX callback prototypes and ProcPtr definitions
AAX_CProcPtrID
AAX_CProcPtrID
Definition: AAX_Callbacks.h:44
IACFUnknown
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:265
AAX_IACFEffectDescriptor
Versioned interface for an AAX_IEffectDescriptor.
Definition: AAX_IACFEffectDescriptor.h:52
AAX_IACFEffectDescriptor::AddCategory
virtual AAX_Result AddCategory(uint32_t inCategory)=0
Add a category to your plug-in. See AAX_EPlugInCategory.
AAX_IACFEffectDescriptor::AddResourceInfo
virtual AAX_Result AddResourceInfo(AAX_EResourceType inResourceType, const char *inInfo)=0
Set resource file info.
AAX_IACFEffectDescriptor::AddProcPtr
virtual AAX_Result AddProcPtr(void *inProcPtr, AAX_CProcPtrID inProcID)=0
Add a process pointer.
AAX_IACFEffectDescriptor::SetProperties
virtual AAX_Result SetProperties(IACFUnknown *inProperties)=0
Set the properties of a new property map.
AAX_IACFEffectDescriptor::AddName
virtual AAX_Result AddName(const char *inPlugInName)=0
Add a name to the Effect.
AAX_IACFEffectDescriptor::AddComponent
virtual AAX_Result AddComponent(IACFUnknown *inComponentDescriptor)=0
Add a component to an instance of a component descriptor.
AAX_IACFEffectDescriptor::AddCategoryBypassParameter
virtual AAX_Result AddCategoryBypassParameter(uint32_t inCategory, AAX_CParamID inParamID)=0
Add a category to your plug-in. See AAX_EPlugInCategory.
AAX_IACFEffectDescriptor::AddMeterDescription
virtual AAX_Result AddMeterDescription(AAX_CTypeID inMeterID, const char *inMeterName, IACFUnknown *inProperties)=0
Add name and property map to meter with given ID.
AAX_IACFEffectDescriptor_V2
Versioned interface for an AAX_IEffectDescriptor.
Definition: AAX_IACFEffectDescriptor.h:70
AAX_IACFEffectDescriptor_V2::AddControlMIDINode
virtual AAX_Result AddControlMIDINode(AAX_CTypeID inNodeID, AAX_EMIDINodeType inNodeType, const char inNodeName[], uint32_t inChannelMask)=0
Add a control MIDI node to the plug-in data model.