AAX SDK 2.6.1
Avid Audio Extensions Development Kit
Loading...
Searching...
No Matches
AAX_CParameterManager.h
Go to the documentation of this file.
1/*================================================================================================*/
2/*
3 *
4 * Copyright 2014-2015, 2018, 2023 Avid Technology, Inc.
5 * All rights reserved.
6 *
7 * CONFIDENTIAL: this document contains confidential information of Avid. Do
8 * not disclose to any third party. Use of the information contained in this
9 * document is subject to an Avid SDK license.
10 *
11 */
12
19/*================================================================================================*/
20
21
22#ifndef AAX_CPARAMETERMANAGER_H
23#define AAX_CPARAMETERMANAGER_H
24
25#include "AAX_CParameter.h"
26#include "AAX.h"
27
28#include <vector>
29#include <map>
30
31
32
33
35
49{
50public:
53
63 void Initialize(AAX_IAutomationDelegate* iAutomationDelegateUnknown);
64
69 int32_t NumParameters() const;
70
80
87
95
103
113
122 const AAX_IParameter* GetParameterByName(const char* name) const;
123
134
144 const AAX_IParameter* GetParameter(int32_t index) const;
145
151 int32_t GetParameterIndex(AAX_CParamID identifier) const;
152
161
170
171protected:
172
173 AAX_IAutomationDelegate* mAutomationDelegate; //This object is not ref-counted here. Do not delete it. It is ref counted by this object's parent.
174 std::vector<AAX_IParameter*> mParameters;
175 std::map<std::string, AAX_IParameter*> mParametersMap;
176};
177
178
179
180
181#endif // AAX_CPARAMETERMANAGER_H
Various utility definitions for AAX.
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:349
Generic implementation of an AAX_IParameter.
A container object for plug-in parameters.
Definition: AAX_CParameterManager.h:49
std::map< std::string, AAX_IParameter * > mParametersMap
Definition: AAX_CParameterManager.h:175
void RemoveParameterByID(AAX_CParamID identifier)
Removes a parameter from the manager.
AAX_IParameter * GetParameterByName(const char *name)
Given a parameter name, retrieves a reference to the requested parameter.
AAX_IAutomationDelegate * mAutomationDelegate
Definition: AAX_CParameterManager.h:173
AAX_IParameter * GetParameter(int32_t index)
Given a parameter index, retrieves a reference to the requested parameter.
std::vector< AAX_IParameter * > mParameters
Definition: AAX_CParameterManager.h:174
void RemoveAllParameters()
Removes all parameters from the manager.
int32_t NumParameters() const
Returns the number of parameters in this instance of the parameter manager.
const AAX_IParameter * GetParameterByID(AAX_CParamID identifier) const
Given a parameter ID, retrieves a const reference to the requested parameter.
const AAX_IParameter * GetParameterByName(const char *name) const
Given a parameter name, retrieves a const reference to the requested parameter.
void Initialize(AAX_IAutomationDelegate *iAutomationDelegateUnknown)
Initialize the parameter manager.
AAX_IParameter * GetParameterByID(AAX_CParamID identifier)
Given a parameter ID, retrieves a reference to the requested parameter.
void RemoveParameter(AAX_IParameter *param)
int32_t GetParameterIndex(AAX_CParamID identifier) const
const AAX_IParameter * GetParameter(int32_t index) const
Given a parameter index, retrieves a const reference to the requested parameter.
void AddParameter(AAX_IParameter *param)
Interface allowing an AAX plug-in to interact with the host's event system.
Definition: AAX_IAutomationDelegate.h:44
The base interface for all normalizable plug-in parameters.
Definition: AAX_IParameter.h:137