iPlug2 - C++ Audio Plug-in Framework
Loading...
Searching...
No Matches
Public Member Functions | List of all members
IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF > Class Template Reference

IBufferSender is a utility class which can be used to defer buffer data for sending to the GUI. More...

#include <ISender.h>

Inheritance diagram for IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF >:
[legend]

Public Member Functions

 IBufferSender (double minThresholdDb=-90., int bufferSize=MAXBUF)
 
void ProcessBlock (sample **inputs, int nFrames, int ctrlTag=kNoTag, int nChans=MAXNC, int chanOffset=0)
 Queue sample buffers into the sender, checking the data is over the required threshold. More...
 
void SetBufferSize (int bufferSize)
 
int GetBufferSize () const
 
- Public Member Functions inherited from ISender< MAXNC, QUEUE_SIZE, T >
void PushData (const ISenderData< MAXNC, T > &d)
 Pushes a data element onto the queue. More...
 
void TransmitData (IEditorDelegate &dlg)
 Pops elements off the queue and sends messages to controls. More...
 
void TransmitDataToControlsWithTags (IEditorDelegate &dlg, const std::initializer_list< int > &ctrlTags)
 This variation can be used if you need to supply multiple controls with the same ISenderData, overrideing the tags in the data packet. More...
 

Additional Inherited Members

- Static Public Attributes inherited from ISender< MAXNC, QUEUE_SIZE, T >
static constexpr int kUpdateMessage = 0
 

Detailed Description

template<int MAXNC = 1, int QUEUE_SIZE = 64, int MAXBUF = 128>
class IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF >

IBufferSender is a utility class which can be used to defer buffer data for sending to the GUI.

Definition at line 422 of file ISender.h.

Constructor & Destructor Documentation

◆ IBufferSender()

template<int MAXNC = 1, int QUEUE_SIZE = 64, int MAXBUF = 128>
IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF >::IBufferSender ( double  minThresholdDb = -90.,
int  bufferSize = MAXBUF 
)
inline

Definition at line 425 of file ISender.h.

Member Function Documentation

◆ GetBufferSize()

template<int MAXNC = 1, int QUEUE_SIZE = 64, int MAXBUF = 128>
int IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF >::GetBufferSize ( ) const
inline

Definition at line 483 of file ISender.h.

◆ ProcessBlock()

template<int MAXNC = 1, int QUEUE_SIZE = 64, int MAXBUF = 128>
void IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF >::ProcessBlock ( sample **  inputs,
int  nFrames,
int  ctrlTag = kNoTag,
int  nChans = MAXNC,
int  chanOffset = 0 
)
inline

Queue sample buffers into the sender, checking the data is over the required threshold.

This can be called on the realtime audio thread.

Parameters
inputsthe sample buffers
nFramesthe number of sample frames in the input buffers
ctrlTaga control tag to indicate which control to send the buffers to. Note: if you don't supply the control tag here, you must use TransmitDataToControlsWithTags() and specify one or more tags there
nChansthe number of channels of data that should be sent
chanOffsetthe starting channel

Definition at line 438 of file ISender.h.

References ISender< MAXNC, QUEUE_SIZE, T >::PushData().

◆ SetBufferSize()

template<int MAXNC = 1, int QUEUE_SIZE = 64, int MAXBUF = 128>
void IBufferSender< MAXNC, QUEUE_SIZE, MAXBUF >::SetBufferSize ( int  bufferSize)
inline

Definition at line 474 of file ISender.h.


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