So... Alot of changes...
[potpourri.git] / src / Engine.h
blobe41c343edcb2a48508800a75aaa62b3a41157cb2
1 // Copyright 2008 Brian Caine
3 // This file is part of Potpourri.
5 // Potpourri is free software: you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation, either version 3 of the License, or
8 // (at your option) any later version.
10 // Potpourri is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTIBILITY of FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
15 // You should have received a copy of the GNU General Public License
16 // along with Potpourri. If not, see <http://www.gnu.org/licenses/>.
19 // NOTES:
21 // This is the Engine class
23 // The constructor is private; use the getEngine() function. It will
24 // return a pointer if everything was succesfully initialized and 0 if not.
26 // The Engine class is a singleton, multiple calls to getEngine() return
27 // the existing class
29 // The run() function begins rendering
31 #ifndef __ENGINE_H
32 #define __ENGINE_H
34 #include <iostream>
35 #include <map>
36 #include <string>
38 namespace fragrant
40 const int FRAME_RATE = 50; // fps
42 class Engine
44 public:
45 static Engine* getEngine(std::map<std::string, std::string> arguments);
46 int run();
48 bool isRunning();
50 private:
51 static Engine* the_pointer;
52 static bool was_made;
56 #endif