haiku/src/kits/media/OldAudioStream.h
ejakowatz 52a3801208 It is accomplished ...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-09 12:24:59 +00:00

95 lines
2.1 KiB
C++

/******************************************************************************
File: AudioStream.h
Copyright 1995-97, Be Incorporated
******************************************************************************/
#ifndef _AUDIO_STREAM_H
#define _AUDIO_STREAM_H
#include <OldBufferStream.h>
#include <ClassInfo.h>
/* ================
Class definition for BADCStream and BDACStream
================ */
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; /* message pipe to server */
virtual stream_id StreamID() const; /* stream identifier */
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; /* message pipe to server */
virtual stream_id StreamID() const; /* stream identifier */
private:
virtual void _ReservedDACStream1();
virtual void _ReservedDACStream2();
virtual void _ReservedDACStream3();
BMessenger* fServer;
stream_id fStreamID;
uint32 _reserved[4];
};
#endif // #ifdef _AUDIO_STREAM_H