scummvm/queen/queen.h

87 lines
2.0 KiB
C
Raw Normal View History

2003-09-28 15:50:47 +00:00
/* ScummVM - Scumm Interpreter
* Copyright (C) 2003 The ScummVM project
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* $Header$
*
*/
#ifndef QUEEN_H
#define QUEEN_H
#include "base/engine.h"
class GameDetector;
2003-10-03 19:47:41 +00:00
namespace Queen {
class BamScene;
2003-12-11 22:16:35 +00:00
class Command;
class Display;
class Graphics;
class Input;
class Logic;
class Music;
2003-12-11 22:16:35 +00:00
class Resource;
class Sound;
2003-12-11 22:16:35 +00:00
class Walk;
2003-09-28 15:50:47 +00:00
class QueenEngine : public Engine {
public:
2003-12-03 10:33:01 +00:00
2003-09-28 15:50:47 +00:00
QueenEngine(GameDetector *detector, OSystem *syst);
virtual ~QueenEngine();
BamScene *bam() const { return _bam; }
2003-12-11 22:16:35 +00:00
Command *command() const { return _command; }
Display *display() const { return _display; }
Graphics *graphics() const { return _graphics; }
Input *input() const { return _input; }
Logic *logic() const { return _logic; }
Music *music() const { return _music; }
2003-12-11 22:16:35 +00:00
Resource *resource() const { return _resource; }
Sound *sound() const { return _sound; }
Walk *walk() const { return _walk; }
Common::RandomSource randomizer;
2003-09-28 15:50:47 +00:00
protected:
2003-12-03 10:33:01 +00:00
void errorString(const char *buf_input, char *buf_output);
2003-09-28 15:50:47 +00:00
2003-12-03 10:33:01 +00:00
void go();
2003-09-28 15:50:47 +00:00
void initialise();
static void timerHandler(void *ptr);
void gotTimerTick();
2003-12-03 10:33:01 +00:00
BamScene *_bam;
2003-12-11 22:16:35 +00:00
Command *_command;
Display *_display;
2003-12-03 10:33:01 +00:00
Graphics *_graphics;
Input *_input;
Logic *_logic;
Music *_music;
2003-12-11 22:16:35 +00:00
Resource *_resource;
2003-12-03 10:33:01 +00:00
Sound *_sound;
2003-12-11 22:16:35 +00:00
Walk *_walk;
2003-09-28 15:50:47 +00:00
};
2003-10-03 19:47:41 +00:00
} // End of namespace Queen
2003-09-28 15:50:47 +00:00
#endif