Jamba C++ API  5.1.1
GUIPluginState< TPluginParameters > Class Template Reference

Simple templated extension to expose the plugin parameters as its real type. More...

#include <GUIState.h>

Inherits GUIState.

Public Types

using PluginParameters = TPluginParameters
 

Public Member Functions

 GUIPluginState (PluginParameters const &iPluginParameters)
 
- Public Member Functions inherited from GUIState
template<typename T >
GUIJmbParam< T > add (JmbParam< T > iParamDef)
 This method is called for each parameter managed by the GUIState that is not a regular VST parameter. More...
 
template<typename T >
tresult broadcast (JmbParam< T > const &iParamDef, T const &iMessage)
 Broadcast a message without requiring the need to instantiate a GUIJmbParam. More...
 
std::unique_ptr< FObjectCxconnect (ParamID iParamID, Parameters::IChangeListener *iChangeListener) const
 Connects the paramID to the listener. More...
 
std::unique_ptr< FObjectCxconnect (ParamID iParamID, Parameters::ChangeCallback iChangeCallback) const
 Connects the paramID to the callback. More...
 
std::unique_ptr< GUIParamCxMgrcreateParamCxMgr ()
 The CustomView class automatically calls this method to get a handle of a ParamCxMgr used to register for interest and obtain GUIParam instances. More...
 
bool dismissDialog () override
 Dismisses the currently shown dialog. More...
 
bool existsJmb (ParamID iParamID) const
 
bool existsVst (ParamID iParamID) const
 
std::shared_ptr< IGUIParameterfindParam (ParamID iParamID) const
 Generic call which returns a param with the given id or nullptr if there isn't one. More...
 
std::vector< ParamID > const & getAllRegistrationOrder () const
 
template<typename T >
std::shared_ptr< GUIVstParameter< T > > getGUIVstParameter (ParamID iParamID) const
 
template<typename T >
std::shared_ptr< GUIVstParameter< T > > getGUIVstParameter (VstParam< T > iParamDef) const
 
std::shared_ptr< IGUIJmbParametergetJmbParameter (ParamID iParamID) const
 
Parameters const & getPluginParameters () const
 
std::shared_ptr< RawVstParamDefgetRawVstParamDef (ParamID iParamID) const
 
std::shared_ptr< GUIRawVstParametergetRawVstParameter (ParamID iParamID) const
 
 GUIState (Parameters const &iPluginParameters)
 
virtual tresult handleGUIStateUpgrade (int16 iDeprecatedVersion, int16 iVersion) const
 When Jamba detects that a previously saved GUI state matches a deprecated version (as registered with setGUIDeprecatedSaveStateOrder), it will call this method to let the plugin handle the upgrade if necessary. More...
 
tresult handleMessage (Message const &iMessage)
 Handle an incoming message => will forward to JmbParam marked shared by rtOwner. More...
 
virtual tresult init (VstParametersSPtr iVstParameters, IMessageProducer *iMessageProducer, IDialogHandler *iDialogHandler)
 Called by the GUIController. More...
 
template<typename TView >
ParamAwareView< TView > * makeParamAware (TView *iView)
 Allow for registering an arbitrary callback on an arbitrary view without having to inherit from the view. More...
 
virtual tresult readGUIState (IBStreamer &iStreamer)
 This method is called from the GUI controller setState method and reads the state previously saved by the GUI only (parameters that are ui only) and initializes the vst host parameters accordingly. More...
 
virtual tresult readRTState (IBStreamer &iStreamer)
 This method is called from the GUI controller setComponentState method and reads the state coming from RT and initializes the vst host parameters accordingly. More...
 
template<typename TView >
ParamAwareView< TView > * registerConnectionFor (TView *iView)
 
bool showDialog (std::string iTemplateName) override
 This method is called with the name of the template to use for the dialog. More...
 
virtual tresult writeGUIState (IBStreamer &oStreamer) const
 This method is called from the GUI controller getState method and writes the state specific to the GUI only (parameters that are ui only), reading the values from the vst host parameters. More...
 
- Public Member Functions inherited from IMessageProducer
virtual ~IMessageProducer ()=default
 
- Public Member Functions inherited from IDialogHandler
virtual ~IDialogHandler ()=default
 Destructor. More...
 

Public Attributes

PluginParameters const & fParams
 

Additional Inherited Members

- Protected Member Functions inherited from GUIState
void addJmbParam (std::shared_ptr< IGUIJmbParameter > iParameter)
 
IPtr< IMessage > allocateMessage () override
 Allocates a message instance. More...
 
virtual tresult readDeprecatedGUIState (uint16 iDeprecatedVersion, IBStreamer &iStreamer, NormalizedState::SaveOrder const &iLatestSaveOrder)
 
virtual tresult readGUIState (NormalizedState::SaveOrder const &iSaveOrder, IBStreamer &iStreamer)
 Reads the gui state from the stream using the provided order. More...
 
tresult sendMessage (IPtr< IMessage > iMessage) override
 Sends the given message to the peer. More...
 
tresult setParamNormalized (NormalizedState const *iNormalizedState)
 
- Protected Attributes inherited from GUIState
std::vector< ParamID > fAllRegistrationOrder {}
 
IDialogHandlerfDialogHandler {}
 
std::map< ParamID, std::shared_ptr< IGUIJmbParameter > > fJmbParams {}
 
MessageHandler fMessageHandler {}
 
IMessageProducerfMessageProducer {}
 
ParamAwareViews fParamAwareViews {}
 
Parameters const & fPluginParameters
 
VstParametersSPtr fVstParameters {}
 

Detailed Description

template<typename TPluginParameters>
class pongasoft::VST::GUI::GUIPluginState< TPluginParameters >

Simple templated extension to expose the plugin parameters as its real type.

Template Parameters
TPluginParametersthe type of the plugin parameters (subclass of Parameters)

Member Typedef Documentation

◆ PluginParameters

using PluginParameters = TPluginParameters

Constructor & Destructor Documentation

◆ GUIPluginState()

GUIPluginState ( PluginParameters const &  iPluginParameters)
inlineexplicit

Member Data Documentation

◆ fParams

PluginParameters const& fParams

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