24#ifndef __LS_AUDIOCHANNEL_H__
25#define __LS_AUDIOCHANNEL_H__
30#include "../../common/global.h"
31#include "../../common/Exception.h"
32#include "../DeviceParameter.h"
90 inline float*
Buffer() {
return pBuffer; }
91 void SetBuffer(
float* pBuffer) { this->pBuffer = pBuffer; }
93 inline void Clear() {
memset(pBuffer, 0, uiBufferSize *
sizeof(
float)); }
113 bool UsesExternalBuffer;
ParameterIsMixChannel(bool b)
virtual bool Fix() OVERRIDE
Whether the parameter is read only.
virtual void OnSetValue(bool b) OVERRIDE
Must be implemented be a driver's parameter class to react on the parameter value being set / altered...
virtual String Description() OVERRIDE
A human readable description, explaining the exact purpose of the driver parameter.
virtual optional< int > RangeMinAsInt() OVERRIDE
Must be implemented by descendant, returning a minimum int value for the parameter.
virtual bool Fix() OVERRIDE
Whether the parameter is read only.
ParameterMixChannelDestination(int i)
virtual void OnSetValue(int i) OVERRIDE
Must be implemented be a driver's parameter class to react on the parameter value being set / altered...
virtual optional< int > RangeMaxAsInt() OVERRIDE
Must be implemented by descendant, returning a maximum int value for the parameter.
virtual String Description() OVERRIDE
A human readable description, explaining the exact purpose of the driver parameter.
virtual std::vector< int > PossibilitiesAsInt() OVERRIDE
Must be implemented by descendant, returning a list of possible int values for the parameter.
virtual std::vector< String > PossibilitiesAsString() OVERRIDE
Must be implemented by descendant, returning a list of possible String values for the parameter.
virtual bool Fix() OVERRIDE
Whether the parameter is read only.
virtual void OnSetValue(String s) OVERRIDE
Must be implemented be a driver's parameter class to react on the parameter value being set / altered...
virtual String Description() OVERRIDE
A human readable description, explaining the exact purpose of the driver parameter.
Audio Channel (always mono)
virtual ~AudioChannel()
Destructor.
void SetBuffer(float *pBuffer)
void Clear(uint Samples)
Reset audio buffer with silence.
float * Buffer()
Audio signal buffer.
std::map< String, DeviceRuntimeParameter * > Parameters
void CopyTo(AudioChannel *pDst, const uint Samples)
Copies audio data (unmodified) from this AudioChannel to the given destination AudioChannel.
std::map< String, DeviceRuntimeParameter * > ChannelParameters()
void Clear()
Reset audio buffer with silence.
void MixTo(AudioChannel *pDst, const uint Samples)
Copies audio data (unmodified) from this AudioChannel and mixes it to the given destination AudioChan...
AudioChannel * MixChannel()
In case this channel is a mix channel, then it will return a pointer to the real channel this channel...
Abstract base class for driver parameters of type bool.
Abstract base class for driver parameters of type int.
Abstract base class for driver parameters of type String.
Exception that will be thrown in NON REAL TIME PARTS of the LinuxSampler application.
Wraps as a kind of pointer class some data object shared with other threads, to protect / synchronize...