From 33613a85afc4b1481367fbe92a17ee59c240250b Mon Sep 17 00:00:00 2001 From: Sven Eisenhauer Date: Fri, 10 Nov 2023 15:11:48 +0100 Subject: add new repo --- Bachelor/Softwaretechnik2/mixer/.cdtbuild | 25 +++ Bachelor/Softwaretechnik2/mixer/.cdtproject | 18 ++ Bachelor/Softwaretechnik2/mixer/.project | 19 ++ Bachelor/Softwaretechnik2/mixer/CDisplay.cpp | 59 +++++ Bachelor/Softwaretechnik2/mixer/CDisplay.hpp | 78 +++++++ Bachelor/Softwaretechnik2/mixer/CDosierer.cpp | 97 +++++++++ Bachelor/Softwaretechnik2/mixer/CDosierer.hpp | 81 +++++++ Bachelor/Softwaretechnik2/mixer/CEntleerer.cpp | 89 ++++++++ Bachelor/Softwaretechnik2/mixer/CEntleerer.hpp | 76 +++++++ Bachelor/Softwaretechnik2/mixer/CGeraet.cpp | 54 +++++ Bachelor/Softwaretechnik2/mixer/CGeraet.hpp | 75 +++++++ Bachelor/Softwaretechnik2/mixer/CMischer.cpp | 51 +++++ Bachelor/Softwaretechnik2/mixer/CMischer.hpp | 63 ++++++ Bachelor/Softwaretechnik2/mixer/CObserver.cpp | 29 +++ Bachelor/Softwaretechnik2/mixer/CObserver.hpp | 57 +++++ Bachelor/Softwaretechnik2/mixer/CRezept.cpp | 53 +++++ Bachelor/Softwaretechnik2/mixer/CRezept.hpp | 73 +++++++ .../Softwaretechnik2/mixer/CRezeptProcessor.cpp | 117 ++++++++++ .../Softwaretechnik2/mixer/CRezeptProcessor.hpp | 59 +++++ Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.cpp | 40 ++++ Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.hpp | 72 ++++++ Bachelor/Softwaretechnik2/mixer/CStampfer.cpp | 42 ++++ Bachelor/Softwaretechnik2/mixer/CStampfer.hpp | 61 ++++++ Bachelor/Softwaretechnik2/mixer/CSubjekt.cpp | 57 +++++ Bachelor/Softwaretechnik2/mixer/CSubjekt.hpp | 73 +++++++ Bachelor/Softwaretechnik2/mixer/CVentilGeraet.cpp | 70 ++++++ Bachelor/Softwaretechnik2/mixer/CVentilGeraet.hpp | 82 +++++++ Bachelor/Softwaretechnik2/mixer/CWaage.cpp | 129 +++++++++++ Bachelor/Softwaretechnik2/mixer/CWaage.hpp | 110 ++++++++++ Bachelor/Softwaretechnik2/mixer/Debug/makefile | 30 +++ Bachelor/Softwaretechnik2/mixer/Debug/objects.mk | 13 ++ Bachelor/Softwaretechnik2/mixer/Debug/sources.mk | 16 ++ Bachelor/Softwaretechnik2/mixer/Debug/subdir.mk | 57 +++++ Bachelor/Softwaretechnik2/mixer/Test.h | 16 ++ Bachelor/Softwaretechnik2/mixer/TestCDosierer.h | 78 +++++++ Bachelor/Softwaretechnik2/mixer/TestCWaage.h | 70 ++++++ Bachelor/Softwaretechnik2/mixer/TestCase.cpp | 206 ++++++++++++++++++ Bachelor/Softwaretechnik2/mixer/TestCase.h | 241 +++++++++++++++++++++ Bachelor/Softwaretechnik2/mixer/TestSuite.cpp | 44 ++++ Bachelor/Softwaretechnik2/mixer/TestSuite.h | 41 ++++ Bachelor/Softwaretechnik2/mixer/main.cpp | 52 +++++ Bachelor/Softwaretechnik2/mixer/makefile | 17 ++ Bachelor/Softwaretechnik2/mixer/mixer.dsp | 204 +++++++++++++++++ Bachelor/Softwaretechnik2/mixer/mixer.dsw | 33 +++ Bachelor/Softwaretechnik2/mixer/mixer.ncb | Bin 0 -> 123904 bytes Bachelor/Softwaretechnik2/mixer/mixer.opt | Bin 0 -> 53760 bytes Bachelor/Softwaretechnik2/mixer/mixer.plg | 16 ++ .../mixer/mixer___Win32_Debug/CDisplay.obj | Bin 0 -> 152699 bytes .../mixer/mixer___Win32_Debug/CDisplay.sbr | 0 .../mixer/mixer___Win32_Debug/CDosierer.obj | Bin 0 -> 164302 bytes .../mixer/mixer___Win32_Debug/CDosierer.sbr | 0 .../mixer/mixer___Win32_Debug/CEntleerer.obj | Bin 0 -> 164141 bytes .../mixer/mixer___Win32_Debug/CEntleerer.sbr | 0 .../mixer/mixer___Win32_Debug/CGeraet.obj | Bin 0 -> 42169 bytes .../mixer/mixer___Win32_Debug/CGeraet.sbr | 0 .../mixer/mixer___Win32_Debug/CMischer.obj | Bin 0 -> 155997 bytes .../mixer/mixer___Win32_Debug/CMischer.sbr | 0 .../mixer/mixer___Win32_Debug/CObserver.obj | Bin 0 -> 1433 bytes .../mixer/mixer___Win32_Debug/CObserver.sbr | 0 .../mixer/mixer___Win32_Debug/CRezept.obj | Bin 0 -> 38661 bytes .../mixer/mixer___Win32_Debug/CRezept.sbr | 0 .../mixer/mixer___Win32_Debug/CRezeptProcessor.obj | Bin 0 -> 40449 bytes .../mixer/mixer___Win32_Debug/CRezeptProcessor.sbr | 0 .../mixer/mixer___Win32_Debug/CRezeptSchritt.obj | Bin 0 -> 41675 bytes .../mixer/mixer___Win32_Debug/CRezeptSchritt.sbr | 0 .../mixer/mixer___Win32_Debug/CStampfer.obj | Bin 0 -> 156029 bytes .../mixer/mixer___Win32_Debug/CStampfer.sbr | 0 .../mixer/mixer___Win32_Debug/CSubjekt.obj | Bin 0 -> 29352 bytes .../mixer/mixer___Win32_Debug/CSubjekt.sbr | 0 .../mixer/mixer___Win32_Debug/CVentilGeraet.obj | Bin 0 -> 75067 bytes .../mixer/mixer___Win32_Debug/CVentilGeraet.sbr | 0 .../mixer/mixer___Win32_Debug/CWaage.obj | Bin 0 -> 22009 bytes .../mixer/mixer___Win32_Debug/CWaage.sbr | 0 .../mixer/mixer___Win32_Debug/main.obj | Bin 0 -> 40084 bytes .../mixer/mixer___Win32_Debug/main.sbr | 0 .../mixer/mixer___Win32_Debug/mixer.bsc | Bin 0 -> 599040 bytes .../mixer/mixer___Win32_Debug/mixer.exe | Bin 0 -> 622672 bytes .../mixer/mixer___Win32_Debug/mixer.ilk | Bin 0 -> 975096 bytes .../mixer/mixer___Win32_Debug/mixer.pch | Bin 0 -> 2151564 bytes .../mixer/mixer___Win32_Debug/mixer.pdb | Bin 0 -> 1467392 bytes .../mixer/mixer___Win32_Debug/vc60.idb | Bin 0 -> 164864 bytes .../mixer/mixer___Win32_Debug/vc60.pdb | Bin 0 -> 159744 bytes 82 files changed, 3043 insertions(+) create mode 100644 Bachelor/Softwaretechnik2/mixer/.cdtbuild create mode 100644 Bachelor/Softwaretechnik2/mixer/.cdtproject create mode 100644 Bachelor/Softwaretechnik2/mixer/.project create mode 100644 Bachelor/Softwaretechnik2/mixer/CDisplay.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CDisplay.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CDosierer.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CDosierer.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CEntleerer.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CEntleerer.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CGeraet.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CGeraet.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CMischer.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CMischer.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CObserver.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CObserver.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CRezept.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CRezept.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CStampfer.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CStampfer.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CSubjekt.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CSubjekt.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CVentilGeraet.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CVentilGeraet.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CWaage.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/CWaage.hpp create mode 100644 Bachelor/Softwaretechnik2/mixer/Debug/makefile create mode 100644 Bachelor/Softwaretechnik2/mixer/Debug/objects.mk create mode 100644 Bachelor/Softwaretechnik2/mixer/Debug/sources.mk create mode 100644 Bachelor/Softwaretechnik2/mixer/Debug/subdir.mk create mode 100644 Bachelor/Softwaretechnik2/mixer/Test.h create mode 100644 Bachelor/Softwaretechnik2/mixer/TestCDosierer.h create mode 100644 Bachelor/Softwaretechnik2/mixer/TestCWaage.h create mode 100644 Bachelor/Softwaretechnik2/mixer/TestCase.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/TestCase.h create mode 100644 Bachelor/Softwaretechnik2/mixer/TestSuite.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/TestSuite.h create mode 100644 Bachelor/Softwaretechnik2/mixer/main.cpp create mode 100644 Bachelor/Softwaretechnik2/mixer/makefile create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer.dsp create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer.dsw create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer.ncb create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer.opt create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer.plg create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.obj create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.sbr create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.bsc create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.exe create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.ilk create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pch create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pdb create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.idb create mode 100644 Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.pdb (limited to 'Bachelor/Softwaretechnik2/mixer') diff --git a/Bachelor/Softwaretechnik2/mixer/.cdtbuild b/Bachelor/Softwaretechnik2/mixer/.cdtbuild new file mode 100644 index 0000000..4c8c0a0 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/.cdtbuild @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Bachelor/Softwaretechnik2/mixer/.cdtproject b/Bachelor/Softwaretechnik2/mixer/.cdtproject new file mode 100644 index 0000000..bd768a8 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/.cdtproject @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/Bachelor/Softwaretechnik2/mixer/.project b/Bachelor/Softwaretechnik2/mixer/.project new file mode 100644 index 0000000..03e53ba --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/.project @@ -0,0 +1,19 @@ + + + mixer + + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.core.ccnature + + diff --git a/Bachelor/Softwaretechnik2/mixer/CDisplay.cpp b/Bachelor/Softwaretechnik2/mixer/CDisplay.cpp new file mode 100644 index 0000000..f085c89 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CDisplay.cpp @@ -0,0 +1,59 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:20 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CDisplay.cpp + * + */ + + +// ino.module.CDisplay.1092.includes +#include "CDisplay.hpp" +// ino.end +#include + +#include +using std::cout; +using std::endl; + +// ino.method.starte.866.definition +int systemModel::AnalyseModell::CDisplay::starte() +// ino.end +// ino.method.starte.866.body +{ + return 0; +} +// ino.end + +// ino.method.zeigeGewichtAn.732.definition +void systemModel::AnalyseModell::CDisplay::zeigeGewichtAn() +// ino.end +// ino.method.zeigeGewichtAn.732.body +{ +} +// ino.end + +// ino.method.aktualisiere.497.definition +int systemModel::AnalyseModell::CDisplay::aktualisiere() +// ino.end +// ino.method.aktualisiere.497.body +{ + //Sleep(500); + cout << "DISPLAY: Gesamtgewicht " <getGesamtGewicht() << endl; + cout << "DISPLAY: Differenzgewicht " <getDifferenzGewicht() << endl; + return 0; +} +// ino.end + +systemModel::AnalyseModell::CDisplay::CDisplay() { +} + +systemModel::AnalyseModell::CDisplay::CDisplay(CWaage *pw) { + pWaage=pw; +} diff --git a/Bachelor/Softwaretechnik2/mixer/CDisplay.hpp b/Bachelor/Softwaretechnik2/mixer/CDisplay.hpp new file mode 100644 index 0000000..7e9c112 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CDisplay.hpp @@ -0,0 +1,78 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:17 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CDisplay.hpp + * + */ + + +// ino.module.CDisplay.1082.ifndef +#ifndef _CDISPLAY_HPP_1082 +#define _CDISPLAY_HPP_1082 +// ino.end + +#include "CObserver.hpp" +#include "CWaage.hpp" +#include +using std::string; + +namespace systemModel { + namespace AnalyseModell { + +// ino.class.CDisplay.489.declaration +class CDisplay: public CObserver +// ino.end +// ino.class.CDisplay.489.body +{ + // ino.attribute.mBeobachtetesGewicht.499.declaration + private: + int mBeobachtetesGewicht; + // ino.end + + // ino.method.starte.866.declaration + public: + //virtual int starte(CSubjekt *); + virtual int starte(); + // ino.end + + // ino.method.zeigeGewichtAn.732.declaration + public: + virtual void zeigeGewichtAn(); + // ino.end + + // ino.method.aktualisiere.497.declaration + public: + virtual int aktualisiere(); + // ino.end + private: + CWaage* pWaage; + public: + CDisplay(); + CDisplay(CWaage *); + +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CDisplay.1082.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CDosierer.cpp b/Bachelor/Softwaretechnik2/mixer/CDosierer.cpp new file mode 100644 index 0000000..5d8ea62 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CDosierer.cpp @@ -0,0 +1,97 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:59:41 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CDosierer.cpp + * + */ + + +// ino.module.CDosierer.1094.includes +#include "CDosierer.hpp" +// ino.end +#include +using std::string; +using std::cout; +using std::endl; + + +// ino.method.pruefeGewicht.1149.definition +int systemModel::AnalyseModell::CDosierer::pruefeGewicht() +// ino.end +// ino.method.pruefeGewicht.1149.body +{ + + + int g = pWaage->getDifferenzGewicht(); + if (g>=getWert()) + { + pWaage->gewichtErreicht(); + return 0; + } + else + + { + return 1; + } + + + +} +// ino.end +/* +// ino.method.oeffneVentil.1152.definition +int systemModel::AnalyseModell::CDosierer::oeffneVentil() +// ino.end +// ino.method.oeffneVentil.1152.body +{ + cout << getname() << "oeffnet Ventil"; + return 0; +} +// ino.end + +// ino.method.schliesseVentil.1155.definition +int systemModel::AnalyseModell::CDosierer::schliesseVentil() +// ino.end +// ino.method.schliesseVentil.1155.body +{ + cout << getname() << "schliesst Ventil"; + return 0; +} +// ino.end +*/ +systemModel::AnalyseModell::CDosierer::CDosierer() { +} + +systemModel::AnalyseModell::CDosierer::CDosierer(string s,CWaage * pw):CVentilGeraet(s) { + pWaage=pw; + setAenderung(4); +} +systemModel::AnalyseModell::CDosierer::CDosierer(string s):CVentilGeraet(s) { +} + +int systemModel::AnalyseModell::CDosierer::aktualisiere() { + pruefeGewicht(); + return 0; +} +int systemModel::AnalyseModell::CDosierer::startCGeraet(int i) { + cout << "Gerät " << getname() << " startet mit Wert "<< i << endl; + setWert(i); + pWaage->meldeAn(this); + pWaage->tariere(); + pWaage->aktiviere(this); + return 0; +} + +int systemModel::AnalyseModell::CDosierer::stopCGeraet() { + schliesseVentil(); + cout << "Gerät " << getname() << " stoppt"<< endl; + pWaage->meldeAb(); + return 0; +} diff --git a/Bachelor/Softwaretechnik2/mixer/CDosierer.hpp b/Bachelor/Softwaretechnik2/mixer/CDosierer.hpp new file mode 100644 index 0000000..10ff005 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CDosierer.hpp @@ -0,0 +1,81 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 15:01:44 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CDosierer.hpp + * + */ + + +// ino.module.CDosierer.1083.ifndef +#ifndef _CDOSIERER_HPP_1083 +#define _CDOSIERER_HPP_1083 +// ino.end + +// ino.module.CDosierer.1083.decIncludes +#include "CVentilGeraet.hpp" +// ino.end + +//#include "CSubjekt.hpp" +#include "CObserver.hpp" +#include "CWaage.hpp" + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CDosierer.748.declaration +class CDosierer: public CVentilGeraet +// ino.end +// ino.class.CDosierer.748.body +{ + private: + CWaage* pWaage; + // ino.method.pruefeGewicht.1149.declaration + public: + virtual int pruefeGewicht(); + // ino.end + + // ino.method.oeffneVentil.1152.declaration + //public: + //virtual int oeffneVentil(); + // ino.end + + // ino.method.schliesseVentil.1155.declaration + //public: + //virtual int schliesseVentil(); + public: + virtual int aktualisiere(); + // ino.end + public: + CDosierer(); + CDosierer(string); + CDosierer(string, CSubjekt *); + CDosierer(string, CWaage *); + virtual int startCGeraet(int); + virtual int stopCGeraet(); +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CDosierer.1083.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CEntleerer.cpp b/Bachelor/Softwaretechnik2/mixer/CEntleerer.cpp new file mode 100644 index 0000000..e1a6d9f --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CEntleerer.cpp @@ -0,0 +1,89 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:59:41 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CEntleerer.cpp + * + */ + + +// ino.module.CEntleerer.1089.includes +#include "CEntleerer.hpp" +// ino.end + +using std::cout; +using std::endl; + +// ino.method.pruefeGewicht.1146.definition +int systemModel::AnalyseModell::CEntleerer::pruefeGewicht() +// ino.end +// ino.method.pruefeGewicht.1146.body +{ + int i = pWaage->getGesamtGewicht(); + if (i > getWert()) + { + } + else + { + pWaage->gewichtErreicht(); + } + return 0; +} +// ino.end +/* +// ino.method.oeffneVentil.1140.definition +int systemModel::AnalyseModell::CEntleerer::oeffneVentil() +// ino.end +// ino.method.oeffneVentil.1140.body +{ + return 0; +} +// ino.end + +// ino.method.schliesseVentil.1143.definition +int systemModel::AnalyseModell::CEntleerer::schliesseVentil() +// ino.end +// ino.method.schliesseVentil.1143.body +{ + return 0; +} +// ino.end +*/ +systemModel::AnalyseModell::CEntleerer::CEntleerer() { +} + +systemModel::AnalyseModell::CEntleerer::CEntleerer(string s):CVentilGeraet(s) { +} + +systemModel::AnalyseModell::CEntleerer::CEntleerer(string s,CWaage* pw):CVentilGeraet(s) { + pWaage=pw; + setAenderung(-20); +} + +int systemModel::AnalyseModell::CEntleerer::aktualisiere() +{ + pruefeGewicht(); + return 0; +} +int systemModel::AnalyseModell::CEntleerer::startCGeraet(int i) +{ + setWert(i); + cout << "Gerät " << getname() << " startet mit Wert "<< i << endl; + pWaage->meldeAn(this); + pWaage->aktiviere(this); + return 0; +} + +int systemModel::AnalyseModell::CEntleerer::stopCGeraet() +{ + schliesseVentil(); + cout << "Gerät " << getname() << " stoppt" <meldeAb(); + return 0; +} diff --git a/Bachelor/Softwaretechnik2/mixer/CEntleerer.hpp b/Bachelor/Softwaretechnik2/mixer/CEntleerer.hpp new file mode 100644 index 0000000..c94e2f9 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CEntleerer.hpp @@ -0,0 +1,76 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 15:01:43 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CEntleerer.hpp + * + */ + + +// ino.module.CEntleerer.1084.ifndef +#ifndef _CENTLEERER_HPP_1084 +#define _CENTLEERER_HPP_1084 +// ino.end + +// ino.module.CEntleerer.1084.decIncludes +#include "CVentilGeraet.hpp" +// ino.end + +#include "CWaage.hpp" + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CEntleerer.750.declaration +class CEntleerer: public CVentilGeraet +// ino.end +// ino.class.CEntleerer.750.body +{ + // ino.method.pruefeGewicht.1146.declaration + public: + virtual int pruefeGewicht(); + // ino.end + private: + CWaage* pWaage; + // ino.method.oeffneVentil.1140.declaration + //public: + //virtual int oeffneVentil(); + // ino.end + + // ino.method.schliesseVentil.1143.declaration + //public: + //virtual int schliesseVentil(); + // ino.end + public: + CEntleerer(); + CEntleerer(string); + CEntleerer(string,CWaage*); + virtual int aktualisiere(); + virtual int startCGeraet(int); + virtual int stopCGeraet(); +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CEntleerer.1084.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CGeraet.cpp b/Bachelor/Softwaretechnik2/mixer/CGeraet.cpp new file mode 100644 index 0000000..1c54d5e --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CGeraet.cpp @@ -0,0 +1,54 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:19 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CGeraet.cpp + * + */ + + +// ino.module.CGeraet.1088.includes +#include "CGeraet.hpp" +// ino.end + +using std::cout; +using std::endl; + +// ino.method.startCGeraet.465.definition +int systemModel::AnalyseModell::CGeraet::startCGeraet(int) +// ino.end +// ino.method.startCGeraet.465.body +{ + return 0; +} +// ino.end + +// ino.method.stopCGeraet.467.definition +int systemModel::AnalyseModell::CGeraet::stopCGeraet() +// ino.end +// ino.method.stopCGeraet.467.body +{ + return 0; +} +// ino.end + +systemModel::AnalyseModell::CGeraet::CGeraet() { +} +systemModel::AnalyseModell::CGeraet::CGeraet(string s) { + mName = s; +} + +void systemModel::AnalyseModell::CGeraet::setWert(int i) +{ + mWert=i; +} +void systemModel::AnalyseModell::CGeraet::setName(string s) +{ + mName=s; +} diff --git a/Bachelor/Softwaretechnik2/mixer/CGeraet.hpp b/Bachelor/Softwaretechnik2/mixer/CGeraet.hpp new file mode 100644 index 0000000..14846ad --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CGeraet.hpp @@ -0,0 +1,75 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:16 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CGeraet.hpp + * + */ + + +// ino.module.CGeraet.1075.ifndef +#ifndef _CGERAET_HPP_1075 +#define _CGERAET_HPP_1075 +// ino.end +#include +#include +using std::string; + + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CGeraet.451.declaration +class CGeraet +// ino.end +// ino.class.CGeraet.451.body +{ +private: + int mWert; + // ino.attribute.mName.461.declaration + private: + string mName; + // ino.end + + // ino.method.startCGeraet.465.declaration + public: + virtual int startCGeraet(int)=0; + // ino.end + + // ino.method.stopCGeraet.467.declaration + public: + virtual int stopCGeraet(); + // ino.end + public: + CGeraet(string); + CGeraet(); + string getname() {return mName;} + void setWert(int); + int getWert() {return mWert;} + void setName(string s); +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CGeraet.1075.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CMischer.cpp b/Bachelor/Softwaretechnik2/mixer/CMischer.cpp new file mode 100644 index 0000000..a5eafe9 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CMischer.cpp @@ -0,0 +1,51 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:59:41 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CMischer.cpp + * + */ + + +// ino.module.CMischer.1091.includes +#include "CMischer.hpp" +// ino.end +using std::cout; +using std::endl; + +// ino.method.startGeraet.1134.definition +int systemModel::AnalyseModell::CMischer::startCGeraet(int i) +// ino.end +// ino.method.startGeraet.1134.body +{ + cout << "Gerät " << getname() << " startet mit Wert "<< i << endl; + setWert(i); + stopCGeraet(); + return 0; +} +// ino.end + +// ino.method.stopGeraet.1137.definition +int systemModel::AnalyseModell::CMischer::stopCGeraet() +// ino.end +// ino.method.stopGeraet.1137.body +{ + cout << "Gerät " << getname() << " stoppt" <verarbeite(); + return 0; +} +// ino.end + +systemModel::AnalyseModell::CRezept::CRezept() { + mAktRezeptSchritt=0; +} + + +void systemModel::AnalyseModell::CRezept::addRezeptschritt(CRezeptschritt * pcrs) +{ + //rezSchr[mAktRezeptSchritt]=pcrs; + //mAktRezeptSchritt++; + rezSchr.push_back(pcrs); +} + +void systemModel::AnalyseModell::CRezept::setAktRezeptschritt(int n) { + mAktRezeptSchritt=n; +} diff --git a/Bachelor/Softwaretechnik2/mixer/CRezept.hpp b/Bachelor/Softwaretechnik2/mixer/CRezept.hpp new file mode 100644 index 0000000..92ba1d0 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CRezept.hpp @@ -0,0 +1,73 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:16 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CRezept.hpp + * + */ + + +// ino.module.CRezept.1070.ifndef +#ifndef _CREZEPT_HPP_1070 +#define _CREZEPT_HPP_1070 +// ino.end +#include +#include +#include "CRezeptSchritt.hpp" +using std::string; +using std::vector; + + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CRezept.403.declaration +class CRezept +// ino.end +// ino.class.CRezept.403.body +{ + // ino.attribute.mName.756.declaration + private: + vector rezSchr; + string mName; + // ino.end + + // ino.attribute.mAktRezeptSchritt.784.declaration + private: + int mAktRezeptSchritt; + // ino.end + + // ino.method.verarbeiteRezept.921.declaration + public: + virtual int verarbeiteRezept(); + // ino.end + CRezept(); + public: + virtual void addRezeptschritt(CRezeptschritt *); + virtual void setAktRezeptschritt(int); +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CRezept.1070.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.cpp b/Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.cpp new file mode 100644 index 0000000..cad5db8 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.cpp @@ -0,0 +1,117 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:19 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CRezeptProcessor.cpp + * + */ + + +// ino.module.CRezeptProcessor.1076.includes +#include "CRezept.hpp" +#include "CDosierer.hpp" +#include "CEntleerer.hpp" +#include "CWaage.hpp" +#include "CDisplay.hpp" +#include "CStampfer.hpp" +#include "CMischer.hpp" +#include "CRezeptProcessor.hpp" +// ino.end + +#include +using std::cout; +using std::cin; +using std::endl; + + + +// ino.method.verarbeiteRezept.469.definition +void systemModel::AnalyseModell::CRezeptProzessor::verarbeiteCRezept(CRezept* pCRezept) +// ino.end +// ino.method.verarbeiteRezept.469.body +{ + pCRezept->verarbeiteRezept(); +} +// ino.end + +systemModel::AnalyseModell::CRezeptProzessor::CRezeptProzessor() { + + + verarbeiteCRezept(init()); + + +} + +systemModel::AnalyseModell::CRezeptProzessor::CRezeptProzessor(CRezept* pCRezept) { +} + +CRezept* systemModel::AnalyseModell::CRezeptProzessor::init() { + + CRezept *rez = new CRezept; + + CWaage *wag = new CWaage; + CDisplay *disp = new CDisplay(wag); + CDosierer *dos1 = new CDosierer((string)"Dosierer 1",wag); + CDosierer *dos2 = new CDosierer((string)"Dosierer 2",wag); + CDosierer *dos3 = new CDosierer((string)"Dosierer 3",wag); + CDosierer *dos4 = new CDosierer((string)"Dosierer 4",wag); + CEntleerer *entl = new CEntleerer((string)"Entleerer 1",wag); + CStampfer *sta = new CStampfer((string)"Stampfer 1"); + CMischer *misch = new CMischer((string)"Mischer 1"); + + + int auswahl,menge =0; + + cout<<"Cocktail-Mixer" << endl; + cout<<"Auswahl\n1 fuer bestehendes Rezept\n2 fuer neues Rezept\n"; + cin>>auswahl; + + switch(auswahl){ + + case 1: { + rez->addRezeptschritt(new CRezeptschritt((string) "Pitu",75,(CGeraet *) dos1)); + rez->addRezeptschritt(new CRezeptschritt((string) "Eis",83,(CGeraet *) dos2)); + rez->addRezeptschritt(new CRezeptschritt((string) "Limetten",67,(CGeraet *) dos3)); + rez->addRezeptschritt(new CRezeptschritt((string) "Zucker",9,(CGeraet *) dos4)); + rez->addRezeptschritt(new CRezeptschritt((string) "Mischen",20,(CGeraet *) misch)); + rez->addRezeptschritt(new CRezeptschritt((string) "Stampfen",20,(CGeraet *) sta)); + rez->addRezeptschritt(new CRezeptschritt((string) "Entleeren",0,(CGeraet *) entl)); + + + }; + break; + + case 2: { cout<<"Bitte die gewuenschte Menge Pitu angeben: "; + cin>>menge; + rez->addRezeptschritt(new CRezeptschritt((string) "Pitu",menge,(CGeraet *) dos1)); + cout<<"Bitte die gewuenschte Menge Eis angeben: "; + cin>>menge; + rez->addRezeptschritt(new CRezeptschritt((string) "Eis",menge,(CGeraet *) dos2)); + cout<<"Bitte die gewuenschte Menge an Limetten angeben: "; + cin>>menge; + rez->addRezeptschritt(new CRezeptschritt((string) "Limetten",menge,(CGeraet *) dos3)); + cout<<"Bitte die gewuenschte Menge an Zucker angeben: "; + cin>>menge; + rez->addRezeptschritt(new CRezeptschritt((string) "Zucker",menge,(CGeraet *) dos4)); + cout<<"Bitte die gewuenschte Mischzeit angeben: "; + cin>>menge; + rez->addRezeptschritt(new CRezeptschritt((string) "Mischen",menge,(CGeraet *) misch)); + cout<<"Bitte die gewuenschte Stampfzeit angeben: "; + cin>>menge; + rez->addRezeptschritt(new CRezeptschritt((string) "Stampfen",menge,(CGeraet *) sta)); + rez->addRezeptschritt(new CRezeptschritt((string) "Entleeren",menge,(CGeraet *) entl)); + }; + + } + + wag->meldeAn(disp); + +return rez; +} + diff --git a/Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.hpp b/Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.hpp new file mode 100644 index 0000000..0666987 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CRezeptProcessor.hpp @@ -0,0 +1,59 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:15 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CRezeptProcessor.hpp + * + */ + + +// ino.module.CRezeptProcessor.1069.ifndef +#ifndef _CREZEPTPROCESSOR_HPP_1069 +#define _CREZEPTPROCESSOR_HPP_1069 +// ino.end +#include +using std::string; +#include "CRezept.hpp" + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CRezeptProzessor.440.declaration +class CRezeptProzessor +// ino.end +// ino.class.CRezeptProzessor.440.body +{ + // ino.method.verarbeiteRezept.469.declaration + public: + void verarbeiteCRezept(CRezept* pCRezept); + CRezept* init(); + // ino.end + CRezeptProzessor(); + CRezeptProzessor(CRezept* pCRezept); + +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CRezeptProcessor.1069.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.cpp b/Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.cpp new file mode 100644 index 0000000..91fcd3a --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.cpp @@ -0,0 +1,40 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:19 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CRezeptSchritt.cpp + * + */ + + +// ino.module.CRezeptSchritt.1078.includes +#include "CRezeptSchritt.hpp" +// ino.end + + +// ino.method.verarbeite.758.definition +int systemModel::AnalyseModell::CRezeptschritt::verarbeite() +// ino.end +// ino.method.verarbeite.758.body +{ + pcGeraet->startCGeraet(mWert); + + return 0; +} +// ino.end +systemModel::AnalyseModell::CRezeptschritt::CRezeptschritt() { +} + +systemModel::AnalyseModell::CRezeptschritt::CRezeptschritt(string s, int w, CGeraet * pcg) { + mZutat = s; + mWert = w; + pcGeraet = pcg; + pcGeraet->setName(mZutat); +} + diff --git a/Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.hpp b/Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.hpp new file mode 100644 index 0000000..258f1f8 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CRezeptSchritt.hpp @@ -0,0 +1,72 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:15 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CRezeptSchritt.hpp + * + */ + + +// ino.module.CRezeptSchritt.1071.ifndef +#ifndef _CREZEPTSCHRITT_HPP_1071 +#define _CREZEPTSCHRITT_HPP_1071 +// ino.end +#include +using std::string; +#include "CDosierer.hpp" +#include "CEntleerer.hpp" +#include "CStampfer.hpp" +#include "CMischer.hpp" +#include "CGeraet.hpp" + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CRezeptschritt.401.declaration +class CRezeptschritt +// ino.end +// ino.class.CRezeptschritt.401.body +{ + // ino.attribute.mZutat.560.declaration + private: + string mZutat; + // ino.end + private: + CGeraet *pcGeraet; + // ino.attribute.mWert.431.declaration + private: + int mWert; + // ino.end + + // ino.method.verarbeite.758.declaration + public: + virtual int verarbeite(); + // ino.end + CRezeptschritt(); + CRezeptschritt(string , int , CGeraet *); +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CRezeptSchritt.1071.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CStampfer.cpp b/Bachelor/Softwaretechnik2/mixer/CStampfer.cpp new file mode 100644 index 0000000..69e80cf --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CStampfer.cpp @@ -0,0 +1,42 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:59:41 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CStampfer.cpp + * + */ + + +#include "CStampfer.hpp" + +using std::cout; +using std::endl; + +int systemModel::AnalyseModell::CStampfer::startCGeraet(int i) +{ + cout << "Gerät " << getname() << " startet mit Wert "<< i << endl; + setWert(i); + stopCGeraet(); + return 0; +} + + +int systemModel::AnalyseModell::CStampfer::stopCGeraet() +{ + cout << "Gerät " << getname() << " stoppt" << endl; + return 0; +} +systemModel::AnalyseModell::CStampfer::CStampfer() +{ +} +systemModel::AnalyseModell::CStampfer::CStampfer(string s):CGeraet(s) +{ + +} + diff --git a/Bachelor/Softwaretechnik2/mixer/CStampfer.hpp b/Bachelor/Softwaretechnik2/mixer/CStampfer.hpp new file mode 100644 index 0000000..561e370 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CStampfer.hpp @@ -0,0 +1,61 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 15:01:42 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CStampfer.hpp + * + */ + + +// ino.module.CStampfer.1086.ifndef +#ifndef _CSTAMPFER_HPP_1086 +#define _CSTAMPFER_HPP_1086 +// ino.end + +#include "CGeraet.hpp" +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CStampfer.754.declaration +class CStampfer: public CGeraet +// ino.end +// ino.class.CStampfer.754.body +{ + // ino.method.startGeraet.1128.declaration + public: + virtual int startCGeraet(int); + // ino.end + + // ino.method.stopGeraet.1131.declaration + public: + virtual int stopCGeraet(); + // ino.end + public: + CStampfer(); + CStampfer(string); +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CStampfer.1086.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CSubjekt.cpp b/Bachelor/Softwaretechnik2/mixer/CSubjekt.cpp new file mode 100644 index 0000000..51c1b58 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CSubjekt.cpp @@ -0,0 +1,57 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:19 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CSubjekt.cpp + * + */ + + +// ino.module.CSubjekt.1079.includes +#include "CObserver.hpp" +#include "CSubjekt.hpp" +// ino.end + +#include +using std::vector; + +// ino.method.meldeAn.516.definition +int systemModel::AnalyseModell::CSubjekt::meldeAn(CObserver *pobs) +// ino.end +// ino.method.meldeAn.516.body +{ + obsVec.push_back(pobs); + //benachrichtigeAlle(); + return 0; +} +// ino.end + +// ino.method.meldeAb.518.definition +int systemModel::AnalyseModell::CSubjekt::meldeAb() +// ino.end +// ino.method.meldeAb.518.body +{ + obsVec.pop_back(); + return 0; +} +// ino.end + +// ino.method.benachrichtige.520.definition +void systemModel::AnalyseModell::CSubjekt::benachrichtige(CObserver* pBeobachter) +// ino.end +// ino.method.benachrichtige.520.body +{ +} +// ino.end + + +void systemModel::AnalyseModell::CSubjekt::benachrichtigeAlle() { + for (int i=0;iaktualisiere(); +} diff --git a/Bachelor/Softwaretechnik2/mixer/CSubjekt.hpp b/Bachelor/Softwaretechnik2/mixer/CSubjekt.hpp new file mode 100644 index 0000000..57cf6e7 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CSubjekt.hpp @@ -0,0 +1,73 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:15 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CSubjekt.hpp + * + */ + + +// ino.module.CSubjekt.1072.ifndef +#ifndef _CSUBJEKT_HPP_1072 +#define _CSUBJEKT_HPP_1072 +// ino.end + +#include "CObserver.hpp" +#include +#include +using std::string; +using std::vector; + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CSubjekt.512.declaration +class CSubjekt +// ino.end +// ino.class.CSubjekt.512.body +{ + // ino.method.meldeAn.516.declaration + public: + virtual int meldeAn (CObserver *); + // ino.end + + // ino.method.meldeAb.518.declaration + public: + virtual int meldeAb(); + // ino.end + + // ino.method.benachrichtige.520.declaration + public: + virtual void benachrichtige(CObserver *); + // ino.end + public: + virtual void benachrichtigeAlle(); + private: + vector obsVec; + +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CSubjekt.1072.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CVentilGeraet.cpp b/Bachelor/Softwaretechnik2/mixer/CVentilGeraet.cpp new file mode 100644 index 0000000..5b0fb50 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CVentilGeraet.cpp @@ -0,0 +1,70 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:18 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CVentilGeraet.cpp + * + */ + + +// ino.module.CVentilGeraet.1090.includes +#include "CVentilGeraet.hpp" +// ino.end + +#include +using std::cout; +using std::endl; + +// ino.method.pruefeGewicht.995.definition +int systemModel::AnalyseModell::CVentilGeraet::pruefeGewicht() +// ino.end +// ino.method.pruefeGewicht.995.body +{ + return 0; +} +// ino.end + +// ino.method.oeffneVentil.776.definition +int systemModel::AnalyseModell::CVentilGeraet::oeffneVentil() +// ino.end +// ino.method.oeffneVentil.776.body +{ + cout << getname() << " oeffnet Ventil" << endl; + return 0; +} +// ino.end + +// ino.method.schliesseVentil.778.definition +int systemModel::AnalyseModell::CVentilGeraet::schliesseVentil() +// ino.end +// ino.method.schliesseVentil.778.body +{ + cout << getname() << " schliesst Ventil" < +using std::string; + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CVentilGeraete.774.declaration +class CVentilGeraet: public CObserver, public CGeraet +// ino.end +// ino.class.CVentilGeraete.774.body +{ + // ino.method.pruefeGewicht.995.declaration + public: + virtual int pruefeGewicht(); + // ino.end + + // ino.method.oeffneVentil.776.declaration + public: + virtual int oeffneVentil(); + // ino.end + + // ino.method.schliesseVentil.778.declaration + public: + virtual int schliesseVentil(); + // ino.end + public: + CVentilGeraet(); + CVentilGeraet(string,CSubjekt *); + CVentilGeraet(string); + virtual int aktualisiere()=0; + public: + virtual int startCGeraet(int); + public: + virtual int stopCGeraet(); + private: + int mAenderung; + public: + void setAenderung(int); + int getAenderung() {return mAenderung;} + +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CVentilGeraet.1081.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/CWaage.cpp b/Bachelor/Softwaretechnik2/mixer/CWaage.cpp new file mode 100644 index 0000000..0dac83d --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CWaage.cpp @@ -0,0 +1,129 @@ +/**********************************************************************************/ +/* Definitionsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:18 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CWaage.cpp + * + */ + + +// ino.module.CWaage.1080.includes +#include "CWaage.hpp" +// ino.end + +int test = 0; //globale Testvariable +int test2 = 100; //globale Testvariable + +// ino.method.aktiviere.760.definition +int systemModel::AnalyseModell::CWaage::aktiviere(CVentilGeraet *pcvg) +// ino.end +// ino.method.aktiviere.760.body +{ + pAktVentilGeraet=pcvg; + mGewichtErreicht=false; + //benachrichtigeAlle(); + pAktVentilGeraet->oeffneVentil(); + while (!mGewichtErreicht) { + gewichtNichtErreicht(); + } + pAktVentilGeraet->stopCGeraet(); + return 0; +} +// ino.end + +// ino.method.gewichtErreicht.762.definition +int systemModel::AnalyseModell::CWaage::gewichtErreicht() +// ino.end +// ino.method.gewichtErreicht.762.body +{ + mGewichtErreicht=true; + return 0; +} +// ino.end + +// ino.method.gewichtNichtErreicht.764.definition +int systemModel::AnalyseModell::CWaage::gewichtNichtErreicht() +// ino.end +// ino.method.gewichtNichtErreicht.764.body +{ + aendereGewicht(); + return 0; +} +// ino.end + +// ino.method.erhoeheGewicht.568.definition +int systemModel::AnalyseModell::CWaage::erhoeheGewicht(int fBetrag) +// ino.end +// ino.method.erhoeheGewicht.568.body +{ + + + mGesamtGewicht+=fBetrag; + + test += fBetrag; + + return test; +} +// ino.end + +// ino.method.verringereGewicht.570.definition +int systemModel::AnalyseModell::CWaage::verringereGewicht(int fBetrag) +// ino.end +// ino.method.verringereGewicht.570.body +{ + mGesamtGewicht-=fBetrag; + + test2 -= fBetrag; + + return test2; +} +// ino.end + +// ino.method.getGesamtGewicht.564.definition +int systemModel::AnalyseModell::CWaage::getGesamtGewicht() +// ino.end +// ino.method.getGesamtGewicht.564.body +{ + return mGesamtGewicht; +} +// ino.end + +// ino.method.getDifferenzGewicht.566.definition +int systemModel::AnalyseModell::CWaage::getDifferenzGewicht() +// ino.end +// ino.method.getDifferenzGewicht.566.body +{ + return mDifferenzGewicht; +} +// ino.end + +// ino.method.tariere.487.definition +void systemModel::AnalyseModell::CWaage::tariere() +// ino.end +// ino.method.tariere.487.body +{ + mDifferenzGewicht=0; + benachrichtigeAlle(); +} +// ino.end + + +systemModel::AnalyseModell::CWaage::CWaage() { + mGesamtGewicht=0; + mDifferenzGewicht=0; +} + +void systemModel::AnalyseModell::CWaage::aendereGewicht() +// ino.end +// ino.method.verringereGewicht.570.body +{ + mDifferenzGewicht=(mDifferenzGewicht+pAktVentilGeraet->getAenderung())>0?mDifferenzGewicht+pAktVentilGeraet->getAenderung():0; + mGesamtGewicht+=pAktVentilGeraet->getAenderung(); + benachrichtigeAlle(); +} diff --git a/Bachelor/Softwaretechnik2/mixer/CWaage.hpp b/Bachelor/Softwaretechnik2/mixer/CWaage.hpp new file mode 100644 index 0000000..f0fabfc --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/CWaage.hpp @@ -0,0 +1,110 @@ +/**********************************************************************************/ +/* Deklarationsmodul */ +/**********************************************************************************/ +/* + * generiert mit Innovator Version 8.1.04 + * + * erstellt am: 12.01.2006 14:36:14 + * Repository : swtc20 + * Modell : swt + * Benutzer : swtc20 + * File : /users/swtc20/code/CWaage.hpp + * + */ + + +// ino.module.CWaage.1073.ifndef +#ifndef _CWAAGE_HPP_1073 +#define _CWAAGE_HPP_1073 +// ino.end +#include +#include "CSubjekt.hpp" +#include "CVentilGeraet.hpp" +using std::string; + + +namespace systemModel { + namespace AnalyseModell { + + +// ino.class.CWaage.436.declaration +class CWaage: public CSubjekt +// ino.end +// ino.class.CWaage.436.body +{ + // ino.attribute.mGesamtGewicht.481.declaration + private: + int mGesamtGewicht; + // ino.end + + // ino.attribute.mDifferenzGewicht.483.declaration + private: + int mDifferenzGewicht; + // ino.end + + // ino.method.aktiviere.760.declaration + public: + virtual int aktiviere(CVentilGeraet *); + // ino.end + + // ino.method.gewichtErreicht.762.declaration + public: + virtual int gewichtErreicht(); + // ino.end + + // ino.method.gewichtNichtErreicht.764.declaration + public: + virtual int gewichtNichtErreicht(); + // ino.end + + // ino.method.erhoeheGewicht.568.declaration + public: + virtual int erhoeheGewicht(int fBetrag); + // ino.end + + // ino.method.verringereGewicht.570.declaration + public: + virtual int verringereGewicht(int fBetrag); + // ino.end + + // ino.method.getGesamtGewicht.564.declaration + public: + virtual int getGesamtGewicht(); + // ino.end + + // ino.method.getDifferenzGewicht.566.declaration + public: + virtual int getDifferenzGewicht(); + // ino.end + + // ino.method.tariere.487.declaration + public: + virtual void tariere(); + // ino.end + public: + CWaage(); + private: + CVentilGeraet *pAktVentilGeraet; + public: + void aendereGewicht(); + private: + bool mGewichtErreicht; +}; +// ino.end + + + + + + }; // namespace AnalyseModell +}; // namespace systemModel + + +#if !defined(NO_IMPLICIT_NAMESPACE_USE) +using namespace systemModel::AnalyseModell; +#endif + +// ino.module.CWaage.1073.endif +#endif +// ino.end + diff --git a/Bachelor/Softwaretechnik2/mixer/Debug/makefile b/Bachelor/Softwaretechnik2/mixer/Debug/makefile new file mode 100644 index 0000000..086a403 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/Debug/makefile @@ -0,0 +1,30 @@ +################################################################################ +# Diese Datei wurde automatisch generiert. Sie darf nicht bearbeitet werden! +################################################################################ + +ROOT := .. + +-include $(ROOT)/makefile.init + +RM := rm -rf + +# Alle an der Erstellung beteiligten Quellen sind hier definiert. +-include sources.mk +-include $(SUBDIRS:%=%/subdir.mk) +-include objects.mk +-include $(DEPS) +-include $(ROOT)/makefile.defs + +all: mixer.exe + +mixer.exe: $(OBJS) + @echo 'Ziel wird erstellt: $@' + g++ -o $@ $(OBJS) $(USER_OBJS) $(LIBS) + @echo 'Erstellung fertig gestellt: $@' + +clean: + -$(RM) $(OBJS) $(DEPS) mixer.exe + +.PHONY: all clean dependents + +-include $(ROOT)/makefile.targets diff --git a/Bachelor/Softwaretechnik2/mixer/Debug/objects.mk b/Bachelor/Softwaretechnik2/mixer/Debug/objects.mk new file mode 100644 index 0000000..8bcaab0 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/Debug/objects.mk @@ -0,0 +1,13 @@ +################################################################################ +# Diese Datei wurde automatisch generiert. Sie darf nicht bearbeitet werden! +################################################################################ + +LIBS := +USER_OBJS := + + +OBJS := \ + $(C_SRCS:$(ROOT)/%.c=%.o) $(C_UPPER_SRCS:$(ROOT)/%.C=%.o) $(CC_SRCS:$(ROOT)/%.cc=%.o) $(CXX_SRCS:$(ROOT)/%.cxx=%.o) $(CPP_SRCS:$(ROOT)/%.cpp=%.o) $(S_SRCS:$(ROOT)/%.s=%.o) $(S_UPPER_SRCS:$(ROOT)/%.S=%.o) + +DEPS := \ + $(C_SRCS:$(ROOT)/%.c=%.d) $(C_UPPER_SRCS:$(ROOT)/%.C=%.d) $(CC_SRCS:$(ROOT)/%.cc=%.d) $(CXX_SRCS:$(ROOT)/%.cxx=%.d) $(CPP_SRCS:$(ROOT)/%.cpp=%.d) $(S_SRCS:$(ROOT)/%.s=%.d) $(S_UPPER_SRCS:$(ROOT)/%.S=%.d) \ No newline at end of file diff --git a/Bachelor/Softwaretechnik2/mixer/Debug/sources.mk b/Bachelor/Softwaretechnik2/mixer/Debug/sources.mk new file mode 100644 index 0000000..6f3ea65 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/Debug/sources.mk @@ -0,0 +1,16 @@ +################################################################################ +# Diese Datei wurde automatisch generiert. Sie darf nicht bearbeitet werden! +################################################################################ + +C_SRCS := +C_UPPER_SRCS := +CC_SRCS := +CXX_SRCS := +CPP_SRCS := +S_SRCS := +S_UPPER_SRCS := + +# Jedes Unterverzeichnis mit Quellendateien muss hier beschrieben werden +SUBDIRS := \ +. \ + diff --git a/Bachelor/Softwaretechnik2/mixer/Debug/subdir.mk b/Bachelor/Softwaretechnik2/mixer/Debug/subdir.mk new file mode 100644 index 0000000..955da59 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/Debug/subdir.mk @@ -0,0 +1,57 @@ +################################################################################ +# Diese Datei wurde automatisch generiert. Sie darf nicht bearbeitet werden! +################################################################################ + +S_UPPER_SRCS += \ +${addprefix $(ROOT)/, \ +} + +CPP_SRCS += \ +${addprefix $(ROOT)/, \ +CDisplay.cpp \ +CDosierer.cpp \ +CEntleerer.cpp \ +CGeraet.cpp \ +CMischer.cpp \ +CObserver.cpp \ +CRezept.cpp \ +CRezeptProcessor.cpp \ +CRezeptSchritt.cpp \ +CStampfer.cpp \ +CSubjekt.cpp \ +CVentilGeraet.cpp \ +CWaage.cpp \ +main.cpp \ +} + +CC_SRCS += \ +${addprefix $(ROOT)/, \ +} + +C_SRCS += \ +${addprefix $(ROOT)/, \ +} + +C_UPPER_SRCS += \ +${addprefix $(ROOT)/, \ +} + +CXX_SRCS += \ +${addprefix $(ROOT)/, \ +} + +S_SRCS += \ +${addprefix $(ROOT)/, \ +} + +# Jedes Unterverzeichnis muss Regeln für die von ihm ergänzten Erstellungsquellen angeben +%.o: $(ROOT)/%.cpp + @echo 'Datei wird erstellt: $<' + @echo g++ -O0 -g3 -Wall -c -fmessage-length=0 -o$@ $< + @g++ -O0 -g3 -Wall -c -fmessage-length=0 -o$@ $< && \ + echo -n $(@:%.o=%.d) '' > $(@:%.o=%.d) && \ + g++ -MM -MG -P -w -O0 -g3 -Wall -c -fmessage-length=0 $< >> $(@:%.o=%.d) + @echo 'Erstellung fertig gestellt: $<' + @echo ' ' + + diff --git a/Bachelor/Softwaretechnik2/mixer/Test.h b/Bachelor/Softwaretechnik2/mixer/Test.h new file mode 100644 index 0000000..4958172 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/Test.h @@ -0,0 +1,16 @@ +#ifndef _TEST__H +#define _TEST__H + +// #include "TestResult.h" + +class Test +{ +public: +// void run( TestResult& result) = 0; + virtual void run() {} + virtual void setUp() {} + virtual void tearDown() {} +}; + +// No Code behind this line! +#endif \ No newline at end of file diff --git a/Bachelor/Softwaretechnik2/mixer/TestCDosierer.h b/Bachelor/Softwaretechnik2/mixer/TestCDosierer.h new file mode 100644 index 0000000..16ca4d8 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/TestCDosierer.h @@ -0,0 +1,78 @@ +#ifndef _TESTCDOSIERER__ +#define _TESTCDOSIERER__ + + +#include "CDosierer.hpp" // zu testende Klasse +#include "TestCase.h" // Basisklasse für Testklasse + + +class TestCDosierer : public TestCase +{ +protected: + CDosierer* pCDosierer; // Zeiger auf zu testende Klasse + // damit's was zu Initialisieren gibt ... + +public: + // Initialisierungsmethode + void setUp() { + + + CWaage *wag = new CWaage; + pCDosierer = new CDosierer((string)"Dosierer 1",wag); + + } + + // Aufräum-Methode + void tearDown() { + delete pCDosierer; + } + + //! meine Testfunktionen + void testDosierer1() + { + + + tN = "testDosierer1 (pruefe Gewicht)"; + + tL = __LINE__; // Zeilennummer + + for ( int a = 1; a < 100.; a ++ ) + { + pCDosierer->setWert(a); + + assertEquals( 1, // erwartet (1 für Gewicht nicht erreicht) + pCDosierer->pruefeGewicht(), // berechnet + 0.1 ); // epsilon + } // end for + } + + void testDosierer2() + { + + + tN = "testDosierer2 (pruefe Gewicht)"; + + tL = __LINE__; // Zeilennummer + + + + pCDosierer->setWert(0); + + assertEquals( 0, // erwartet (0 für Gewicht erreicht) + pCDosierer->pruefeGewicht(), // berechnet + 0.1 ); // epsilon + + } + + + //! Konstruktor, fügt gleich Testfunktionen hinzu + TestCDosierer() : TestCase( "TEST DOSIERER " ) + { + addTest( (TESTFUNC) &TestCDosierer::testDosierer1 ); + addTest( (TESTFUNC) &TestCDosierer::testDosierer2 ); + + } + +}; + +#endif diff --git a/Bachelor/Softwaretechnik2/mixer/TestCWaage.h b/Bachelor/Softwaretechnik2/mixer/TestCWaage.h new file mode 100644 index 0000000..2a733d8 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/TestCWaage.h @@ -0,0 +1,70 @@ +#ifndef _TESTCWAAGE__ +#define _TESTCWAAGE__ + + +#include "CWaage.hpp" // zu testende Klasse +#include "TestCase.h" // Basisklasse für Testklasse + + +class TestCWaage : public TestCase +{ +protected: + CWaage* pCWaage; // Zeiger auf zu testende Klasse + // damit's was zu Initialisieren gibt ... + +public: + // Initialisierungsmethode + void setUp() { + pCWaage = new CWaage(); + } + + // Aufräum-Methode + void tearDown() { + delete pCWaage; + } + + //! meine Testfunktionen + void testWiegen1() + { + tN = "testWiegen1 (erhoehen)"; + int gesamt = 0; + tL = __LINE__; // Zeilennummer + + for ( int a = 0; a < 100.; a ++ ) + { + gesamt += a; + + assertEquals( gesamt, //sqrt( a ), // erwartet + pCWaage->erhoeheGewicht(a),//pMyMath->wurzel( a, prec ), // berechnet + 0.1 ); // epsilon + } // end for + } + + void testWiegen2() + { + tN = "testWiegen2 (verringern)"; + int gesamt = 100; + tL = __LINE__; // Zeilennummer + + for ( int a = 100.; a < 100.; a -- ) + { + gesamt -= a; + + assertEquals( (a -1), // erwartet + pCWaage->verringereGewicht(a),// berechnet + 0.1 );// epsilon + } // end for + } + + + //! Konstruktor, fügt gleich Testfunktionen hinzu + TestCWaage() : TestCase( "TestCWaage" ) + { + addTest( (TESTFUNC) &TestCWaage::testWiegen1 ); + addTest( (TESTFUNC) &TestCWaage::testWiegen2 ); + + } + +}; + +#endif diff --git a/Bachelor/Softwaretechnik2/mixer/TestCase.cpp b/Bachelor/Softwaretechnik2/mixer/TestCase.cpp new file mode 100644 index 0000000..851d660 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/TestCase.cpp @@ -0,0 +1,206 @@ +#include +#include +using namespace std; +#include // für formatierte Ausgabe im C-Stil +#define BUFLEN 160 // für Ausgabe + +#include "TestCase.h" + +// Konstruktor +TestCase::TestCase( char* name ) + : testsRun(0), testsFailed(0), testsOK(0) +{ + if (name != 0) + strncpy( tcName, name, sizeof(tcName)-1 ); + else + tcName[0] = 0; // leerer String +} + +// Hinzufügen von Testfunktionen +void TestCase::addTest( TESTFUNC f ) +{ + vecFkt.push_back( f ); +} + +// Test-Run für Test Case +void TestCase::run() +{ + testsRun = 0; // Zähler initialisieren + testsFailed = 0; + testsOK = 0; + + // Setup für Test + setUp(); + + for (int i = 0; i < vecFkt.size(); i++) + { + tL = 0; // falls nicht gesetzt durch Fkt + tN = ""; // falls nicht gesetzt durch Fkt + + bool success = true; // init + + try { + testsRun++; // Tests mitzählen + (this->*vecFkt[i])(); // Testfunktion aufrufen + } + catch ( string msg ) // Fehlerbehandlung + { + success = false; // Fehler Markieren + cout << "Fehler " << tcName << '.' << tN + << " Zeile " << tL << " " + << msg << endl; + } + + // Auswertung des Tests + if (success) + { + testsOK++; + cout << "OK: " << tcName << '.' << tN << endl; + } + else + { + testsFailed++; + } + + } // end for + + // Tear Down für Test + tearDown(); + + cout << ">>> " << tcName << ":Tests durchgefuehrt: " << testsRun + << ", o.k: " << testsOK + << ", fehlgeschlagen: " << testsFailed + << endl; +} + +void TestCase::assertEquals( int a, int b ) +{ + if (a != b) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %d, ist: %d", + "assertEquals(int, int)", a, b); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertEquals( long a, long b) +{ + if (a != b) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %d, ist: %d", + "assertEquals(long,long)", a, b); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertEquals( float a, float b) +{ + if (a != b) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %f, ist: %f", + "assertEquals(float,float)", a, b); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertEquals( double a, double b ) +{ + if (a != b) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %f, ist: %f", + "assertEquals(double,double)", a, b); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertEquals( double a, double b, double epsilon ) +{ + double diff = ( a >= b ) ? (a-b) : (b-a); + if ( diff > epsilon ) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %f, ist: %f, epsilon: %e", + "assertEquals(double,double,double)", a, b, epsilon); + throw ( *(new string( buf )) ); + } +} + + +void TestCase::assertEquals( bool a, bool b ) +{ + if (a != b) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %s, ist: %s", + "assertEquals(bool,bool)", + ((a==true) ? "true" : "false"), ((b==true) ? "true" : "false")); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertEquals( void* a, void* b) +{ + if (a != b) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %x, ist: %x", + "assertEquals(void*,void*)", a, b ); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertEquals( char* a, char* b ) +{ + if ( strcmp( a, b ) != 0 ) + { + char buf[BUFLEN]; // Achtung Länge hier kritisch! + const int StrMaxLen = 48; //!< Ausgabe Einzelstring begrenzen + string sa( a ); // Zuweisung auf Klasse string + string sb( b ); // erleichtert Manipulationen + if (sa.length() > StrMaxLen) + sa = sa.substr( 0, StrMaxLen ); + if (sb.length() > StrMaxLen) + sb = sb.substr( 0, StrMaxLen ); + + sprintf( buf, "%s: soll: %s, ist: %s", + "assertEquals(char*,char*)", sa.c_str(), sb.c_str() ); + throw ( *(new string( buf )) ); + } +} + + +void TestCase::assertTrue( bool a ) +{ + if (!a) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %s", + "assertTrue(bool,bool)", + ((a==true) ? "true" : "false") ); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertFalse( bool a) +{ + if (a) + { + char buf[BUFLEN]; + sprintf( buf, "%s: soll: %s", + "assertFalse(bool,bool)", + ((a==true) ? "true" : "false") ); + throw ( *(new string( buf )) ); + } +} + +void TestCase::assertMessage( char* msg ) +{ + char buf[BUFLEN]; + sprintf( buf, "%s: Meldung: %s", + "assertMessage( char* )", msg ); + throw ( *(new string( buf )) ); +} diff --git a/Bachelor/Softwaretechnik2/mixer/TestCase.h b/Bachelor/Softwaretechnik2/mixer/TestCase.h new file mode 100644 index 0000000..c4eaca9 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/TestCase.h @@ -0,0 +1,241 @@ +#ifndef _TESTCASE__H +#define _TESTCASE__H + +#include //!< Container ür Funktionszeiger + +#include "Test.h" + +class TestCase; //!< Vorwärtsdeklaration für typedef + +typedef void (TestCase::*TESTFUNC)(); //!< Definition Testfunktion + +/** + * TestCase. + * Wird zum Gebrauch abgeleitet. + * + * Beispiel einer Testklasse. + * Wird von TestCase abgeleitet + * \code + * class TestCase : public Test + * { + * ... + * \endcode + * Weitere Schritte: Testfunktionen schreiben und + * beispielsweise im Konstruktur hinzufügen. + * @see Dokumentation TestCase::TestCase() + * @author Prof. Ralf Mayer + * @version 28.05.2005 + */ +class TestCase : public Test +{ +public: + /** + * Konstruktor. + * Anleitung zum Gebrauch: Klasse ableiten, dann Konstruktor + * geeignet überschreiben: + * \code + * MyTestCase( char* name = 0 ) : TestCase( name ) + * { + * addTest( (TESTFUNC) &MyTestCase::test1 ); + * addTest( (TESTFUNC) &MyTestCase::test2 ); + * // alle weiteren Tests hinzufügen + * // ... + * } // Ende Konstruktor + * \endcode + * @param name [optional] char* Name der Testklasse + */ + TestCase( char* name = 0); + + //! Destruktor + virtual ~TestCase() {} + + /** + * Ausführen aller Tests in der Testklasse. + * Sobald ein Fehler auftritt, wird dieser ausgegeben und + * der Einzeltest, also die einzelne Testfunktion beendet. + */ + virtual void run(); + + /** + * Setup Methode. + * Sollte immer von abgeleiter Testklasse überschreiben werden. + * Wird zu Beginn jedes Tests aufgerufen, also zu Begin von run() + */ + virtual void setUp() {} + + /** + * Teardown Methode zum Aufräumen nach jedem Test. + * Sollte immer von abgeleiter Testklasse überschreiben werden. + * Wird am Ende jedes Tests aufgerufen, also zu Begin von run() + */ + virtual void tearDown() {} + + /** + * Hinzufügen von Testfunktionen in der Testklasse. + * Bester Ort für diese Aufrufe ist der Konstruktor + * der abgeleiteten Klasse, d.h. der Testklasse + * + * Bei Zeigern auf Elementfunktionen in C++ sind Besonderheiten + * zu beachen. Rufen Sie diese Funktion stets in der folgenden + * Form auf, wenn z.B. die Funktion test1 heisst, + * und ihre Klasse MyTestCase: + * \code + * addTest( (TESTFUNC) &MyTestCase::test1 ); + * \endcode + * Eine Testfunktion sollte immer wie folgt aufgebaut werden: + * \code + * void meinTest3() + * { + * tN = "meinTest3"; // Hier Name der Testfunktion + * + * // Hier wird der Test vorbereitet, z.B + * float istWert = -2.5; // z.B. Ergebnis einer Berechnung + * float erwartet = 2.5; // Bekanntes, d.h. erwartetes Ergebnis + * + * // Hier wird Ergebnis und Erwartungswert verglichen. + * // Compiler schreibt in tL die aktuelle Zeilennummer (__LINE__) + * tL= __LINE__; assertEquals( istWert, erwartet ); + * // sind beide Werte gleich, dann ist's o.k. + * // wenn nicht wird Fehler mit Zeilennummer, + * // Namen der Testklasse und dem Funktionsnamen + * // angezeigt und dokumentiert. + * } + * + * \endcode + * Die Signatur einer Testfunktion darf nicht verändert werden + * \code void meineTestfunktion() \endcode + * @param f TESTFUNC + * @todo Dokumentation hinzufügen + */ + void addTest( TESTFUNC f ); + + // all assertions + /** + * Vergleichsfunktion. Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert + * @param a int Soll(erwarteter) Wert + * @param b int Ist, d.h Ergebniswert des Tests + * @return void + */ + void assertEquals( int a, int b); + + /** + * Vergleichsfunktion. Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert + * @param a long Soll(erwarteter) Wert + * @param b long Ist, d.h Ergebniswert des Tests + * @return void + */ + void assertEquals( long a, long b); + + /** + * Vergleichsfunktion. Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert + * @param a float Soll(erwarteter) Wert + * @param b float Ist, d.h Ergebniswert des Tests + * @return void + */ + void assertEquals( float a, float b ); + + /** + * Vergleichsfunktion. Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert + * @param a double Soll(erwarteter) Wert + * @param b double Ist, d.h Ergebniswert des Tests + * @return void + */ + void assertEquals( double a, double b ); + + /** + * Vergleichsfunktion. Falls a und b nicht innerhalb der + * vorgegebenen Genauigkeitsgrenze übereinstimmen, wird Ausnahme + * geworfen und als Fehler dokumentiert. + * Beachten sie auch mögliche Rundungsfehler bei der Berechnung. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert und Grenze + * @param a double Soll(erwarteter) Wert + * @param b double Ist, d.h Ergebniswert des Tests + * @param e double >= 0 vorgegebene Genauigkeitsgrenze + * @return void + */ + void assertEquals( double a, double b, double e ); + + /** + * Vergleichsfunktion. Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert + * @param a bool Soll(erwarteter) Wert + * @param b bool Ist, d.h Ergebniswert des Tests + * @return void + */ + void assertEquals( bool a, bool b); + + /** + * Vergleichsfunktion für Zeiger!! Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert + * in hexadezimaler Darstellung + * @param a void* Soll(erwarteter) Wert als Zeiger + * @param b void* Istwert als Zeiger + * @return void + */ + void assertEquals( void* a, void* b ); + + /** + * Vergleichsfunktion nur für C-Strings! Falls a != b wird Ausnahme + * geworfen und als Fehler dokumentiert. + * @exception string. Enthält Fehler sowie Soll- und Ist-Wert, + * jeweils auf 48 Zeichen begrenzt. + * @param a char* Soll(erwarteter) Wert + * @param b char* Ist, d.h Ergebniswert des Tests + * @return void + */ + void assertEquals( char* a, char* b ); + + /** + * Vergleichsfunktion. Falls a != true (wahr) wird Ausnahme + * geworfen und als Fehler dokumentiert. + * Hier kann z.B. eine logische Abfrage übergeben werden. + * @exception string. Enthält Fehler sowie den übergebenen Wert + * @param a bool Soll(erwarteter) Wert + * @return void + */ + void assertTrue( bool a ); + + /** + * Vergleichsfunktion. Falls a != false (falsch) wird Ausnahme + * geworfen und als Fehler dokumentiert. + * Hier kann z.B. eine logische Abfrage übergeben werden. + * @exception string. Enthält Fehler sowie den übergebenen Wert + * @param a bool Soll(erwarteter) Wert + * @return void + */ + void assertFalse( bool a ); + + /** + * Wirft Meldung als Ausnahme. + * Kann besipielsweise benutzt werden um das Auslösen einer + * Exception zu überprüfen. + * @exception string. Enthält Meldung + * @param msg char* Meldung + * @return void + */ + void assertMessage( char* msg ); + +protected: + int testsRun; + int testsFailed; + int testsOK; + int tL; //!< Zeilen Nummer + char* tN; //!< Test Name + char tcName[32]; //!< Name des Test Case + + //! Container für Funktionszeiger + vector vecFkt; +}; + +// No Code behind this line! +#endif \ No newline at end of file diff --git a/Bachelor/Softwaretechnik2/mixer/TestSuite.cpp b/Bachelor/Softwaretechnik2/mixer/TestSuite.cpp new file mode 100644 index 0000000..87149a9 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/TestSuite.cpp @@ -0,0 +1,44 @@ +#include +using namespace std; + +#include "TestSuite.h" + +// Konstruktor +TestSuite::TestSuite( char* name ) +{ + if (name != 0) + strncpy( tsName, name, sizeof(tsName)-1 ); + else + tsName[0] = 0; // leerer String +} +//! Destruktor +TestSuite::~TestSuite() +{ + // entfernen angelegter Objekte + for (int i = 0; i < vecTst.size() ; i++ ) + { + if ( vecTst[i] != 0 ) + delete vecTst[i]; + vecTst[i] = 0; + } // end for + +} + + + +// Hinzufügen von Testfunktionen +void TestSuite::addTest( Test* pT ) +{ + vecTst.push_back( pT ); +} + +// Test-Run für Test Case +void TestSuite::run() +{ + cout << "-> Running TestSuite " << tsName << endl; + + for (int i = 0; i < vecTst.size() ; i++ ) + { + vecTst[i]->run(); + } // end for +} \ No newline at end of file diff --git a/Bachelor/Softwaretechnik2/mixer/TestSuite.h b/Bachelor/Softwaretechnik2/mixer/TestSuite.h new file mode 100644 index 0000000..1c69c01 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/TestSuite.h @@ -0,0 +1,41 @@ +#ifndef _TESTSUITE__H +#define _TESTSUITE__H + +// #include "TestResult.h" +#include "Test.h" +#include + +class TestSuite : public Test +{ +public: + /** + * Konstruktor. + * Klasse muss nicht abgeleitet, kann direkt verwendet werden + * @param name [optional] char* Name der Testklasse + */ + TestSuite( char* name = 0); + + //! Destruktor + virtual ~TestSuite(); + + /** + * Ausführen aller Tests in der Testklasse + */ + virtual void run(); + + /** + * Hinzufügen von TestCase's in die TestSuite. + * @param pTest Test* Zeiger auf Testklasse abgeleitet von TestCase + * oder Zeiger auf eine weitere TestSuite + * @todo Dokumentation hinzufügen + */ + void addTest(Test* pTest); + +protected: + vector vecTst; //!< Vector für TestCase oder Suite + char tsName[32]; //!< Name of the Test Case +}; + + +// No Code behind this line! +#endif \ No newline at end of file diff --git a/Bachelor/Softwaretechnik2/mixer/main.cpp b/Bachelor/Softwaretechnik2/mixer/main.cpp new file mode 100644 index 0000000..41e664a --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/main.cpp @@ -0,0 +1,52 @@ +//#include "CRezept.hpp" +//#include "CDisplay.hpp" +#include "CGeraet.hpp" +#include "CObserver.hpp" +#include "CRezeptProcessor.hpp" +#include "CRezeptSchritt.hpp" +#include "CRezept.hpp" +#include "CSubjekt.hpp" +#include "CWaage.hpp" +#include "TestSuite.h" +#include "TestCWaage.h" +#include "TestCDosierer.h" +//#include "CDosierer.hpp" + +#include +using std::cout; +using std::cin; +using std::endl; + +// hier ist der Schalter für Testen ! +const bool TEST = true; + +int main(){ + + cout << "\"Entwicklung Cocktailmischer\" version " + << __DATE__ << " " << __TIME__ + << endl << endl; + + if (TEST) // Test ausführen + { + // Test Suite erzeugen + TestSuite testSammlung("Alle_Tests"); + + // Neuen Test erzeugen und hinzufügen + testSammlung.addTest( new TestCDosierer ); + testSammlung.addTest( new TestCWaage); + + + // Alle(!) Tests starten + testSammlung.run(); + + return 0; // Programm beenden + + } // Ende aller Tests + else + + CRezeptProzessor *crp = new CRezeptProzessor; + + +return 0; +} + diff --git a/Bachelor/Softwaretechnik2/mixer/makefile b/Bachelor/Softwaretechnik2/mixer/makefile new file mode 100644 index 0000000..4102c62 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/makefile @@ -0,0 +1,17 @@ +all: + g++ -O3 -c -o CDisplay.o CDisplay.cpp + g++ -O3 -c -o CRezept.o CRezept.cpp + g++ -O3 -c -o CRezeptProcessor.o CRezeptProcessor.cpp + g++ -O3 -c -o CRezeptSchritt.o CRezeptSchritt.cpp + g++ -O3 -c -o CDosierer.o CDosierer.cpp + g++ -O3 -c -o CGeraet.o CGeraet.cpp + g++ -O3 -c -o CVentilGeraet.o CVentilGeraet.cpp + g++ -O3 -c -o CSubjekt.o CSubjekt.cpp + g++ -O3 -c -o CObserver.o CObserver.cpp + g++ -O3 -c -o CWaage.o CWaage.cpp + g++ -O3 -c -o CMischer.o CMischer.cpp + g++ -O3 -c -o CStampfer.o CStampfer.cpp + g++ -O3 -c -o CEntleerer.o CEntleerer.cpp + g++ -O3 -c -o main.o main.cpp + + g++ -O3 -o mixer *.o diff --git a/Bachelor/Softwaretechnik2/mixer/mixer.dsp b/Bachelor/Softwaretechnik2/mixer/mixer.dsp new file mode 100644 index 0000000..06a0beb --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/mixer.dsp @@ -0,0 +1,204 @@ +# Microsoft Developer Studio Project File - Name="mixer" - Package Owner=<4> +# Microsoft Developer Studio Generated Build File, Format Version 6.00 +# ** NICHT BEARBEITEN ** + +# TARGTYPE "Win32 (x86) Console Application" 0x0103 + +CFG=mixer - Win32 Debug +!MESSAGE Dies ist kein gültiges Makefile. Zum Erstellen dieses Projekts mit NMAKE +!MESSAGE verwenden Sie den Befehl "Makefile exportieren" und führen Sie den Befehl +!MESSAGE +!MESSAGE NMAKE /f "mixer.mak". +!MESSAGE +!MESSAGE Sie können beim Ausführen von NMAKE eine Konfiguration angeben +!MESSAGE durch Definieren des Makros CFG in der Befehlszeile. Zum Beispiel: +!MESSAGE +!MESSAGE NMAKE /f "mixer.mak" CFG="mixer - Win32 Debug" +!MESSAGE +!MESSAGE Für die Konfiguration stehen zur Auswahl: +!MESSAGE +!MESSAGE "mixer - Win32 Release" (basierend auf "Win32 (x86) Console Application") +!MESSAGE "mixer - Win32 Debug" (basierend auf "Win32 (x86) Console Application") +!MESSAGE + +# Begin Project +# PROP AllowPerConfigDependencies 0 +# PROP Scc_ProjName "mixer" +# PROP Scc_LocalPath "." +CPP=cl.exe +RSC=rc.exe + +!IF "$(CFG)" == "mixer - Win32 Release" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 0 +# PROP BASE Output_Dir "Release" +# PROP BASE Intermediate_Dir "Release" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 0 +# PROP Output_Dir "Release" +# PROP Intermediate_Dir "Release" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c +# ADD BASE RSC /l 0x407 /d "NDEBUG" +# ADD RSC /l 0x407 /d "NDEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386 + +!ELSEIF "$(CFG)" == "mixer - Win32 Debug" + +# PROP BASE Use_MFC 0 +# PROP BASE Use_Debug_Libraries 1 +# PROP BASE Output_Dir "mixer___Win32_Debug" +# PROP BASE Intermediate_Dir "mixer___Win32_Debug" +# PROP BASE Target_Dir "" +# PROP Use_MFC 0 +# PROP Use_Debug_Libraries 1 +# PROP Output_Dir "mixer___Win32_Debug" +# PROP Intermediate_Dir "mixer___Win32_Debug" +# PROP Target_Dir "" +# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c +# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /FR /YX /FD /GZ /c +# ADD BASE RSC /l 0x407 /d "_DEBUG" +# ADD RSC /l 0x407 /d "_DEBUG" +BSC32=bscmake.exe +# ADD BASE BSC32 /nologo +# ADD BSC32 /nologo +LINK32=link.exe +# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept +# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept + +!ENDIF + +# Begin Target + +# Name "mixer - Win32 Release" +# Name "mixer - Win32 Debug" +# Begin Group "Quellcodedateien" + +# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" +# Begin Source File + +SOURCE=.\CDisplay.cpp +# End Source File +# Begin Source File + +SOURCE=.\CDosierer.cpp +# End Source File +# Begin Source File + +SOURCE=.\CEntleerer.cpp +# End Source File +# Begin Source File + +SOURCE=.\CGeraet.cpp +# End Source File +# Begin Source File + +SOURCE=.\CMischer.cpp +# End Source File +# Begin Source File + +SOURCE=.\CObserver.cpp +# End Source File +# Begin Source File + +SOURCE=.\CRezept.cpp +# End Source File +# Begin Source File + +SOURCE=.\CRezeptProcessor.cpp +# End Source File +# Begin Source File + +SOURCE=.\CRezeptSchritt.cpp +# End Source File +# Begin Source File + +SOURCE=.\CStampfer.cpp +# End Source File +# Begin Source File + +SOURCE=.\CSubjekt.cpp +# End Source File +# Begin Source File + +SOURCE=.\CVentilGeraet.cpp +# End Source File +# Begin Source File + +SOURCE=.\CWaage.cpp +# End Source File +# Begin Source File + +SOURCE=.\main.cpp +# End Source File +# End Group +# Begin Group "Header-Dateien" + +# PROP Default_Filter "h;hpp;hxx;hm;inl" +# Begin Source File + +SOURCE=.\CDisplay.hpp +# End Source File +# Begin Source File + +SOURCE=.\CDosierer.hpp +# End Source File +# Begin Source File + +SOURCE=.\CEntleerer.hpp +# End Source File +# Begin Source File + +SOURCE=.\CGeraet.hpp +# End Source File +# Begin Source File + +SOURCE=.\CMischer.hpp +# End Source File +# Begin Source File + +SOURCE=.\CObserver.hpp +# End Source File +# Begin Source File + +SOURCE=.\CRezept.hpp +# End Source File +# Begin Source File + +SOURCE=.\CRezeptProcessor.hpp +# End Source File +# Begin Source File + +SOURCE=.\CRezeptSchritt.hpp +# End Source File +# Begin Source File + +SOURCE=.\CStampfer.hpp +# End Source File +# Begin Source File + +SOURCE=.\CSubjekt.hpp +# End Source File +# Begin Source File + +SOURCE=.\CVentilGeraet.hpp +# End Source File +# Begin Source File + +SOURCE=.\CWaage.hpp +# End Source File +# End Group +# Begin Group "Ressourcendateien" + +# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe" +# End Group +# End Target +# End Project diff --git a/Bachelor/Softwaretechnik2/mixer/mixer.dsw b/Bachelor/Softwaretechnik2/mixer/mixer.dsw new file mode 100644 index 0000000..2537e8c --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/mixer.dsw @@ -0,0 +1,33 @@ +Microsoft Developer Studio Workspace File, Format Version 6.00 +# WARNUNG: DIESE ARBEITSBEREICHSDATEI DARF NICHT BEARBEITET ODER GELÖSCHT WERDEN! + +############################################################################### + +Project: "mixer"=.\mixer.dsp - Package Owner=<4> + +Package=<5> +{{{ + begin source code control + mixer + . + end source code control +}}} + +Package=<4> +{{{ +}}} + +############################################################################### + +Global: + +Package=<5> +{{{ +}}} + +Package=<3> +{{{ +}}} + +############################################################################### + diff --git a/Bachelor/Softwaretechnik2/mixer/mixer.ncb b/Bachelor/Softwaretechnik2/mixer/mixer.ncb new file mode 100644 index 0000000..947ed26 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer.ncb differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer.opt b/Bachelor/Softwaretechnik2/mixer/mixer.opt new file mode 100644 index 0000000..08337d8 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer.opt differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer.plg b/Bachelor/Softwaretechnik2/mixer/mixer.plg new file mode 100644 index 0000000..a1c7be9 --- /dev/null +++ b/Bachelor/Softwaretechnik2/mixer/mixer.plg @@ -0,0 +1,16 @@ + + +
+

Erstellungsprotokoll

+

+--------------------Konfiguration: mixer - Win32 Debug-------------------- +

+

Befehlszeilen

+ + + +

Ergebnisse

+mixer.exe - 0 Fehler, 0 Warnung(en) +
+ + diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.obj new file mode 100644 index 0000000..5119538 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDisplay.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.obj new file mode 100644 index 0000000..23ae425 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CDosierer.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.obj new file mode 100644 index 0000000..f48224a Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CEntleerer.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.obj new file mode 100644 index 0000000..3806402 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CGeraet.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.obj new file mode 100644 index 0000000..7117b03 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CMischer.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.obj new file mode 100644 index 0000000..b9c1bb9 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CObserver.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.obj new file mode 100644 index 0000000..48795c2 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezept.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.obj new file mode 100644 index 0000000..d7f372f Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptProcessor.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.obj new file mode 100644 index 0000000..aca28a7 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CRezeptSchritt.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.obj new file mode 100644 index 0000000..5e9edc7 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CStampfer.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.obj new file mode 100644 index 0000000..19f6051 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CSubjekt.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.obj new file mode 100644 index 0000000..158abaa Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CVentilGeraet.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.obj new file mode 100644 index 0000000..faffbf1 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/CWaage.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.obj b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.obj new file mode 100644 index 0000000..7a08063 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.obj differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.sbr b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/main.sbr new file mode 100644 index 0000000..e69de29 diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.bsc b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.bsc new file mode 100644 index 0000000..9e108f5 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.bsc differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.exe b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.exe new file mode 100644 index 0000000..ebdb61a Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.exe differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.ilk b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.ilk new file mode 100644 index 0000000..69830df Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.ilk differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pch b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pch new file mode 100644 index 0000000..68c88cd Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pch differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pdb b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pdb new file mode 100644 index 0000000..aa0d88f Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/mixer.pdb differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.idb b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.idb new file mode 100644 index 0000000..a97d9e3 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.idb differ diff --git a/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.pdb b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.pdb new file mode 100644 index 0000000..f994d86 Binary files /dev/null and b/Bachelor/Softwaretechnik2/mixer/mixer___Win32_Debug/vc60.pdb differ -- cgit v1.2.3