AAX SDK 2.8.0
Avid Audio Extensions Development Kit
Loading...
Searching...
No Matches
AAX_IParameter.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_IPARAMETER_H
36#define AAX_IPARAMETER_H
37
38#include "AAX.h" //for types
39
40//Forward Declarations
41class AAX_CString;
45class AAX_IString;
46
55{
56public:
62
68 virtual AAX_IParameterValue* Clone() const = 0;
69
76 virtual AAX_CParamID Identifier() const = 0;
77
90 virtual bool GetValueAsBool(bool* value) const = 0;
91
100 virtual bool GetValueAsInt32(int32_t* value) const = 0;
101
110 virtual bool GetValueAsFloat(float* value) const = 0;
111
120 virtual bool GetValueAsDouble(double* value) const = 0;
121
130 virtual bool GetValueAsString(AAX_IString* value) const = 0;
132};
133
150{
151public:
156 virtual ~AAX_IParameter() { }
157
164 virtual AAX_IParameterValue* CloneValue() const = 0;
165
176 virtual AAX_CParamID Identifier() const = 0;
177
187 virtual void SetName(const AAX_CString& name) = 0;
188
194 virtual const AAX_CString& Name() const = 0;
195
205 virtual void AddShortenedName(const AAX_CString& name) = 0;
206
212 virtual const AAX_CString& ShortenedName(int32_t iNumCharacters) const = 0;
213
217 virtual void ClearShortenedNames() = 0;
219
220
229 virtual bool Automatable() const = 0;
230
236 virtual void SetAutomationDelegate( AAX_IAutomationDelegate * iAutomationDelegate ) = 0;
237
245 virtual void Touch() = 0;
246
253 virtual void Release() = 0;
255
268 virtual void SetNormalizedValue(double newNormalizedValue) = 0;
269
273 virtual double GetNormalizedValue() const = 0;
274
278 virtual void SetNormalizedDefaultValue(double normalizedDefault) = 0;
279
283 virtual double GetNormalizedDefaultValue() const = 0;
284
288 virtual void SetToDefaultValue() = 0;
289
302 virtual void SetNumberOfSteps(uint32_t numSteps) = 0;
303
308 virtual uint32_t GetNumberOfSteps() const = 0;
309
314 virtual uint32_t GetStepValue() const = 0;
315
320 virtual double GetNormalizedValueFromStep(uint32_t iStep) const = 0;
321
326 virtual uint32_t GetStepValueFromNormalizedValue(double normalizedValue) const = 0;
327
332 virtual void SetStepValue(uint32_t iStep) = 0;
333
335
336
351 virtual bool GetValueString(AAX_CString* valueString) const = 0;
352
363 virtual bool GetValueString(int32_t iMaxNumChars, AAX_CString* valueString) const = 0;
364
375 virtual bool GetNormalizedValueFromBool(bool value, double *normalizedValue) const = 0;
376
387 virtual bool GetNormalizedValueFromInt32(int32_t value, double *normalizedValue) const = 0;
388
399 virtual bool GetNormalizedValueFromFloat(float value, double *normalizedValue) const = 0;
400
411 virtual bool GetNormalizedValueFromDouble(double value, double *normalizedValue) const = 0;
412
423 virtual bool GetNormalizedValueFromString(const AAX_CString& valueString, double *normalizedValue) const = 0;
424
436 virtual bool GetBoolFromNormalizedValue(double normalizedValue, bool* value) const = 0;
437
449 virtual bool GetInt32FromNormalizedValue(double normalizedValue, int32_t* value) const = 0;
450
462 virtual bool GetFloatFromNormalizedValue(double normalizedValue, float* value) const = 0;
463
475 virtual bool GetDoubleFromNormalizedValue(double normalizedValue, double* value) const = 0;
476
488 virtual bool GetStringFromNormalizedValue(double normalizedValue, AAX_CString& valueString) const = 0;
489
503 virtual bool GetStringFromNormalizedValue(double normalizedValue, int32_t iMaxNumChars, AAX_CString& valueString) const = 0;
504
513 virtual bool SetValueFromString(const AAX_CString& newValueString) = 0;
515
528 virtual bool GetValueAsBool(bool* value) const = 0;
529
538 virtual bool GetValueAsInt32(int32_t* value) const = 0;
539
548 virtual bool GetValueAsFloat(float* value) const = 0;
549
558 virtual bool GetValueAsDouble(double* value) const = 0;
559
568 virtual bool GetValueAsString(AAX_IString* value) const = 0;
569
578 virtual bool SetValueWithBool(bool value) = 0;
579
588 virtual bool SetValueWithInt32(int32_t value) = 0;
589
598 virtual bool SetValueWithFloat(float value) = 0;
599
608 virtual bool SetValueWithDouble(double value) = 0;
609
618 virtual bool SetValueWithString(const AAX_IString& value) = 0;
620
621
629 virtual void SetType( AAX_EParameterType iControlType ) = 0;
630
635 virtual AAX_EParameterType GetType() const = 0;
636
637
643 virtual void SetOrientation( AAX_EParameterOrientation iOrientation ) = 0;
644
649
658 virtual void SetTaperDelegate ( AAX_ITaperDelegateBase & inTaperDelegate, bool inPreserveValue ) = 0;
659
666 virtual void SetDisplayDelegate ( AAX_IDisplayDelegateBase & inDisplayDelegate ) = 0;
667
668public:
683 virtual void UpdateNormalizedValue(double newNormalizedValue) = 0;
685
686};
687
688#endif //AAX_IPARAMETER_H
689
690
691
692
AAX_EParameterType
FIC stuff that I can't include without DAE library dependence.
Definition: AAX_Enums.h:898
int32_t AAX_EParameterOrientation
Typedef for a bitfield of AAX_EParameterOrientationBits values.
Definition: AAX_Enums.h:931
Various utility definitions for AAX.
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:362
A generic AAX string class with similar functionality to std::string
Definition: AAX_CString.h:57
Interface allowing an AAX plug-in to interact with the host's event system.
Definition: AAX_IAutomationDelegate.h:57
Defines the display behavior for a parameter.
Definition: AAX_IDisplayDelegate.h:63
An abstract interface representing a parameter value of arbitrary type.
Definition: AAX_IParameter.h:55
virtual ~AAX_IParameterValue()
Virtual destructor.
Definition: AAX_IParameter.h:61
virtual AAX_IParameterValue * Clone() const =0
Clones the parameter object.
virtual bool GetValueAsFloat(float *value) const =0
Retrieves the parameter's value as a float.
virtual bool GetValueAsBool(bool *value) const =0
Retrieves the parameter's value as a bool.
virtual AAX_CParamID Identifier() const =0
Returns the parameter's unique identifier.
virtual bool GetValueAsInt32(int32_t *value) const =0
Retrieves the parameter's value as an int32_t.
virtual bool GetValueAsDouble(double *value) const =0
Retrieves the parameter's value as a double.
virtual bool GetValueAsString(AAX_IString *value) const =0
Retrieves the parameter's value as a string.
The base interface for all normalizable plug-in parameters.
Definition: AAX_IParameter.h:150
virtual bool GetStringFromNormalizedValue(double normalizedValue, AAX_CString &valueString) const =0
Converts a normalized parameter value to a string representing the corresponding real value.
virtual bool GetValueString(AAX_CString *valueString) const =0
Serializes the parameter value into a string.
virtual AAX_EParameterType GetType() const =0
Returns the type of this parameter as an AAX_EParameterType.
virtual bool SetValueWithString(const AAX_IString &value)=0
Sets the parameter's value as a string.
virtual bool GetNormalizedValueFromBool(bool value, double *normalizedValue) const =0
Converts a bool to a normalized parameter value.
virtual void SetDisplayDelegate(AAX_IDisplayDelegateBase &inDisplayDelegate)=0
Sets the parameter's display delegate.
virtual bool GetInt32FromNormalizedValue(double normalizedValue, int32_t *value) const =0
Converts a normalized parameter value to an integer representing the corresponding real value.
virtual bool SetValueWithFloat(float value)=0
Sets the parameter's value as a float.
virtual AAX_EParameterOrientation GetOrientation() const =0
Returns the orientation of this parameter.
virtual bool Automatable() const =0
Returns true if the parameter is automatable, false if it is not.
virtual AAX_CParamID Identifier() const =0
Returns the parameter's unique identifier.
virtual void SetToDefaultValue()=0
Restores the state of this parameter to its default value.
virtual bool GetValueAsInt32(int32_t *value) const =0
Retrieves the parameter's value as an int32_t.
virtual void SetAutomationDelegate(AAX_IAutomationDelegate *iAutomationDelegate)=0
Sets the automation delegate (if one is required)
virtual double GetNormalizedValue() const =0
Returns the normalized representation of the parameter's current real value.
virtual void Release()=0
Signals the automation system that a control has been released.
virtual const AAX_CString & Name() const =0
Returns the parameter's display name.
virtual void UpdateNormalizedValue(double newNormalizedValue)=0
Sets the parameter's state given a normalized value.
virtual void SetNormalizedDefaultValue(double normalizedDefault)=0
Sets the parameter's default value using its normalized representation.
virtual void SetName(const AAX_CString &name)=0
Sets the parameter's display name.
virtual bool GetValueString(int32_t iMaxNumChars, AAX_CString *valueString) const =0
Serializes the parameter value into a string, size hint included.
virtual bool GetBoolFromNormalizedValue(double normalizedValue, bool *value) const =0
Converts a normalized parameter value to a bool representing the corresponding real value.
virtual uint32_t GetStepValueFromNormalizedValue(double normalizedValue) const =0
Returns the step value for a normalized value of the parameter.
virtual void AddShortenedName(const AAX_CString &name)=0
Sets the parameter's shortened display name.
virtual ~AAX_IParameter()
Virtual destructor.
Definition: AAX_IParameter.h:156
virtual double GetNormalizedDefaultValue() const =0
Returns the normalized representation of the parameter's real default value.
virtual void Touch()=0
Signals the automation system that a control has been touched.
virtual double GetNormalizedValueFromStep(uint32_t iStep) const =0
Returns the normalized value for a given step.
virtual bool GetValueAsFloat(float *value) const =0
Retrieves the parameter's value as a float.
virtual void SetTaperDelegate(AAX_ITaperDelegateBase &inTaperDelegate, bool inPreserveValue)=0
Sets the parameter's taper delegate.
virtual bool GetNormalizedValueFromDouble(double value, double *normalizedValue) const =0
Converts a double to a normalized parameter value.
virtual bool GetStringFromNormalizedValue(double normalizedValue, int32_t iMaxNumChars, AAX_CString &valueString) const =0
Converts a normalized parameter value to a string representing the corresponding real,...
virtual bool SetValueWithDouble(double value)=0
Sets the parameter's value as a double.
virtual bool GetValueAsBool(bool *value) const =0
Retrieves the parameter's value as a bool.
virtual void SetStepValue(uint32_t iStep)=0
Returns the current step for the current value of the parameter.
virtual bool SetValueWithInt32(int32_t value)=0
Sets the parameter's value as an int32_t.
virtual bool GetNormalizedValueFromInt32(int32_t value, double *normalizedValue) const =0
Converts an integer to a normalized parameter value.
virtual bool GetValueAsString(AAX_IString *value) const =0
Retrieves the parameter's value as a string.
virtual bool GetFloatFromNormalizedValue(double normalizedValue, float *value) const =0
Converts a normalized parameter value to a float representing the corresponding real value.
virtual const AAX_CString & ShortenedName(int32_t iNumCharacters) const =0
Returns the parameter's shortened display name.
virtual bool GetDoubleFromNormalizedValue(double normalizedValue, double *value) const =0
Converts a normalized parameter value to a double representing the corresponding real value.
virtual void SetType(AAX_EParameterType iControlType)=0
Sets the type of this parameter.
virtual void SetNumberOfSteps(uint32_t numSteps)=0
Sets the number of discrete steps for this parameter.
virtual void SetOrientation(AAX_EParameterOrientation iOrientation)=0
Sets the orientation of this parameter.
virtual AAX_IParameterValue * CloneValue() const =0
Clone the parameter's value to a new AAX_IParameterValue object.
virtual void SetNormalizedValue(double newNormalizedValue)=0
Sets a parameter value using it's normalized representation.
virtual uint32_t GetStepValue() const =0
Returns the current step for the current value of the parameter.
virtual bool GetValueAsDouble(double *value) const =0
Retrieves the parameter's value as a double.
virtual bool GetNormalizedValueFromString(const AAX_CString &valueString, double *normalizedValue) const =0
Converts a given string to a normalized parameter value.
virtual bool SetValueFromString(const AAX_CString &newValueString)=0
Converts a string to a real parameter value and sets the parameter to this value.
virtual void ClearShortenedNames()=0
Clears the internal list of shortened display names.
virtual bool SetValueWithBool(bool value)=0
Sets the parameter's value as a bool.
virtual uint32_t GetNumberOfSteps() const =0
Returns the number of discrete steps used by the parameter.
virtual bool GetNormalizedValueFromFloat(float value, double *normalizedValue) const =0
Converts a float to a normalized parameter value.
A simple string container that can be passed across a binary boundary. This class,...
Definition: AAX_IString.h:51
Defines the taper conversion behavior for a parameter.
Definition: AAX_ITaperDelegate.h:83