Etterna
0.74.4
Loading...
Searching...
No Matches
src
arch
Sound
RageSoundDriver_WDMKS.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
8
struct
WinWdmStream
;
9
struct
WinWdmFilter
;
10
11
class
RageSoundDriver_WDMKS
:
public
RageSoundDriver
12
{
13
public
:
14
RageSoundDriver_WDMKS
();
15
~RageSoundDriver_WDMKS
();
16
std::string Init();
17
18
int64_t GetPosition()
const
;
19
float
GetPlayLatency()
const
;
20
int
GetSampleRate()
const
;
21
22
private
:
23
static
int
MixerThread_start(
void
* p);
24
void
MixerThread();
25
bool
Fill(
int
iPacket, std::string& sError);
26
void
Read(
void
* pData,
int
iFrames,
int
iLastCursorPos,
int
iCurrentFrame);
27
28
RageThread
MixingThread;
29
void
SetupDecodingThread();
30
31
bool
m_bShutdown;
32
int
m_iLastCursorPos;
33
34
HANDLE m_hSignal;
35
WinWdmStream
* m_pStream;
36
WinWdmFilter
* m_pFilter;
37
};
38
39
#endif
RageSoundDriver_WDMKS
Definition
RageSoundDriver_WDMKS.h:12
RageSoundDriver
Definition
RageSoundDriver.h:15
RageThread
Thread, mutex, semaphore, and event classes.
Definition
RageThreads.h:155
WinWdmFilter
Definition
RageSoundDriver_WDMKS.cpp:97
WinWdmStream
Definition
RageSoundDriver_WDMKS.cpp:1077
Generated by
1.9.8