File: linux_oss.h

package info (click to toggle)
amoeba 1.1-31
  • links: PTS
  • area: contrib
  • in suites: bookworm, forky, sid, trixie
  • size: 1,492 kB
  • sloc: cpp: 8,384; makefile: 140
file content (32 lines) | stat: -rw-r--r-- 546 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef _LINUX_OSS_H
#define _LINUX_OSS_H 1

#include "audio/audio.h"
#include "main/mainloop.h"

#include <time.h>
#include <sys/time.h>

class OSSAudioDriver : public AudioDriver {
public:
	OSSAudioDriver(AudioProvider *prv, float jump, MainLoop *ml);
	~OSSAudioDriver();

 	bool run();
	float get_time();

protected:
	int oss_fd;
	struct timeval eof_time;

	char outbuf[65536];
	int in_outbuf;

	unsigned int last_fill, bytes_played;
	bool eof;

private:
	inline void set_ioctl(int command, int value);
};

#endif /* !defined(_LINUX_OSS_H) */