PageRenderTime 11ms CodeModel.GetById 1ms app.highlight 8ms RepoModel.GetById 1ms app.codeStats 0ms

/core.h

http://abicalc.googlecode.com/
C++ Header | 70 lines | 55 code | 13 blank | 2 comment | 0 complexity | 6494f6ffb5b40768df3b6df94b801f30 MD5 | raw file
 1//---------------------------------------------------------------------------
 2
 3#ifndef coreH
 4#define coreH
 5#include "kurs.h"
 6#include "pruefungen.h"
 7#include <string.h>
 8//---------------------------------------------------------------------------
 9struct abg{
10	bool a121;
11	bool a122;
12	bool a131;
13	bool a132;
14};
15class Core
16{
17private:
18		Kurs* kurse[20]; //max 20 Kurse oder so + * Buffer falls ich mich verzählt hab
19		Kurs* lk[2];
20		int cLK;
21		int cKurse; //Kurszähler - Index für kurse-array
22		int kurse_abg;
23		int unterkurse;
24		Pruefungen* pruefungen;
25		void orderKurse();
26
27public:
28		Core();
29		~Core();
30        String savePath; //Public weil zu faul eine Kapselung per methode vor zu nehmen
31		bool isChanged;
32
33		bool addKurs(Kurs*); 
34		Kurs* getKursByName(String); 
35		void clearKurse();
36		Kurs* getLKByPosition(int); //Leistungskurs durch Index holen
37		Kurs* getFS();
38		int anzahlKurs(); //Anzahl der gesamtkurse (LK+GK)
39		Kurs *iterateKurse(int); //Alle Kurse durch index holen (für For-Schleifen)
40		double getAverageByYear(int); //Durchschnitt für 1 Kursjahr
41		int getUnterkurse(); //Anzahl der Unterkurse
42        int countNaturwissenschaften(); //Anzahl der Naturwissenschaften
43
44		void setAbgHalbjahre(int); //Anzahl der abgeschlossenen Halbjahre setzen /*deprecated*/
45		int getAbgHalbjahre(); //Anzahl der abg holen /*deprecated*/
46
47		int getBlockPunkte(int); //Block Punkte (1&2) holen
48		int getPositionOfKursByName(String); //Index eines Kurses anhand des Namens
49		Kurs *getKursByPosition(int); //GK anhand des Index holen
50
51		void setKursInPosition(Kurs*,int); //Kurs in bestimmte Position setzen
52		void setLKInPosition(Kurs*,int); //LK an Position setzen
53
54		void deleteKursOnPosition(int); //LK an Position löschen
55
56
57		void print(String); //Drucken, String: Name
58
59		void setPruefungen(Pruefungen *);
60		void clearPruefungen();
61		Pruefungen* getPruefungen();
62		void saveToFile(String path);
63		void loadFromFile(String path);
64private:
65    	void parseFile(String); /*deprecated*/
66};
67
68
69
70#endif