Jamba  3.2.0
pongasoft::VST::Parameters::VstParamDefBuilder< T > Struct Template Reference

#include <Parameters.h>

Public Member Functions

VstParam< T > add () const
 
VstParamDefBuilderconverter (std::shared_ptr< IParamConverter< T >> iConverter)
 
template<typename ParamConverter , typename... Args>
VstParamDefBuilderconverter (Args... iArgs)
 
VstParamDefBuilderdefaultValue (T const &iDefaultValue)
 
VstParamDefBuilderflags (int32 iFlags)
 
VstParamDefBuilderguiOwned ()
 
VstParamDefBuilderprecision (int32 iPrecision)
 
VstParamDefBuilderrtOwned ()
 
VstParamDefBuildershortTitle (VstString16 iShortTitle)
 
VstParamDefBuildertransient (bool iTransient=true)
 
VstParamDefBuilderunitID (int32 iUnitID)
 
VstParamDefBuilderunits (VstString16 iUnits)
 

Public Attributes

std::shared_ptr< IParamConverter< T > > fConverter {}
 
fDefaultValue {}
 
int32 fFlags = ParameterInfo::kCanAutomate
 
IParamDef::Owner fOwner = IParamDef::Owner::kRT
 
ParamID fParamID
 
int32 fPrecision = 4
 
VstString16 fShortTitle {}
 
VstString16 fTitle
 
bool fTransient = false
 
UnitID fUnitID = kRootUnitId
 
VstString16 fUnits {}
 

Protected Member Functions

 VstParamDefBuilder (Parameters *iParameters, ParamID iParamID, VstString16 iTitle)
 

Private Attributes

ParametersfParameters
 

Friends

class Parameters
 

Detailed Description

template<typename T>
struct pongasoft::VST::Parameters::VstParamDefBuilder< T >

Implements the builder pattern for ease of build.

Template Parameters
Tthe underlying type of the param

Constructor & Destructor Documentation

◆ VstParamDefBuilder()

template<typename T>
pongasoft::VST::Parameters::VstParamDefBuilder< T >::VstParamDefBuilder ( Parameters iParameters,
ParamID  iParamID,
VstString16  iTitle 
)
inlineprotected

Member Function Documentation

◆ add()

template<typename T >
VstParam< T > pongasoft::VST::Parameters::VstParamDefBuilder< T >::add ( ) const

◆ converter() [1/2]

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::converter ( std::shared_ptr< IParamConverter< T >>  iConverter)
inline

◆ converter() [2/2]

template<typename T>
template<typename ParamConverter , typename... Args>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::converter ( Args...  iArgs)
inline

◆ defaultValue()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::defaultValue ( T const &  iDefaultValue)
inline

◆ flags()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::flags ( int32  iFlags)
inline

◆ guiOwned()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::guiOwned ( )
inline

◆ precision()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::precision ( int32  iPrecision)
inline

◆ rtOwned()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::rtOwned ( )
inline

◆ shortTitle()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::shortTitle ( VstString16  iShortTitle)
inline

◆ transient()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::transient ( bool  iTransient = true)
inline

◆ unitID()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::unitID ( int32  iUnitID)
inline

◆ units()

template<typename T>
VstParamDefBuilder& pongasoft::VST::Parameters::VstParamDefBuilder< T >::units ( VstString16  iUnits)
inline

Friends And Related Function Documentation

◆ Parameters

template<typename T>
friend class Parameters
friend

Member Data Documentation

◆ fConverter

template<typename T>
std::shared_ptr<IParamConverter<T> > pongasoft::VST::Parameters::VstParamDefBuilder< T >::fConverter {}

◆ fDefaultValue

template<typename T>
T pongasoft::VST::Parameters::VstParamDefBuilder< T >::fDefaultValue {}

◆ fFlags

template<typename T>
int32 pongasoft::VST::Parameters::VstParamDefBuilder< T >::fFlags = ParameterInfo::kCanAutomate

◆ fOwner

◆ fParameters

template<typename T>
Parameters* pongasoft::VST::Parameters::VstParamDefBuilder< T >::fParameters
private

◆ fParamID

template<typename T>
ParamID pongasoft::VST::Parameters::VstParamDefBuilder< T >::fParamID

◆ fPrecision

template<typename T>
int32 pongasoft::VST::Parameters::VstParamDefBuilder< T >::fPrecision = 4

◆ fShortTitle

template<typename T>
VstString16 pongasoft::VST::Parameters::VstParamDefBuilder< T >::fShortTitle {}

◆ fTitle

◆ fTransient

template<typename T>
bool pongasoft::VST::Parameters::VstParamDefBuilder< T >::fTransient = false

◆ fUnitID

template<typename T>
UnitID pongasoft::VST::Parameters::VstParamDefBuilder< T >::fUnitID = kRootUnitId

◆ fUnits

template<typename T>
VstString16 pongasoft::VST::Parameters::VstParamDefBuilder< T >::fUnits {}

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