AAX SDK 2.6.1
Avid Audio Extensions Development Kit
Loading...
Searching...
No Matches
AAX_IACFPageTable.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 * Copyright 2016-2017, 2023 Avid Technology, Inc.
4 * All rights reserved.
5 *
6 * CONFIDENTIAL: this document contains confidential information of Avid. Do
7 * not disclose to any third party. Use of the information contained in this
8 * document is subject to an Avid SDK license.
9 */
10
11#ifndef AAXLibrary_AAX_IACFPageTable_h
12#define AAXLibrary_AAX_IACFPageTable_h
13
14// AAX Includes
15#include "AAX.h"
16
17#ifdef __clang__
18#pragma clang diagnostic push
19#pragma clang diagnostic ignored "-Wnon-virtual-dtor"
20#endif
21
22// ACF Includes
23#include "acfunknown.h"
24
25// Forward declarations
26class AAX_IString;
27
31{
32public:
33 virtual AAX_Result Clear() = 0;
34 virtual AAX_Result Empty(AAX_CBoolean& oEmpty) const = 0;
35 virtual AAX_Result GetNumPages(int32_t& oNumPages) const = 0;
36 virtual AAX_Result InsertPage(int32_t iPage) = 0;
37 virtual AAX_Result RemovePage(int32_t iPage) = 0;
38 virtual AAX_Result GetNumMappedParameterIDs(int32_t iPage, int32_t& oNumParameterIdentifiers) const = 0;
39 virtual AAX_Result ClearMappedParameter(int32_t iPage, int32_t iIndex) = 0;
40 virtual AAX_Result GetMappedParameterID(int32_t iPage, int32_t iIndex, AAX_IString& oParameterIdentifier) const = 0;
41 virtual AAX_Result MapParameterID(AAX_CParamID iParameterIdentifier, int32_t iPage, int32_t iIndex) = 0;
42};
43
47{
48public:
49 virtual AAX_Result GetNumParametersWithNameVariations(int32_t& oNumParameterIdentifiers) const = 0;
50 virtual AAX_Result GetNameVariationParameterIDAtIndex(int32_t iIndex, AAX_IString& oParameterIdentifier) const = 0;
51 virtual AAX_Result GetNumNameVariationsForParameter(AAX_CPageTableParamID iParameterIdentifier, int32_t& oNumVariations) const = 0;
52 virtual AAX_Result GetParameterNameVariationAtIndex(AAX_CPageTableParamID iParameterIdentifier, int32_t iIndex, AAX_IString& oNameVariation, int32_t& oLength) const = 0;
53 virtual AAX_Result GetParameterNameVariationOfLength(AAX_CPageTableParamID iParameterIdentifier, int32_t iLength, AAX_IString& oNameVariation) const = 0;
56 virtual AAX_Result SetParameterNameVariation(AAX_CPageTableParamID iParameterIdentifier, const AAX_IString& iNameVariation, int32_t iLength) = 0;
57};
58
59#ifdef __clang__
60#pragma clang diagnostic pop
61#endif
62
63
64#endif // AAXLibrary_AAX_IACFPageTable_h
Various utility definitions for AAX.
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:349
int32_t AAX_Result
Definition: AAX.h:334
uint8_t AAX_CBoolean
Cross-compiler boolean type used by AAX interfaces.
Definition: AAX.h:326
AAX_CParamID AAX_CPageTableParamID
Parameter identifier used in a page table.
Definition: AAX.h:350
COM compatible IUnknown C++ interface.
Definition: AAX_ACFInterface.doxygen:252
Versioned interface to the host's representation of a plug-in instance's page table.
Definition: AAX_IACFPageTable.h:31
virtual AAX_Result RemovePage(int32_t iPage)=0
Remove the page at index iPage.
virtual AAX_Result ClearMappedParameter(int32_t iPage, int32_t iIndex)=0
Clear the parameter at a particular index in this table.
virtual AAX_Result GetNumMappedParameterIDs(int32_t iPage, int32_t &oNumParameterIdentifiers) const =0
Returns the total number of parameter IDs which are mapped to a page.
virtual AAX_Result Clear()=0
Clears all parameter mappings from the table.
virtual AAX_Result MapParameterID(AAX_CParamID iParameterIdentifier, int32_t iPage, int32_t iIndex)=0
Map a parameter to this table.
virtual AAX_Result GetNumPages(int32_t &oNumPages) const =0
Get the number of pages currently in this table.
virtual AAX_Result Empty(AAX_CBoolean &oEmpty) const =0
Indicates whether the table is empty.
virtual AAX_Result GetMappedParameterID(int32_t iPage, int32_t iIndex, AAX_IString &oParameterIdentifier) const =0
Get the parameter identifier which is currently mapped to an index in this table.
virtual AAX_Result InsertPage(int32_t iPage)=0
Insert a new empty page before the page at index iPage.
Versioned interface to the host's representation of a plug-in instance's page table.
Definition: AAX_IACFPageTable.h:47
virtual AAX_Result GetNumParametersWithNameVariations(int32_t &oNumParameterIdentifiers) const =0
virtual AAX_Result GetParameterNameVariationAtIndex(AAX_CPageTableParamID iParameterIdentifier, int32_t iIndex, AAX_IString &oNameVariation, int32_t &oLength) const =0
virtual AAX_Result GetNameVariationParameterIDAtIndex(int32_t iIndex, AAX_IString &oParameterIdentifier) const =0
virtual AAX_Result GetParameterNameVariationOfLength(AAX_CPageTableParamID iParameterIdentifier, int32_t iLength, AAX_IString &oNameVariation) const =0
virtual AAX_Result SetParameterNameVariation(AAX_CPageTableParamID iParameterIdentifier, const AAX_IString &iNameVariation, int32_t iLength)=0
virtual AAX_Result ClearParameterNameVariations()=0
virtual AAX_Result ClearNameVariationsForParameter(AAX_CPageTableParamID iParameterIdentifier)=0
virtual AAX_Result GetNumNameVariationsForParameter(AAX_CPageTableParamID iParameterIdentifier, int32_t &oNumVariations) const =0
A simple string container that can be passed across a binary boundary. This class,...
Definition: AAX_IString.h:38