1 
2 /*
3  * REminiscence - Flashback interpreter
4  * Copyright (C) 2005-2019 Gregory Montoir (cyx@users.sourceforge.net)
5  */
6 
7 #ifndef MOD_PLAYER_H__
8 #define MOD_PLAYER_H__
9 
10 #include "intern.h"
11 
12 struct FileSystem;
13 struct Mixer;
14 struct ModPlayer_impl;
15 
16 struct ModPlayer {
17 
18 	static const uint16_t _periodTable[];
19 	static const char *_modulesFiles[][2];
20 	static const int _modulesFilesCount;
21 
22 	bool _isAmiga;
23 	bool _playing;
24 	Mixer *_mix;
25         FileSystem *_fs;
26 	ModPlayer_impl *_impl;
27 
28         ModPlayer(Mixer *mixer, FileSystem *fs);
29 	~ModPlayer();
30 
31 	void play(int num);
32 	void stop();
33 
34 	static bool mixCallback(void *param, int16_t *buf, int len);
35 };
36 
37 #endif // MOD_PLAYER_H__
38