#ifndef _AUDIO_STREAM_H
#define _AUDIO_STREAM_H
#include "OldBufferStream.h"
class BADCStream : public BAbstractBufferStream
{
public:
BADCStream();
virtual ~BADCStream();
status_t SetADCInput(int32 device);
status_t ADCInput(int32* device) const;
status_t SetSamplingRate(float sRate);
status_t SamplingRate(float* sRate) const;
status_t BoostMic(bool boost);
bool IsMicBoosted() const;
status_t SetStreamBuffers(size_t bufferSize, int32 bufferCount);
protected:
virtual BMessenger* Server() const;
virtual stream_id StreamID() const;
private:
virtual void _ReservedADCStream1();
virtual void _ReservedADCStream2();
virtual void _ReservedADCStream3();
BMessenger* fServer;
stream_id fStreamID;
uint32 _reserved[4];
};
class BDACStream : public BAbstractBufferStream
{
public:
BDACStream();
virtual ~BDACStream();
status_t SetSamplingRate(float sRate);
status_t SamplingRate(float* sRate) const;
status_t SetVolume(int32 device,
float l_volume,
float r_volume);
status_t GetVolume(int32 device,
float *l_volume,
float *r_volume,
bool *enabled) const;
status_t EnableDevice(int32 device, bool enable);
bool IsDeviceEnabled(int32 device) const;
status_t SetStreamBuffers(size_t bufferSize, int32 bufferCount);
protected:
virtual BMessenger* Server() const;
virtual stream_id StreamID() const;
private:
virtual void _ReservedDACStream1();
virtual void _ReservedDACStream2();
virtual void _ReservedDACStream3();
BMessenger* fServer;
stream_id fStreamID;
uint32 _reserved[4];
};
#endif