AAX SDK  2.4.1
Avid Audio Extensions Development Kit
AAX_IACFEffectDescriptor.h
Go to the documentation of this file.
1 /*================================================================================================*/
2 /*
3  *
4  * Copyright 2013-2017 by Avid Technology, Inc.
5  * All rights reserved.
6  *
7  * CONFIDENTIAL: This document contains confidential information. Do not
8  * read or examine this document unless you are an Avid Technology employee
9  * or have signed a non-disclosure agreement with Avid Technology which protects
10  * the confidentiality of this document. DO NOT DISCLOSE ANY INFORMATION
11  * CONTAINED IN THIS DOCUMENT TO ANY THIRD-PARTY WITHOUT THE PRIOR WRITTEN CONSENT
12  * OF Avid Technology, INC.
13  *
14  */
15 
22 /*================================================================================================*/
23 
24 
25 #ifndef AAX_IACFEFFECTDESCRIPTOR_H
26 #define AAX_IACFEFFECTDESCRIPTOR_H
27 
28 #include "AAX.h"
29 #include "AAX_Callbacks.h"
30 
31 #ifdef __clang__
32 #pragma clang diagnostic push
33 #pragma clang diagnostic ignored "-Wnon-virtual-dtor"
34 #endif
35 
36 #include "acfunknown.h"
37 
38 
42 {
43 public:
44 
45  virtual AAX_Result AddComponent ( IACFUnknown* inComponentDescriptor ) = 0;
46  virtual AAX_Result AddName ( const char *inPlugInName ) = 0;
47  virtual AAX_Result AddCategory ( uint32_t inCategory ) = 0;
48  virtual AAX_Result AddCategoryBypassParameter ( uint32_t inCategory, AAX_CParamID inParamID ) = 0;
49  virtual AAX_Result AddProcPtr ( void * inProcPtr, AAX_CProcPtrID inProcID ) = 0;
50  virtual AAX_Result SetProperties ( IACFUnknown * inProperties ) = 0;
51  virtual AAX_Result AddResourceInfo ( AAX_EResourceType inResourceType, const char * inInfo ) = 0;
52  virtual AAX_Result AddMeterDescription( AAX_CTypeID inMeterID, const char * inMeterName, IACFUnknown * inProperties ) = 0;
53 };
54 
60 {
61 public:
62  virtual AAX_Result AddControlMIDINode ( AAX_CTypeID inNodeID, AAX_EMIDINodeType inNodeType, const char inNodeName[], uint32_t inChannelMask ) = 0;
63 };
64 
65 #ifdef __clang__
66 #pragma clang diagnostic pop
67 #endif
68 
69 #endif // AAX_IACFEFFECTDESCRIPTOR_H
Various utility definitions for AAX.
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:352
int32_t AAX_Result
Definition: AAX.h:337
uint32_t AAX_CTypeID
Matches type of OSType used in classic plugins.
Definition: AAX.h:336
AAX callback prototypes and ProcPtr definitions
AAX_CProcPtrID
Definition: AAX_Callbacks.h:34
AAX_EMIDINodeType
MIDI node types.
Definition: AAX_Enums.h:961
AAX_EResourceType
Types of resources that can be added to an Effect's description.
Definition: AAX_Enums.h:430
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:248
Versioned interface for an AAX_IEffectDescriptor.
Definition: AAX_IACFEffectDescriptor.h:42
virtual AAX_Result AddCategory(uint32_t inCategory)=0
Add a category to your plug-in. See AAX_EPlugInCategory.
virtual AAX_Result AddResourceInfo(AAX_EResourceType inResourceType, const char *inInfo)=0
Set resource file info.
virtual AAX_Result AddProcPtr(void *inProcPtr, AAX_CProcPtrID inProcID)=0
Add a process pointer.
virtual AAX_Result SetProperties(IACFUnknown *inProperties)=0
Set the properties of a new property map.
virtual AAX_Result AddName(const char *inPlugInName)=0
Add a name to the Effect.
virtual AAX_Result AddComponent(IACFUnknown *inComponentDescriptor)=0
Add a component to an instance of a component descriptor.
virtual AAX_Result AddCategoryBypassParameter(uint32_t inCategory, AAX_CParamID inParamID)=0
Add a category to your plug-in. See AAX_EPlugInCategory.
virtual AAX_Result AddMeterDescription(AAX_CTypeID inMeterID, const char *inMeterName, IACFUnknown *inProperties)=0
Add name and property map to meter with given ID.
Versioned interface for an AAX_IEffectDescriptor.
Definition: AAX_IACFEffectDescriptor.h:60
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.