Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

Loader.h

Go to the documentation of this file.
00001 #ifndef LOADER_INCLUDED
00002 #define LOADER_INCLUDED
00003 
00004 
00005 #include <set>
00006 
00007 #include "odem.h"
00008 
00009 #include "Observer.h"
00010 #include "Automation.h"
00011 #include "ReturnBufferStore.h"
00012 #include "SimringReport.h"
00013 
00014 class Loader : public Discrete {                // Beladung wartender Wagen mit "erzeugten" Paletten
00015                                                                                 // bei ungerader Anzahl von Paletten eines Auftrages
00016                                                                                 // wird Wagen mit "leerer" Palette beladen
00017         static std::set<int> ignoreSet;
00018         static bool ignore(int palNr);          // palNr wird ignoriert!
00019         void bufferReport(SetOfRingStack *p);
00020 public:
00021         Buff_head               *inp;                           // Sequenz wartender Palettenbelegungen
00022         static bool             stopped;                        // Unterbrechungslabel
00023         double                  restTime;                       // die sich bei einer Unterbrechnung (z.B. Wochende)
00024                                                                                 // ergebene Restzeit zur Komplettierung der bereits
00025                                                                                 // erfolgten Beladung eines Wagens
00026         static Condq    *interruptionQ;         // Wartet evtl. auf Schichtbeginn
00027 
00028         Observer                *observe;
00029         Automation              *automat;
00030         Count                   *gapCounter;            // Zählungen eingefügter Produktionslücken
00031         Count                   *ignoredRings;          // Zählungen der Ringe ausgesonderter Paletten
00032         Sum                             *ignoredWBHtime;        // Summe der Wärmebehandlungszeit ausgesonderter Paletten
00033 
00034 
00035         SimringReport   *report;
00036 
00037         
00038         //void returnRestTime(double t) {restTime= t;}
00039                                                                                 // bei Unterbrechung zur Rückgabe der Restzeit 
00040                                                 
00041         // Untebrechungsbehandlung
00042         void interrupt (int cause);
00043         void goAhead (int cause);
00044         static bool notStopped();
00045                                                                                 
00046         virtual int main();     
00047         Loader(char *n, Buff_head *i, Observer *o, SimringReport* rep);
00048 
00049         void loadPosFree();
00050         void waitForLoadPos();
00051 
00052         bool waitLoad;
00053 };
00054 
00055 #endif
00056 

Generated on Tue Apr 26 14:42:42 2005 for rollingmill by doxygen 1.3.6