AAX SDK 2.8.0
Avid Audio Extensions Development Kit
Loading...
Searching...
No Matches
AAX_IPropertyMap.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_IPROPERTYMAP_H
36#define AAX_IPROPERTYMAP_H
37
38#include "AAX_Properties.h"
39#include "AAX.h"
40
41class IACFUnknown;
42
69{
70public:
71 virtual ~AAX_IPropertyMap() {}
72
73
74 //
75 // AAX_IACFPropertyMap methods
76 //
77
89 virtual AAX_CBoolean GetProperty ( AAX_EProperty inProperty, AAX_CPropertyValue * outValue ) const = 0;
101 virtual AAX_CBoolean GetPointerProperty ( AAX_EProperty inProperty, const void** outValue ) const = 0;
114 virtual AAX_Result AddProperty ( AAX_EProperty inProperty, AAX_CPropertyValue inValue ) = 0;
130 virtual AAX_Result AddPointerProperty ( AAX_EProperty inProperty, const void* inValue ) = 0;
131 virtual AAX_Result AddPointerProperty ( AAX_EProperty inProperty, const char* inValue ) = 0;
137 virtual AAX_Result RemoveProperty ( AAX_EProperty inProperty ) = 0;
138
149 virtual AAX_Result AddPropertyWithIDArray ( AAX_EProperty inProperty, const AAX_SPlugInIdentifierTriad* inPluginIDs, uint32_t inNumPluginIDs) = 0;
150
161 virtual AAX_CBoolean GetPropertyWithIDArray ( AAX_EProperty inProperty, const AAX_SPlugInIdentifierTriad** outPluginIDs, uint32_t* outNumPluginIDs) const = 0;
162
163
164 //
165 // AAX_IPropertyMap methods
166 //
167
170 virtual IACFUnknown* GetIUnknown() = 0;
171};
172
173#endif // AAX_IPROPERTYMAP_H
Various utility definitions for AAX.
int32_t AAX_Result
Definition: AAX.h:347
uint8_t AAX_CBoolean
Cross-compiler boolean type used by AAX interfaces.
Definition: AAX.h:339
int32_t AAX_CPropertyValue
32-bit property values
Definition: AAX.h:348
Contains IDs for properties that can be added to an AAX_IPropertyMap.
AAX_EProperty
The list of properties that can be added to an AAX_IPropertyMap.
Definition: AAX_Properties.h:82
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:265
Plug-in Identifier Triad.
Definition: AAX.h:566
Generic plug-in description property map.
Definition: AAX_IPropertyMap.h:69
virtual AAX_Result AddProperty(AAX_EProperty inProperty, AAX_CPropertyValue inValue)=0
Add a property to a property map.
virtual AAX_CBoolean GetPointerProperty(AAX_EProperty inProperty, const void **outValue) const =0
Get a property value from a property map with a pointer-sized value.
virtual AAX_CBoolean GetProperty(AAX_EProperty inProperty, AAX_CPropertyValue *outValue) const =0
Get a property value from a property map.
virtual AAX_Result AddPointerProperty(AAX_EProperty inProperty, const void *inValue)=0
Add a property to a property map with a pointer-sized value.
virtual IACFUnknown * GetIUnknown()=0
virtual AAX_Result AddPropertyWithIDArray(AAX_EProperty inProperty, const AAX_SPlugInIdentifierTriad *inPluginIDs, uint32_t inNumPluginIDs)=0
Add an array of plug-in IDs to a property map.
virtual AAX_Result AddPointerProperty(AAX_EProperty inProperty, const char *inValue)=0
Add a property to a property map with a pointer-sized value.
virtual AAX_Result RemoveProperty(AAX_EProperty inProperty)=0
Remove a property from a property map.
virtual AAX_CBoolean GetPropertyWithIDArray(AAX_EProperty inProperty, const AAX_SPlugInIdentifierTriad **outPluginIDs, uint32_t *outNumPluginIDs) const =0
Get an array of plug-in IDs from a property map.
virtual ~AAX_IPropertyMap()
Definition: AAX_IPropertyMap.h:71