| AAX SDK 2.8.0 Avid Audio Extensions Development Kit

- Welcome
- Manual
- Classes
- Files
- Lists
- Support

- File List
- File Members

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
41 class AAX_CString;
42 class AAX_IAutomationDelegate;
43 class AAX_ITaperDelegateBase;
44 class AAX_IDisplayDelegateBase;
45 class AAX_IString;
46
54 class AAX_IParameterValue
55{
56 public:
61 virtual ~AAX_IParameterValue() { }
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
149 class AAX_IParameter
150{
151 public:
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
648 virtual AAX_EParameterOrientation GetOrientation() const = 0;
649
658 virtual void SetTaperDelegate ( AAX_ITaperDelegateBase & inTaperDelegate, bool inPreserveValue ) = 0;
659
666 virtual void SetDisplayDelegate ( AAX_IDisplayDelegateBase & inDisplayDelegate ) = 0;
667
668 public:
683 virtual void UpdateNormalizedValue(double newNormalizedValue) = 0;
685
686};
687
688#endif //AAX_IPARAMETER_H
689
690
691
692
AAX_EParameterType
AAX_EParameterType
FIC stuff that I can't include without DAE library dependence.
Definition: AAX_Enums.h:898
AAX_EParameterOrientation
int32_t AAX_EParameterOrientation
Typedef for a bitfield of AAX_EParameterOrientationBits values.
Definition: AAX_Enums.h:931
AAX.h
Various utility definitions for AAX.
AAX_CParamID
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:362
AAX_CString
A generic AAX string class with similar functionality to std::string
Definition: AAX_CString.h:57
AAX_IAutomationDelegate
Interface allowing an AAX plug-in to interact with the host's event system.
Definition: AAX_IAutomationDelegate.h:57
AAX_IDisplayDelegateBase
Defines the display behavior for a parameter.
Definition: AAX_IDisplayDelegate.h:63
AAX_IParameterValue
An abstract interface representing a parameter value of arbitrary type.
Definition: AAX_IParameter.h:55
AAX_IParameterValue::~AAX_IParameterValue
virtual ~AAX_IParameterValue()
Virtual destructor.
Definition: AAX_IParameter.h:61
AAX_IParameterValue::Clone
virtual AAX_IParameterValue * Clone() const =0
Clones the parameter object.
AAX_IParameterValue::GetValueAsFloat
virtual bool GetValueAsFloat(float *value) const =0
Retrieves the parameter's value as a float.
AAX_IParameterValue::GetValueAsBool
virtual bool GetValueAsBool(bool *value) const =0
Retrieves the parameter's value as a bool.
AAX_IParameterValue::Identifier
virtual AAX_CParamID Identifier() const =0
Returns the parameter's unique identifier.
AAX_IParameterValue::GetValueAsInt32
virtual bool GetValueAsInt32(int32_t *value) const =0
Retrieves the parameter's value as an int32_t.
AAX_IParameterValue::GetValueAsDouble
virtual bool GetValueAsDouble(double *value) const =0
Retrieves the parameter's value as a double.
AAX_IParameterValue::GetValueAsString
virtual bool GetValueAsString(AAX_IString *value) const =0
Retrieves the parameter's value as a string.
AAX_IParameter
The base interface for all normalizable plug-in parameters.
Definition: AAX_IParameter.h:150
AAX_IParameter::GetStringFromNormalizedValue
virtual bool GetStringFromNormalizedValue(double normalizedValue, AAX_CString &valueString) const =0
Converts a normalized parameter value to a string representing the corresponding real value.
AAX_IParameter::GetValueString
virtual bool GetValueString(AAX_CString *valueString) const =0
Serializes the parameter value into a string.
AAX_IParameter::GetType
virtual AAX_EParameterType GetType() const =0
Returns the type of this parameter as an AAX_EParameterType.
AAX_IParameter::SetValueWithString
virtual bool SetValueWithString(const AAX_IString &value)=0
Sets the parameter's value as a string.
AAX_IParameter::GetNormalizedValueFromBool
virtual bool GetNormalizedValueFromBool(bool value, double *normalizedValue) const =0
Converts a bool to a normalized parameter value.
AAX_IParameter::SetDisplayDelegate
virtual void SetDisplayDelegate(AAX_IDisplayDelegateBase &inDisplayDelegate)=0
Sets the parameter's display delegate.
AAX_IParameter::GetInt32FromNormalizedValue
virtual bool GetInt32FromNormalizedValue(double normalizedValue, int32_t *value) const =0
Converts a normalized parameter value to an integer representing the corresponding real value.
AAX_IParameter::SetValueWithFloat
virtual bool SetValueWithFloat(float value)=0
Sets the parameter's value as a float.
AAX_IParameter::GetOrientation
virtual AAX_EParameterOrientation GetOrientation() const =0
Returns the orientation of this parameter.
AAX_IParameter::Automatable
virtual bool Automatable() const =0
Returns true if the parameter is automatable, false if it is not.
AAX_IParameter::Identifier
virtual AAX_CParamID Identifier() const =0
Returns the parameter's unique identifier.
AAX_IParameter::SetToDefaultValue
virtual void SetToDefaultValue()=0
Restores the state of this parameter to its default value.
AAX_IParameter::GetValueAsInt32
virtual bool GetValueAsInt32(int32_t *value) const =0
Retrieves the parameter's value as an int32_t.
AAX_IParameter::SetAutomationDelegate
virtual void SetAutomationDelegate(AAX_IAutomationDelegate *iAutomationDelegate)=0
Sets the automation delegate (if one is required)
AAX_IParameter::GetNormalizedValue
virtual double GetNormalizedValue() const =0
Returns the normalized representation of the parameter's current real value.
AAX_IParameter::Release
virtual void Release()=0
Signals the automation system that a control has been released.
AAX_IParameter::Name
virtual const AAX_CString & Name() const =0
Returns the parameter's display name.
AAX_IParameter::UpdateNormalizedValue
virtual void UpdateNormalizedValue(double newNormalizedValue)=0
Sets the parameter's state given a normalized value.
AAX_IParameter::SetNormalizedDefaultValue
virtual void SetNormalizedDefaultValue(double normalizedDefault)=0
Sets the parameter's default value using its normalized representation.
AAX_IParameter::SetName
virtual void SetName(const AAX_CString &name)=0
Sets the parameter's display name.
AAX_IParameter::GetValueString
virtual bool GetValueString(int32_t iMaxNumChars, AAX_CString *valueString) const =0
Serializes the parameter value into a string, size hint included.
AAX_IParameter::GetBoolFromNormalizedValue
virtual bool GetBoolFromNormalizedValue(double normalizedValue, bool *value) const =0
Converts a normalized parameter value to a bool representing the corresponding real value.
AAX_IParameter::GetStepValueFromNormalizedValue
virtual uint32_t GetStepValueFromNormalizedValue(double normalizedValue) const =0
Returns the step value for a normalized value of the parameter.
AAX_IParameter::AddShortenedName
virtual void AddShortenedName(const AAX_CString &name)=0
Sets the parameter's shortened display name.
AAX_IParameter::~AAX_IParameter
virtual ~AAX_IParameter()
Virtual destructor.
Definition: AAX_IParameter.h:156
AAX_IParameter::GetNormalizedDefaultValue
virtual double GetNormalizedDefaultValue() const =0
Returns the normalized representation of the parameter's real default value.
AAX_IParameter::Touch
virtual void Touch()=0
Signals the automation system that a control has been touched.
AAX_IParameter::GetNormalizedValueFromStep
virtual double GetNormalizedValueFromStep(uint32_t iStep) const =0
Returns the normalized value for a given step.
AAX_IParameter::GetValueAsFloat
virtual bool GetValueAsFloat(float *value) const =0
Retrieves the parameter's value as a float.
AAX_IParameter::SetTaperDelegate
virtual void SetTaperDelegate(AAX_ITaperDelegateBase &inTaperDelegate, bool inPreserveValue)=0
Sets the parameter's taper delegate.
AAX_IParameter::GetNormalizedValueFromDouble
virtual bool GetNormalizedValueFromDouble(double value, double *normalizedValue) const =0
Converts a double to a normalized parameter value.
AAX_IParameter::GetStringFromNormalizedValue
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,...
AAX_IParameter::SetValueWithDouble
virtual bool SetValueWithDouble(double value)=0
Sets the parameter's value as a double.
AAX_IParameter::GetValueAsBool
virtual bool GetValueAsBool(bool *value) const =0
Retrieves the parameter's value as a bool.
AAX_IParameter::SetStepValue
virtual void SetStepValue(uint32_t iStep)=0
Returns the current step for the current value of the parameter.
AAX_IParameter::SetValueWithInt32
virtual bool SetValueWithInt32(int32_t value)=0
Sets the parameter's value as an int32_t.
AAX_IParameter::GetNormalizedValueFromInt32
virtual bool GetNormalizedValueFromInt32(int32_t value, double *normalizedValue) const =0
Converts an integer to a normalized parameter value.
AAX_IParameter::GetValueAsString
virtual bool GetValueAsString(AAX_IString *value) const =0
Retrieves the parameter's value as a string.
AAX_IParameter::GetFloatFromNormalizedValue
virtual bool GetFloatFromNormalizedValue(double normalizedValue, float *value) const =0
Converts a normalized parameter value to a float representing the corresponding real value.
AAX_IParameter::ShortenedName
virtual const AAX_CString & ShortenedName(int32_t iNumCharacters) const =0
Returns the parameter's shortened display name.
AAX_IParameter::GetDoubleFromNormalizedValue
virtual bool GetDoubleFromNormalizedValue(double normalizedValue, double *value) const =0
Converts a normalized parameter value to a double representing the corresponding real value.
AAX_IParameter::SetType
virtual void SetType(AAX_EParameterType iControlType)=0
Sets the type of this parameter.
AAX_IParameter::SetNumberOfSteps
virtual void SetNumberOfSteps(uint32_t numSteps)=0
Sets the number of discrete steps for this parameter.
AAX_IParameter::SetOrientation
virtual void SetOrientation(AAX_EParameterOrientation iOrientation)=0
Sets the orientation of this parameter.
AAX_IParameter::CloneValue
virtual AAX_IParameterValue * CloneValue() const =0
Clone the parameter's value to a new AAX_IParameterValue object.
AAX_IParameter::SetNormalizedValue
virtual void SetNormalizedValue(double newNormalizedValue)=0
Sets a parameter value using it's normalized representation.
AAX_IParameter::GetStepValue
virtual uint32_t GetStepValue() const =0
Returns the current step for the current value of the parameter.
AAX_IParameter::GetValueAsDouble
virtual bool GetValueAsDouble(double *value) const =0
Retrieves the parameter's value as a double.
AAX_IParameter::GetNormalizedValueFromString
virtual bool GetNormalizedValueFromString(const AAX_CString &valueString, double *normalizedValue) const =0
Converts a given string to a normalized parameter value.
AAX_IParameter::SetValueFromString
virtual bool SetValueFromString(const AAX_CString &newValueString)=0
Converts a string to a real parameter value and sets the parameter to this value.
AAX_IParameter::ClearShortenedNames
virtual void ClearShortenedNames()=0
Clears the internal list of shortened display names.
AAX_IParameter::SetValueWithBool
virtual bool SetValueWithBool(bool value)=0
Sets the parameter's value as a bool.
AAX_IParameter::GetNumberOfSteps
virtual uint32_t GetNumberOfSteps() const =0
Returns the number of discrete steps used by the parameter.
AAX_IParameter::GetNormalizedValueFromFloat
virtual bool GetNormalizedValueFromFloat(float value, double *normalizedValue) const =0
Converts a float to a normalized parameter value.
AAX_IString
A simple string container that can be passed across a binary boundary. This class,...
Definition: AAX_IString.h:51
AAX_ITaperDelegateBase
Defines the taper conversion behavior for a parameter.
Definition: AAX_ITaperDelegate.h:83