REminiscence/mod_player.h

38 lines
665 B
C
Raw Permalink Normal View History

2016-03-20 17:00:00 +01:00
/*
* REminiscence - Flashback interpreter
2019-10-27 17:00:00 +01:00
* Copyright (C) 2005-2019 Gregory Montoir (cyx@users.sourceforge.net)
2015-08-02 18:00:00 +02:00
*/
#ifndef MOD_PLAYER_H__
#define MOD_PLAYER_H__
#include "intern.h"
struct FileSystem;
struct Mixer;
2016-03-20 17:00:00 +01:00
struct ModPlayer_impl;
2015-08-02 18:00:00 +02:00
struct ModPlayer {
static const uint16_t _periodTable[];
2023-04-15 02:44:11 +02:00
static const char *_names[];
static const int _namesCount;
2015-08-02 18:00:00 +02:00
2016-03-20 17:00:00 +01:00
bool _isAmiga;
2015-08-02 18:00:00 +02:00
bool _playing;
Mixer *_mix;
2016-03-20 17:00:00 +01:00
FileSystem *_fs;
ModPlayer_impl *_impl;
2015-08-02 18:00:00 +02:00
2016-03-20 17:00:00 +01:00
ModPlayer(Mixer *mixer, FileSystem *fs);
~ModPlayer();
2015-08-02 18:00:00 +02:00
2023-04-15 02:44:11 +02:00
void play(int num, int tempo);
2015-08-02 18:00:00 +02:00
void stop();
2016-05-09 18:00:00 +02:00
static bool mixCallback(void *param, int16_t *buf, int len);
2015-08-02 18:00:00 +02:00
};
#endif // MOD_PLAYER_H__