Jamba C++ API  4.0.0
IGUIJmbParameter Class Referenceabstract

Base class for a Jamba (Jmb) GUI parameter. More...

#include <GUIJmbParameter.h>

Inherits IMessageHandler.

Inherited by GUIJmbParameter< T >.

Public Member Functions

tresult broadcast () const
 
ParamID getJmbParamID () const
 
IJmbParamDef const * getParamDef () const
 
tresult handleMessage (Message const &iMessage) override
 
 IGUIJmbParameter (std::shared_ptr< IJmbParamDef > iParamDef)
 
virtual tresult readFromMessage (Message const &iMessage)=0
 
virtual tresult readFromStream (IBStreamer &iStreamer)=0
 
void setMessageProducer (IMessageProducer *iMessageProducer)
 
virtual tresult writeToMessage (Message &oMessage) const =0
 
virtual tresult writeToStream (IBStreamer &oStreamer) const =0
 
virtual void writeToStream (std::ostream &oStream) const =0
 
- Public Member Functions inherited from IMessageHandler
virtual ~IMessageHandler ()=default
 

Protected Attributes

IMessageProducerfMessageProducer {}
 
std::shared_ptr< IJmbParamDeffParamDef
 

Detailed Description

Base class for a Jamba (Jmb) GUI parameter.

This type of parameter is used when it cannot be mapped to a Vst parameter whose internal representation must be a value in the range [0.0, 1.0]. For example a string (like a user input label to name a component) does not fit in the Vst parameter category. By implementing the serializable api (readFromStream/writeToStream), any type can be part of the state.

Constructor & Destructor Documentation

◆ IGUIJmbParameter()

IGUIJmbParameter ( std::shared_ptr< IJmbParamDef iParamDef)
inlineexplicit

Member Function Documentation

◆ broadcast()

tresult broadcast ( ) const

◆ getJmbParamID()

ParamID getJmbParamID ( ) const
inline

◆ getParamDef()

IJmbParamDef const* getParamDef ( ) const
inline

◆ handleMessage()

tresult handleMessage ( Message const &  iMessage)
inlineoverridevirtual

Implements IMessageHandler.

◆ readFromMessage()

virtual tresult readFromMessage ( Message const &  iMessage)
pure virtual

Implemented in GUIJmbParameter< T >.

◆ readFromStream()

virtual tresult readFromStream ( IBStreamer &  iStreamer)
pure virtual

Implemented in GUIJmbParameter< T >.

◆ setMessageProducer()

void setMessageProducer ( IMessageProducer iMessageProducer)
inline

◆ writeToMessage()

virtual tresult writeToMessage ( Message oMessage) const
pure virtual

Implemented in GUIJmbParameter< T >.

◆ writeToStream() [1/2]

virtual tresult writeToStream ( IBStreamer &  oStreamer) const
pure virtual

Implemented in GUIJmbParameter< T >.

◆ writeToStream() [2/2]

virtual void writeToStream ( std::ostream &  oStream) const
pure virtual

Implemented in GUIJmbParameter< T >.

Member Data Documentation

◆ fMessageProducer

IMessageProducer* fMessageProducer {}
protected

◆ fParamDef

std::shared_ptr<IJmbParamDef> fParamDef
protected

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