AAX SDK  2.1.1
Avid Audio Extensions Development Kit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AAX_VPropertyMap.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  AAX_VPropertyMap.h
4 
5  Copyright 2013 by Avid Technology, Inc.
6  All rights reserved.
7 
8  CONFIDENTIAL: This document contains confidential information. Do not
9  read or examine this document unless you are a Digidesign employee or have
10  signed a non-disclosure agreement with Digidesign which protects the
11  confidentiality of this document. DO NOT DISCLOSE ANY INFORMATION
12  CONTAINED IN THIS DOCUMENT TO ANY THIRD-PARTY WITHOUT THE PRIOR WRITTEN
13  CONSENT OF DIGIDESIGN, INC.
14 
15 ==============================================================================*/
16 
17 #ifndef AAX_VPROPERTYMAP_H
18 #define AAX_VPROPERTYMAP_H
19 
20 #include "AAX.h"
21 #include "AAX_IPropertyMap.h"
22 #include "AAX_IACFPropertyMap.h"
23 #include "acfunknown.h"
24 #include "ACFPtr.h"
25 
26 
27 class IACFUnknown;
29 
35 {
36 public:
37  AAX_VPropertyMap ( IACFUnknown * pUnkHost );
38  virtual ~AAX_VPropertyMap(void);
39 
40  virtual AAX_CBoolean GetProperty ( AAX_EProperty inProperty, AAX_CPropertyValue * outValue ) const;
41  virtual AAX_Result AddProperty ( AAX_EProperty inProperty, AAX_CPropertyValue inValue );
42  virtual AAX_Result RemoveProperty ( AAX_EProperty inProperty );
43  virtual AAX_Result AddPropertyWithIDArray ( AAX_EProperty iProperty, const AAX_SPlugInIdentifierTriad* iPluginIDs, uint32_t iNumPluginIDs);
44  virtual AAX_CBoolean GetPropertyWithIDArray ( AAX_EProperty iProperty, const AAX_SPlugInIdentifierTriad** oPluginIDs, uint32_t* oNumPluginIDs) const;
45 
46  IACFUnknown* GetIUnknown() const;
47 
48 private:
49  ACFPtr<AAX_IACFPropertyMap> mIACFPropertyMap;
50  ACFPtr<AAX_IACFPropertyMap_V2> mIACFPropertyMapV2;
51 };
52 
53 
54 
55 #endif // AAX_VPROPERTYMAP_H
Various utility definitions for AAX.
int32_t AAX_CPropertyValue
Definition: AAX.h:119
Versioned interface for an AAX_IPropertyMap.
IACFUnknown * GetIUnknown() const
uint8_t AAX_CBoolean
Cross-compiler boolean type used by AAX interfaces.
Definition: AAX.h:110
virtual AAX_Result RemoveProperty(AAX_EProperty inProperty)
Remove a callback property from a property map.
AAX_VPropertyMap(IACFUnknown *pUnkHost)
virtual AAX_CBoolean GetPropertyWithIDArray(AAX_EProperty iProperty, const AAX_SPlugInIdentifierTriad **oPluginIDs, uint32_t *oNumPluginIDs) const
Get an array of plug-in IDs from a property map.
Generic plug-in description property map.
Definition: AAX_IPropertyMap.h:56
Generic plug-in description property map.
AAX_EProperty
The list of properties that can be added to an AAX_IPropertyMap.
Definition: AAX_Properties.h:66
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.dox:231
virtual AAX_Result AddProperty(AAX_EProperty inProperty, AAX_CPropertyValue inValue)
Add a callback property to a property map.
Plug-in Identifier Triad.
Definition: AAX.h:267
Versioned interface for an AAX_IPropertyMap.
Definition: AAX_IACFPropertyMap.h:39
int32_t AAX_Result
Definition: AAX.h:118
Version-managed concrete AAX_IPropertyMap class.
Definition: AAX_VPropertyMap.h:34
virtual ~AAX_VPropertyMap(void)
virtual AAX_Result AddPropertyWithIDArray(AAX_EProperty iProperty, const AAX_SPlugInIdentifierTriad *iPluginIDs, uint32_t iNumPluginIDs)
Add an array of plug-in IDs to a property map.
virtual AAX_CBoolean GetProperty(AAX_EProperty inProperty, AAX_CPropertyValue *outValue) const
Get a property value from a property map.