forked from usineur/bermuda
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmixer.h
More file actions
35 lines (25 loc) · 713 Bytes
/
mixer.h
File metadata and controls
35 lines (25 loc) · 713 Bytes
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
33
34
35
/*
* Bermuda Syndrome engine rewrite
* Copyright (C) 2007-2011 Gregory Montoir
*/
#ifndef MIXER_H__
#define MIXER_H__
#include "intern.h"
struct File;
struct SystemStub;
struct Mixer {
static const int kDefaultSoundId = -1;
Mixer() {}
virtual ~Mixer() {}
virtual void open() = 0;
virtual void close() = 0;
virtual void playSound(File *f, int *id) = 0;
virtual void playMusic(File *f, int *id) = 0;
virtual bool isSoundPlaying(int id) = 0;
virtual void stopSound(int id) = 0;
virtual void stopAll() = 0;
virtual void setMusicMix(void *param, void (*mix)(void *, uint8_t *, int)) = 0;
};
Mixer *Mixer_SDL_create(SystemStub *);
Mixer *Mixer_Software_create(SystemStub *);
#endif // MIXER_H__