/* main.h
 */


class Controller;
class Scheduler;
class Statistics;
class Floor;
class Elevator;
class Graphics;
class OpenGL;

#define MAX_FLOORS  50          // max number of floors
#define MAX_ELEVS   30          // max number of elevators

extern Controller *controller;
extern Scheduler  scheduler;
extern Statistics statistics;
extern Graphics   graphics;
extern OpenGL     gl;

extern Floor floors[];
extern Elevator elevators[];

extern int num_floors;
extern int num_elevators;
extern int elev_capacity;
extern float elev_delay;
extern float mean_arrival_time;

extern int draw_graphics;
extern int redraw_upon_event;
extern int redraw_regularly;
extern float report_interval;
extern int text_output;

extern float current_time;

extern float mean_wait_time;
