Jamba C++ API 7.5.0
Loading...
Searching...
No Matches
Parameters::JmbParamDefBuilder< T > Struct Template Reference

Implements the builder pattern for ease of build. More...

#include <Parameters.h>

Public Member Functions

JmbParam< T > add () const
JmbParamDefBuilderdefaultValue (T const &iDefaultValue)
JmbParamDefBuilderdeprecatedSince (int16 iVersion)
JmbParamDefBuilderguiOwned ()
JmbParamDefBuilderrtOwned ()
template<typename ParamSerializer, typename... Args>
JmbParamDefBuilderserializer (Args &&...iArgs)
JmbParamDefBuilderserializer (std::shared_ptr< IParamSerializer< T > > iSerializer)
JmbParamDefBuildershared (bool iShared=true)
JmbParamDefBuildertransient (bool iTransient=true)

Public Attributes

fDefaultValue {}
int16 fDeprecatedSince {IParamDef::kVersionNotDeprecated}
IParamDef::Owner fOwner {IParamDef::Owner::kGUI}
ParamID fParamID
std::shared_ptr< IParamSerializer< T > > fSerializer {}
bool fShared {false}
VstString16 fTitle
bool fTransient {false}

Protected Member Functions

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

Private Attributes

ParametersfParameters

Friends

class Parameters

Detailed Description

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

Implements the builder pattern for ease of build.

Template Parameters
Tthe underlying type of the param

Constructor & Destructor Documentation

◆ JmbParamDefBuilder()

template<typename T>
JmbParamDefBuilder ( Parameters * iParameters,
ParamID iParamID,
VstString16 iTitle )
inlineprotected

Member Function Documentation

◆ add()

template<typename T>
JmbParam< T > add ( ) const

◆ defaultValue()

template<typename T>
JmbParamDefBuilder & defaultValue ( T const & iDefaultValue)
inline

◆ deprecatedSince()

template<typename T>
JmbParamDefBuilder & deprecatedSince ( int16 iVersion)
inline

◆ guiOwned()

template<typename T>
JmbParamDefBuilder & guiOwned ( )
inline

◆ rtOwned()

template<typename T>
JmbParamDefBuilder & rtOwned ( )
inline

◆ serializer() [1/2]

template<typename T>
template<typename ParamSerializer, typename... Args>
JmbParamDefBuilder & serializer ( Args &&... iArgs)
inline

◆ serializer() [2/2]

template<typename T>
JmbParamDefBuilder & serializer ( std::shared_ptr< IParamSerializer< T > > iSerializer)
inline

◆ shared()

template<typename T>
JmbParamDefBuilder & shared ( bool iShared = true)
inline

◆ transient()

template<typename T>
JmbParamDefBuilder & transient ( bool iTransient = true)
inline

◆ Parameters

template<typename T>
friend class Parameters
friend

Member Data Documentation

◆ fDefaultValue

template<typename T>
T fDefaultValue {}

◆ fDeprecatedSince

template<typename T>
int16 fDeprecatedSince {IParamDef::kVersionNotDeprecated}

◆ fOwner

template<typename T>
IParamDef::Owner fOwner {IParamDef::Owner::kGUI}

◆ fParameters

template<typename T>
Parameters* fParameters
private

◆ fParamID

template<typename T>
ParamID fParamID

◆ fSerializer

template<typename T>
std::shared_ptr<IParamSerializer<T> > fSerializer {}

◆ fShared

template<typename T>
bool fShared {false}

◆ fTitle

template<typename T>
VstString16 fTitle

◆ fTransient

template<typename T>
bool fTransient {false}

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