00001
00006 #ifndef __LISTE_
00007 #define __LISTE_
00008
00009 #include <iostream>
00010 using namespace std;
00011
00012 #include "ListenDaten.h"
00013 #include "Fehler.h"
00014
00019 class ListenObjekt
00020 {
00021 public:
00022 ListenObjekt();
00023 ListenObjekt(ListenDaten *listenDaten);
00024
00025 ListenObjekt *gibNext();
00026 ListenObjekt *gibBefore();
00027 ListenDaten *gibDaten();
00028
00029 void setzeNext(ListenObjekt *next);
00030 void setzeBefore(ListenObjekt *before);
00031 void setzeDaten(ListenDaten *listenDaten);
00032
00033 void takt(double zeitintervall);
00034 void exportieren( string dateiname );
00035
00036 friend ostream &operator<< ( ostream &os, ListenObjekt *listenObjekt );
00037
00038 private:
00039 ListenDaten *listenDaten_;
00040 ListenObjekt *next_;
00041 ListenObjekt *before_;
00042 };
00043
00044
00052 class Liste
00053 {
00054 public:
00055 Liste( );
00056
00057 void datenHinzufuegen(ListenDaten *listenDaten);
00058 void datenEntfernen(long int id);
00059 ListenDaten *gibDaten();
00060 void geheZuErsten();
00061 void geheZuNaechsten();
00062 bool istEnde();
00063
00064 void takt(double zeitintervall);
00065 void exportieren( string dateiname );
00066
00067 friend ostream &operator<< ( ostream &os, Liste *liste );
00068
00069 private:
00070 ListenObjekt *listenAnfang_;
00071 ListenObjekt *aktuellesObjekt_;
00072 long int aktuelleMaxId_;
00073 };
00074
00075
00076 #endif