//////////////////////////////////////////////////////////////////////////// // Model MODEL2.CPP SIMLIB/C++ // // Ukázkový model jednoduchého obslužného střediska // #include "simlib.h" // deklarace globálních objektů Facility Box("Linka"); Histogram Tabulka("Tabulka",0,25,20); class Zakaznik : public Process { // třída zákazníků double Prichod; // atribut každého zákazníka void Behavior() { // --- popis chování zákazníka --- Prichod = Time; // čas příchodu zákazníka Seize(Box); // obsazení zařízení Box Wait(10); // obsluha Release(Box); // uvolnění Tabulka(Time-Prichod); // doba obsluhy a čekání } }; class Generator : public Event { // generátor zákazníků void Behavior() { // --- popis chování generátoru --- (new Zakaznik)->Activate(); // nový zákazník, aktivace v čase Time Activate(Time+Exponential(1e3/150)); // interval mezi příchody } }; int main() { // popis experimentu s modelem Print(" MODEL2 - příklad SIMLIB/C++\n"); SetOutput("model2.out"); Init(0,1000); // inicializace experimentu, čas bude 0..1000 (new Generator)->Activate(); // generátor zákazníků, jeho aktivace Run(); // simulace Box.Output(); // tisk výsledků Tabulka.Output(); return 0; } // konec