Etterna
0.74.4
Loading...
Searching...
No Matches
src
arch
Sound
RageSoundDriver_WaveOut.h
1
#ifndef RAGE_SOUND_WAVEOUT_H
2
#define RAGE_SOUND_WAVEOUT_H
3
4
#include "RageSoundDriver.h"
5
#include "RageUtil/Misc/RageThreads.h"
6
#include <windows.h>
7
#include <mmsystem.h>
8
9
class
RageSoundDriver_WaveOut
:
public
RageSoundDriver
10
{
11
public
:
12
RageSoundDriver_WaveOut
();
13
~RageSoundDriver_WaveOut
();
14
std::string Init();
15
16
int64_t GetPosition()
const
;
17
float
GetPlayLatency()
const
;
18
int
GetSampleRate()
const
{
return
m_iSampleRate; }
19
20
private
:
21
static
int
MixerThread_start(
void
* p);
22
void
MixerThread();
23
RageThread
MixingThread;
24
bool
GetData();
25
void
SetupDecodingThread();
26
27
HWAVEOUT m_hWaveOut;
28
HANDLE m_hSoundEvent;
29
WAVEHDR m_aBuffers[8];
30
int
m_iSampleRate;
31
bool
m_bShutdown;
32
int
m_iLastCursorPos;
33
};
34
35
#endif
RageSoundDriver_WaveOut
Definition
RageSoundDriver_WaveOut.h:10
RageSoundDriver
Definition
RageSoundDriver.h:15
RageThread
Thread, mutex, semaphore, and event classes.
Definition
RageThreads.h:155
Generated by
1.9.8