Jamba
3.0.2
|
#include <RTJmbOutParameter.h>
Inherits pongasoft::VST::RT::IRTJmbOutParameter.
Public Types | |
using | ParamType = T |
Public Member Functions | |
template<class ElementModifier > | |
void | broadcast (ElementModifier const &iElementModifier) |
template<class ElementModifier > | |
bool | broadcastIf (ElementModifier const &iElementModifier) |
void | broadcastValue (ParamType const &iValue) |
JmbParamDef< T > const * | getParamDefT () const |
bool | hasUpdate () const override |
RTJmbOutParameter (std::shared_ptr< JmbParamDef< T >> iParamDef) | |
tresult | writeToMessage (Message &oMessage) override |
void | writeToStream (std::ostream &oStream) const override |
Public Member Functions inherited from pongasoft::VST::RT::IRTJmbOutParameter | |
IJmbParamDef const * | getParamDef () const |
ParamID | getParamID () const |
IRTJmbOutParameter (std::shared_ptr< IJmbParamDef > iParamDef) | |
virtual | ~IRTJmbOutParameter ()=default |
Private Attributes | |
Concurrent::LockFree::SingleElementQueue< T > | fUpdateQueue {} |
Additional Inherited Members | |
Protected Attributes inherited from pongasoft::VST::RT::IRTJmbOutParameter | |
std::shared_ptr< IJmbParamDef > | fParamDef |
Templated class for RT Jamba parameter. The RT code calls enqueueUpdate when a new value needs to be propagated to its peer (GUI). A GUI timer will then pop the value from the queue, serialize it, wrap it in a message and send it to the GUI.
T |
using pongasoft::VST::RT::RTJmbOutParameter< T >::ParamType = T |
|
inlineexplicit |
|
inline |
|
inline |
Enqueues the value to be delivered to the GUI (or whoever is listening to messages). Note that this call returns right away. The packaging and delivery will happen in a GUI thread. This method is called by RT thread. Use this flavor to avoid copy. This flavor uses a callback that returns true when the broadcast should happen and false otherwise.
|
inline |
|
inline |
|
inlineoverridevirtual |
Implements pongasoft::VST::RT::IRTJmbOutParameter.
|
overridevirtual |
Implements pongasoft::VST::RT::IRTJmbOutParameter.
|
overridevirtual |
Implements pongasoft::VST::RT::IRTJmbOutParameter.
|
private |