// Modellname: mont30      SS 2000

// Die Makrodefinition '_impexp' dient zur Exportierung
// der Funktionen, Klassen und Variablen innerhalb der Library, 
// wird aber eigentlich nur fuer Windows benoetigt :-(

#ifdef WIN32
  #undef _impexp
  #define _impexp __declspec(dllexport)
#else
  #undef _impexp
  #define _impexp
#endif

#include <stdio.h>
#include "sfxprg.h"     // enthaelt die Funktionen der C-Schnittstelle

void _impexp init_prog () {
  bestelleArbeitsplan (110, 7);
  bestelleArbeitsplan (120, 7);
  bestelleArbeitsplan (130, 7);
  bestelleArbeitsplan (140, 7);
}

void _impexp prog_100 () {                  // Baustein-Programm mit Programmnummer 100 
  aufnehmen ();
  bestelleArtikel (ArtikelNr (This)+100, 9);
  syncBst (6);
  decTEMenge (6, 2);
  arbeiten ();
  aktivieren (6);
  abgeben ();
}

void _impexp prog_200 () {                 // Baustein-Programm mit Programmnummer 200 
  aufnehmen ();
  arbeiten ();
  syncBst (3);
  warten ();
  if (MengeArtikelBelegung (This, ArtikelNr (This)) < 2.0){
    bestelleArtikel (ArtikelNr (This), 7);
    abgeben ();
  }
  else 
    abgeben (2);
}

void _impexp prog_300 () {                  // Baustein-Programm mit Programmnummer 300 
  aufnehmen ();
  if (! Belegung (13)){
    bestelleArtikel(140, 9);
    syncBst (13);
  }
  decTEMenge (13, 2);
  arbeiten ();
  aktivieren (13);
  abgeben ();
}

void _impexp prog_400 () {                 // Baustein-Programm mit Programmnummer 400 
  aufnehmen ();
  arbeiten ();
  syncBst (11);
  warten ();
  while (MengeArtikelBelegung (This, ArtikelNr (This)) >= 2.0)
    warten ();
  bestelleArtikel (140, 7);
  abgeben ();
}

void _impexp exit_prog () {
}