00001 #ifndef VEHICLE_INCLUDED 00002 #define VEHICLE_INCLUDED 00003 00004 #include <odem.h> 00005 00006 #include "Observer.h" 00007 #include "Location.h" 00008 #include "Automation.h" 00009 #include "BufferStore.h" 00010 #include "PaletteFrame.h" 00011 #include "CraneRequestq.h" 00012 00013 class Vehicle : public Discrete { 00014 public: 00015 PaletteFrame *pF; 00016 Observer *observe; 00017 //CraneRequestq *craneRequestQ; // Registrierung von Krananforderungen 00018 Automation *automat; 00019 Vehicle *pair; 00020 long vno; // Visualisierung 00021 00022 virtual int main() = 0; 00023 Vehicle(char *n, long visNo, Observer *o); 00024 00025 // für Automation* 00026 void goToReturnBuffer(Direction d); 00027 void goToBuffer(Direction d); 00028 00029 enum Position {leftLOAD, rightLOAD, leftBUFF, rightBUFF, unLOAD, noPOS}; 00030 Position myPos; 00031 Position targetPos; 00032 00033 // für VihicleTo-/FromFurn 00034 virtual long getVisPos(Position p) = 0; 00035 void moveTo(Position p); 00036 }; 00037 00038 #endif 00039