39 lines
886 B
C++
39 lines
886 B
C++
#ifndef NULLSOFT_AUDIOOUTH
|
|
#define NULLSOFT_AUDIOOUTH
|
|
|
|
#include <windows.h>
|
|
#include "../../../../Winamp/out.h"
|
|
|
|
enum InitState
|
|
{
|
|
StatusNone = 0,
|
|
StatusInit,
|
|
StatusQuit
|
|
};
|
|
|
|
class AudioOut
|
|
{
|
|
public:
|
|
AudioOut() : dllInstance(0), winampWnd(NULL) {}
|
|
virtual void Init() = 0;
|
|
virtual void Quit() = 0;
|
|
virtual int CanWrite() = 0;
|
|
virtual int GetWrittenTime() = 0;
|
|
virtual int IsPlaying() = 0;
|
|
virtual int Open(int samplerate, int numchannels, int bitspersamp, int bufferlenms, int prebufferms) = 0;
|
|
virtual void Close() = 0;
|
|
virtual int Write(char *buf, int len) = 0;
|
|
virtual void Flush(int t) = 0;
|
|
virtual void SetVolume(int _volume) = 0;
|
|
virtual int Pause(int new_state) = 0;
|
|
virtual int GetOutputTime() = 0;
|
|
virtual void SetPan(int _pan) = 0;
|
|
virtual void About(HWND p) = 0;
|
|
virtual void Config(HWND w) = 0;
|
|
|
|
HINSTANCE dllInstance;
|
|
HWND winampWnd;
|
|
};
|
|
|
|
#endif
|