|
| IPeakAvgSender (double minThresholdDb=-90.0, bool rmsMode=true, float windowSizeMs=5.0f, float attackTimeMs=1.0f, float decayTimeMs=100.0f, float peakHoldTimeMs=500.0f) |
|
void | Reset (double sampleRate) |
|
void | SetAttackTimeMs (double timeMs, double sampleRate) |
|
void | SetDecayTimeMs (double timeMs, double sampleRate) |
|
void | SetWindowSizeMs (double timeMs, double sampleRate) |
|
void | SetPeakHoldTimeMs (double timeMs, double sampleRate) |
|
void | ProcessBlock (sample **inputs, int nFrames, int ctrlTag=kNoTag, int nChans=MAXNC, int chanOffset=0) |
| Queue peaks from sample buffers into the sender This can be called on the realtime audio thread. More...
|
|
void | PushData (const ISenderData< MAXNC, T > &d) |
| Pushes a data element onto the queue. More...
|
|
virtual void | PrepareDataForUI (ISenderData< MAXNC, T > &d) |
| This is called on the main thread and can be used to transform the data, e.g. 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, overriding the tags in the data packet. More...
|
|
template<int MAXNC = 1, int QUEUE_SIZE = 64>
class IPeakAvgSender< MAXNC, QUEUE_SIZE >
IPeakAvgSender is a utility class which can be used to defer peak & avg/RMS data from sample buffers for sending to the GUI It also features an envelope follower to control meter ballistics.
Definition at line 192 of file ISender.h.
template<int MAXNC = 1, int QUEUE_SIZE = 64>
void IPeakAvgSender< MAXNC, QUEUE_SIZE >::ProcessBlock |
( |
sample ** |
inputs, |
|
|
int |
nFrames, |
|
|
int |
ctrlTag = kNoTag , |
|
|
int |
nChans = MAXNC , |
|
|
int |
chanOffset = 0 |
|
) |
| |
|
inline |
Queue peaks from sample buffers into the sender This can be called on the realtime audio thread.
- Parameters
-
inputs | the sample buffers to analyze |
nFrames | the number of sample frames in the input buffers |
ctrlTag | a 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 |
nChans | the number of channels of data that should be sent |
chanOffset | the starting channel |
Definition at line 289 of file ISender.h.
References ISender< MAXNC, QUEUE_SIZE, T >::PushData().