00001 #ifndef __J2K__Train__Controller_HPP__ 00002 #define __J2K__Train__Controller_HPP__ 00003 00004 #include "resource.h" 00005 00006 #include <j2k/Fred/Basic.hpp> 00007 #include <j2k/Fred/Boolean.hpp> 00008 #include <j2k/Fred/StdTypes.hpp> 00009 00010 class Controller : public Thread{ 00011 public: 00012 Controller(); 00013 virtual ~Controller(); 00014 00015 int numberOfActiveTrains(); 00016 void addTrain(int id); 00017 void findSuitation(); 00018 void init(); 00019 00020 private: 00021 BOOL byPassTrain(); 00022 BOOL parkTrain(); 00023 void AllocateSector(); 00024 00025 private: 00026 Train* trains[NUMBER_OF_TRAINS]; 00027 Track* track; 00028 00029 int numOfActiveTrains; 00030 SUITATION suitation; 00031 }; 00032 00033 #endif