Jamba C++ API  5.1.1
DiscreteValueParamConverter< StepCount, IntType > Class Template Reference

A converter to deal with a discrete value which has StepCount steps. More...

#include <ParamConverters.h>

Inherits IParamConverter< IntType >.

Public Types

using ConstructorType = std::array< VstString16, StepCount+1 > const &
 Defines the type for the constructor argument. More...
 
using ParamType = IntType
 
- Public Types inherited from IParamConverter< IntType >
using ParamType = IntType
 

Public Member Functions

ParamType denormalize (ParamValue iNormalizedValue) const override
 
 DiscreteValueParamConverter (IntType iToStringOffset=0)
 
 DiscreteValueParamConverter (VstString16 iFormat, IntType iToStringOffset=0)
 
 DiscreteValueParamConverter (ConstructorType iToStringValues)
 
int32 getStepCount () const override
 
ParamValue normalize (ParamType const &iDiscreteValue) const override
 
void toString (ParamType const &iValue, String128 oString, int32) const override
 
- Public Member Functions inherited from IParamConverter< IntType >
virtual std::string toString (ParamType const &iValue, int32 iPrecision) const
 

Private Attributes

VstString16 fFormat {}
 
IntType fToStringOffset {}
 
std::vector< VstString16fToStringValues {}
 

Detailed Description

template<int32 StepCount, typename IntType = int32>
class pongasoft::VST::DiscreteValueParamConverter< StepCount, IntType >

A converter to deal with a discrete value which has StepCount steps.

It follows the formulas given in the SDK documentation. Note that the number of steps is always -1 from the number of values. For example for 3 values (0, 1, 2) the number of steps is 2.

Member Typedef Documentation

◆ ConstructorType

using ConstructorType = std::array<VstString16, StepCount + 1> const &

Defines the type for the constructor argument.

Example: { STR16("abc"), ... }

◆ ParamType

using ParamType = IntType

Constructor & Destructor Documentation

◆ DiscreteValueParamConverter() [1/3]

DiscreteValueParamConverter ( IntType  iToStringOffset = 0)
inlineexplicit

◆ DiscreteValueParamConverter() [2/3]

DiscreteValueParamConverter ( VstString16  iFormat,
IntType  iToStringOffset = 0 
)
inlineexplicit

◆ DiscreteValueParamConverter() [3/3]

DiscreteValueParamConverter ( ConstructorType  iToStringValues)
inlineexplicit

Member Function Documentation

◆ denormalize()

ParamType denormalize ( ParamValue  iNormalizedValue) const
inlineoverridevirtual

◆ getStepCount()

int32 getStepCount ( ) const
inlineoverridevirtual

Reimplemented from IParamConverter< IntType >.

◆ normalize()

ParamValue normalize ( ParamType const &  iDiscreteValue) const
inlineoverridevirtual

◆ toString()

void toString ( ParamType const &  iValue,
String128  oString,
int32   
) const
inlineoverridevirtual

Reimplemented from IParamConverter< IntType >.

Member Data Documentation

◆ fFormat

VstString16 fFormat {}
private

◆ fToStringOffset

IntType fToStringOffset {}
private

◆ fToStringValues

std::vector<VstString16> fToStringValues {}
private

The documentation for this class was generated from the following file: