AAX SDK  2.1.1
Avid Audio Extensions Development Kit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AAX_IParameter.h
Go to the documentation of this file.
1 /*================================================================================================*/
2 /*
3  *
4  * Copyright 2013 by Avid Technology, Inc.
5  * All rights reserved.
6  *
7  * CONFIDENTIAL: This document contains confidential information. Do not
8  * read or examine this document unless you are an Avid Technology employee
9  * or have signed a non-disclosure agreement with Avid Technology which protects
10  * the confidentiality of this document. DO NOT DISCLOSE ANY INFORMATION
11  * CONTAINED IN THIS DOCUMENT TO ANY THIRD-PARTY WITHOUT THE PRIOR WRITTEN CONSENT
12  * OF Avid Technolgy, INC.
13  *
14  */
15 
22 /*================================================================================================*/
23 
24 
25 #ifndef AAX_IPARAMETER_H
26 #define AAX_IPARAMETER_H
27 
28 #include "AAX.h" //for types
29 
30 //Forward Declarations
31 class AAX_CString;
35 class AAX_IString;
36 
53 {
54 public:
59  virtual ~AAX_IParameter() { }
60 
61 
72  virtual AAX_CParamID Identifier() const = 0;
73 
83  virtual void SetName(const AAX_CString& name) = 0;
84 
90  virtual const AAX_CString& Name() const = 0;
91 
101  virtual void AddShortenedName(const AAX_CString& name) = 0;
102 
108  virtual const AAX_CString& ShortenedName(int32_t iNumCharacters) const = 0;
109 
113  virtual void ClearShortenedNames() = 0;
115 
116 
125  virtual bool Automatable() const = 0;
126 
132  virtual void SetAutomationDelegate( AAX_IAutomationDelegate * iAutomationDelegate ) = 0;
133 
141  virtual void Touch() = 0;
142 
149  virtual void Release() = 0;
151 
164  virtual void SetNormalizedValue(double newNormalizedValue) = 0;
165 
169  virtual double GetNormalizedValue() const = 0;
170 
174  virtual void SetNormalizedDefaultValue(double normalizedDefault) = 0;
175 
179  virtual double GetNormalizedDefaultValue() const = 0;
180 
184  virtual void SetToDefaultValue() = 0;
185 
198  virtual void SetNumberOfSteps(uint32_t numSteps) = 0;
199 
204  virtual uint32_t GetNumberOfSteps() const = 0;
205 
210  virtual uint32_t GetStepValue() const = 0;
211 
216  virtual void SetStepValue(uint32_t iStep) = 0;
217 
219 
220 
235  virtual bool GetValueString(AAX_CString* valueString) const = 0;
236 
247  virtual bool GetValueString(int32_t iMaxNumChars, AAX_CString* valueString) const = 0;
248 
259  virtual bool GetNormalizedValueFromString(const AAX_CString& valueString, double *normalizedValue) const = 0;
260 
272  virtual bool GetStringFromNormalizedValue(double normalizedValue, AAX_CString& valueString) const = 0;
273 
287  virtual bool GetStringFromNormalizedValue(double normalizedValue, int32_t iMaxNumChars, AAX_CString& valueString) const = 0;
288 
297  virtual bool SetValueFromString(const AAX_CString& newValueString) = 0;
299 
312  virtual bool GetValueAsBool(bool* value) const = 0;
313 
322  virtual bool GetValueAsInt32(int32_t* value) const = 0;
323 
332  virtual bool GetValueAsFloat(float* value) const = 0;
333 
342  virtual bool GetValueAsDouble(double* value) const = 0;
343 
352  virtual bool GetValueAsString(AAX_IString* value) const = 0;
353 
362  virtual bool SetValueWithBool(bool value) = 0;
363 
372  virtual bool SetValueWithInt32(int32_t value) = 0;
373 
382  virtual bool SetValueWithFloat(float value) = 0;
383 
392  virtual bool SetValueWithDouble(double value) = 0;
393 
402  virtual bool SetValueWithString(const AAX_IString& value) = 0;
404 
405 
413  virtual void SetType( AAX_EParameterType iControlType ) = 0;
414 
419  virtual AAX_EParameterType GetType() const = 0;
420 
421 
427  virtual void SetOrientation( AAX_EParameterOrientation iOrientation ) = 0;
428 
432  virtual AAX_EParameterOrientation GetOrientation() const = 0;
433 
434  virtual void SetTaperDelegate ( AAX_ITaperDelegateBase & iTaperDelegate, bool iPreserveValue ) = 0;
435  virtual void SetDisplayDelegate ( AAX_IDisplayDelegateBase & iDisplayDelegate ) = 0;
436 
437 public:
452  virtual void UpdateNormalizedValue(double newNormalizedValue) = 0;
454 
455 };
456 
457 #endif //AAX_IPARAMETER_H
458 
459 
460 
461 
virtual AAX_EParameterType GetType() const =0
Returns the type of this parameter as an AAX_EParameterType.
virtual void Touch()=0
Signals the automation system that a control has been touched.
AAX_EParameterType
FIC stuff that I can't include without DAE library dependence.
Definition: AAX_Enums.h:487
Various utility definitions for AAX.
Defines the display behavior for a parameter.
Definition: AAX_IDisplayDelegate.h:52
virtual bool SetValueWithInt32(int32_t value)=0
Sets the parameter's value as an int32_t.
virtual void SetStepValue(uint32_t iStep)=0
Returns the current step for the current value of the parameter.
virtual void SetNormalizedValue(double newNormalizedValue)=0
Sets a parameter value using it's normalized representation.
virtual bool SetValueFromString(const AAX_CString &newValueString)=0
Converts a string to a real parameter value and sets the parameter to this value. ...
int32_t AAX_EParameterOrientation
Typedef for a bitfield of AAX_EParameterOrientationBits values.
Definition: AAX_Enums.h:519
virtual AAX_EParameterOrientation GetOrientation() const =0
Returns the orientation of this parameter.
virtual uint32_t GetStepValue() const =0
Returns the current step for the current value of the parameter.
virtual double GetNormalizedDefaultValue() const =0
Returns the normalized representation of the parameter's real default value.
virtual bool GetNormalizedValueFromString(const AAX_CString &valueString, double *normalizedValue) const =0
Converts a given string to a normalized parameter value.
virtual const AAX_CString & Name() const =0
Returns the parameter's display name.
virtual AAX_CParamID Identifier() const =0
Returns the parameter's unique identifier.
virtual bool GetValueAsString(AAX_IString *value) const =0
Retrieves the parameter's value as a string.
virtual void SetName(const AAX_CString &name)=0
Sets the parameter's display name.
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 bool SetValueWithBool(bool value)=0
Sets the parameter's value as a bool.
Interface allowing an AAX plug-in to interact with the host's event system.
Definition: AAX_IAutomationDelegate.h:46
virtual bool GetValueAsInt32(int32_t *value) const =0
Retrieves the parameter's value as an int32_t.
virtual void SetType(AAX_EParameterType iControlType)=0
Sets the type of this parameter.
virtual void SetTaperDelegate(AAX_ITaperDelegateBase &iTaperDelegate, bool iPreserveValue)=0
A simple string container that can be passed across a binary boundary. This class, for simplicity, is not versioned and thus can never change.
Definition: AAX_IString.h:40
virtual void SetDisplayDelegate(AAX_IDisplayDelegateBase &iDisplayDelegate)=0
virtual void ClearShortenedNames()=0
Clears the internal list of shortened display names.
virtual bool Automatable() const =0
Returns true if the parameter is automatable, false if it is not.
virtual bool GetValueAsBool(bool *value) const =0
Retrieves the parameter's value as a bool.
A generic AAX string class with similar functionality to std::string.
Definition: AAX_CString.h:35
virtual void SetOrientation(AAX_EParameterOrientation iOrientation)=0
Sets the orientation of this parameter.
virtual ~AAX_IParameter()
Virtual destructor.
Definition: AAX_IParameter.h:59
virtual void SetNumberOfSteps(uint32_t numSteps)=0
Sets the number of discrete steps for this parameter.
virtual void SetAutomationDelegate(AAX_IAutomationDelegate *iAutomationDelegate)=0
Sets the automation delegate (if one is required)
virtual bool SetValueWithString(const AAX_IString &value)=0
Sets the parameter's value as a string.
virtual bool GetValueString(AAX_CString *valueString) const =0
Serializes the parameter value into a string.
virtual void SetNormalizedDefaultValue(double normalizedDefault)=0
Sets the parameter's default value using its normalized representation.
virtual void SetToDefaultValue()=0
Restores the state of this parameter to its default value.
virtual bool SetValueWithDouble(double value)=0
Sets the parameter's value as a double.
virtual uint32_t GetNumberOfSteps() const =0
Returns the number of discrete steps used by the parameter.
const char * AAX_CParamID
Parameter identifier.
Definition: AAX.h:128
virtual bool GetValueAsDouble(double *value) const =0
Retrieves the parameter's value as a double.
The base interface for all normalizable plug-in parameters.
Definition: AAX_IParameter.h:52
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 GetValueAsFloat(float *value) const =0
Retrieves the parameter's value as a float.
Defines the taper conversion behavior for a parameter.
Definition: AAX_ITaperDelegate.h:72
virtual void AddShortenedName(const AAX_CString &name)=0
Sets the parameter's shortened display name.
virtual void UpdateNormalizedValue(double newNormalizedValue)=0
Sets the parameter's state given a normalized value.
virtual bool SetValueWithFloat(float value)=0
Sets the parameter's value as a float.
virtual const AAX_CString & ShortenedName(int32_t iNumCharacters) const =0
Returns the parameter's shortened display name.