From 606ae797581e0531aee283b4623f8cb89abe5c49 Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 4 Dec 2014 10:02:08 +0100 Subject: [PATCH 01/17] HeightProfileCheck untested --- Programm/Sources/HeightProfileCheck.cpp | 98 +++++++++++++++++++++++++ Programm/Sources/HeightProfileCheck.h | 16 +++- 2 files changed, 112 insertions(+), 2 deletions(-) diff --git a/Programm/Sources/HeightProfileCheck.cpp b/Programm/Sources/HeightProfileCheck.cpp index 09c32b8..53d21e7 100644 --- a/Programm/Sources/HeightProfileCheck.cpp +++ b/Programm/Sources/HeightProfileCheck.cpp @@ -9,3 +9,101 @@ */ #include "HeightProfileCheck.h" + + +HeightProfileCheck::HeightProfileCheck(FestoProcessSensors *process) { + this->process = process; + currentState = Standby; + + logFile.open("hightCheckLog.txt"); +} + +HeightProfileCheck::~HeightProfileCheck() { + this->process = NULL; + + logFile.close(); +} + +void HeightProfileCheck::evalCycle() { + evalEvents(); + evalState(); +} + +void HeightProfileCheck::evalEvents() { + unsigned short height = process->getHight(); + heights heightLevel = Incorrect; + + if ( (lowVal-tolSmall) <= height && height <= (lowVal+tolSmall) ) { + heightLevel = Low; + }else if ( (midVal-tolWide) <= height && height <= (midVal+tolWide) ) { + heightLevel = Middle; + }else if ( (highVal-tolWide) <= height && height <= (highVal+tolWide) ) { + heightLevel = High; + }else { + heightLevel = Incorrect; + } + + + switch (currentState) { + case Standby: + if (heightLevel == High) { + currentState = ItemDetected; + } + break; + case ItemDetected: + if (heightLevel == Low) { + currentState = Standby; + }else if (heightLevel == Middle) { + currentState = ItemWrong; + } + break; + case ItemWrong: + if (heightLevel == High) { + currentState = WrongType2; + }else if (heightLevel == Low) { + currentState = WrongType1; + } + break; + case WrongType1: + currentState = Standby; + break; + case WrongType2: + currentState = Standby; + break; + + default: + break; + } +} + +void HeightProfileCheck::evalState() { + switch (currentState) { + case Standby: + itemDiagnosis = 0; + break; + case WrongType1: + itemDiagnosis = 1; + logDefectType("defect type 1"); + break; + case WrongType2: + itemDiagnosis = 1; + logDefectType("defect type 2"); + break; + + default: + break; + } + +} + +bool HeightProfileCheck::result() { + return itemDiagnosis; +} + +void HeightProfileCheck::logDefectType(std::string defectDecsription) { + if (logFile.is_open()) { + logFile << time(NULL) << " wrong item: " << defectDecsription << std::endl; + }else { + std::cout << "logfile can´t be accessed" << std::endl; + } +} \ No newline at end of file diff --git a/Programm/Sources/HeightProfileCheck.h b/Programm/Sources/HeightProfileCheck.h index daf0ec4..4742c2a 100644 --- a/Programm/Sources/HeightProfileCheck.h +++ b/Programm/Sources/HeightProfileCheck.h @@ -11,17 +11,29 @@ #ifndef HEIGHT_PROFILE_CHECK_H #define HEIGHT_PROFILE_CHECK_H +#include +#include + #include "plugin.h" #include "FestoProcessSensors.h" -enum heights {Low, Middle, High}; +enum heights {Low, Middle, High, Incorrect}; enum fsm_states {Standby, ItemDetected, ItemWrong, WrongType1, WrongType2}; + +int lowVal = 3780; +int midVal = 3380; +int highVal = 3082; +int tolSmall = 10; +int tolWide = 60; + + class HeightProfileCheck { private: fsm_states currentState; FestoProcessSensors *process; bool itemDiagnosis; + std::ofstream logFile; public: HeightProfileCheck( FestoProcessSensors *process); ~HeightProfileCheck(); @@ -32,7 +44,7 @@ class HeightProfileCheck { void evalCycle(); bool result(); private: - void logDefectType( ); + void logDefectType(std::string defectDecsription); }; #endif From 9e7e415e2f84a07577eed41926d58597ac46a616 Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 4 Dec 2014 16:38:08 +0100 Subject: [PATCH 02/17] plugin enabled in FSMFactory corrections made to enum names due to compiler errors --- Programm/Sources/HeightProfileCheck.cpp | 12 ++++++------ Programm/Sources/HeightProfileCheck.h | 18 +++++++++--------- Programm/Sources/factory.cpp | 7 ++++--- 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/Programm/Sources/HeightProfileCheck.cpp b/Programm/Sources/HeightProfileCheck.cpp index 53d21e7..880a26d 100644 --- a/Programm/Sources/HeightProfileCheck.cpp +++ b/Programm/Sources/HeightProfileCheck.cpp @@ -13,7 +13,7 @@ HeightProfileCheck::HeightProfileCheck(FestoProcessSensors *process) { this->process = process; - currentState = Standby; + currentState = H_Standby; logFile.open("hightCheckLog.txt"); } @@ -45,14 +45,14 @@ void HeightProfileCheck::evalEvents() { switch (currentState) { - case Standby: + case H_Standby: if (heightLevel == High) { currentState = ItemDetected; } break; case ItemDetected: if (heightLevel == Low) { - currentState = Standby; + currentState = H_Standby; }else if (heightLevel == Middle) { currentState = ItemWrong; } @@ -65,10 +65,10 @@ void HeightProfileCheck::evalEvents() { } break; case WrongType1: - currentState = Standby; + currentState = H_Standby; break; case WrongType2: - currentState = Standby; + currentState = H_Standby; break; default: @@ -78,7 +78,7 @@ void HeightProfileCheck::evalEvents() { void HeightProfileCheck::evalState() { switch (currentState) { - case Standby: + case H_Standby: itemDiagnosis = 0; break; case WrongType1: diff --git a/Programm/Sources/HeightProfileCheck.h b/Programm/Sources/HeightProfileCheck.h index 4742c2a..250309a 100644 --- a/Programm/Sources/HeightProfileCheck.h +++ b/Programm/Sources/HeightProfileCheck.h @@ -18,19 +18,19 @@ #include "FestoProcessSensors.h" enum heights {Low, Middle, High, Incorrect}; -enum fsm_states {Standby, ItemDetected, ItemWrong, WrongType1, WrongType2}; +enum height_fsm_states {H_Standby, ItemDetected, ItemWrong, WrongType1, WrongType2}; -int lowVal = 3780; -int midVal = 3380; -int highVal = 3082; -int tolSmall = 10; -int tolWide = 60; +const int lowVal = 3780; +const int midVal = 3380; +const int highVal = 3082; +const int tolSmall = 10; +const int tolWide = 60; -class HeightProfileCheck { +class HeightProfileCheck : public Plugin{ private: - fsm_states currentState; + height_fsm_states currentState; FestoProcessSensors *process; bool itemDiagnosis; std::ofstream logFile; @@ -47,4 +47,4 @@ class HeightProfileCheck { void logDefectType(std::string defectDecsription); }; -#endif +#endif /* HEIGHT_PROFILE_CHECK_H */ diff --git a/Programm/Sources/factory.cpp b/Programm/Sources/factory.cpp index 068b2da..12ef4ce 100755 --- a/Programm/Sources/factory.cpp +++ b/Programm/Sources/factory.cpp @@ -11,12 +11,13 @@ #include "factory.h" #include "FestoProcessAccess.h" #include "minilab1008processimage.h" +#include "HeightProfileCheck.h" FSM* FSMFactory::createFSM(){ - // Create Objects + // Create Objects FestoProcessImage* processImage = new FestoMiniLab1008ProcessImage(); FestoProcessAccess* processAccess = new FestoProcessAccess(processImage); - //Plugin* plugin = new ... - FSM* fsm = new FSM(processAccess, NULL); + Plugin* plugin = new HeightProfileCheck(processAccess); + FSM* fsm = new FSM(processAccess, plugin); return fsm; } From 41fc526a5d1db335f8115cc96beff679b59e448d Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Mon, 8 Dec 2014 16:33:00 +0100 Subject: [PATCH 03/17] fsm ready for plugin --- Programm/Sources/FestoProcessAccess.cpp | 8 ++++++++ Programm/Sources/FestoProcessAccess.h | 4 ++++ Programm/Sources/FestoProcessSensors.h | 2 +- Programm/Sources/HeightProfileCheck.cpp | 10 +++++----- Programm/Sources/HeightProfileCheck.h | 8 ++++---- Programm/Sources/fsm.cpp | 23 ++++++++++++++++++++++- Programm/Sources/fsm.h | 2 +- 7 files changed, 45 insertions(+), 12 deletions(-) diff --git a/Programm/Sources/FestoProcessAccess.cpp b/Programm/Sources/FestoProcessAccess.cpp index 36c2608..0383f74 100755 --- a/Programm/Sources/FestoProcessAccess.cpp +++ b/Programm/Sources/FestoProcessAccess.cpp @@ -32,6 +32,10 @@ FestoProcessAccess::~FestoProcessAccess() { } } +void FestoProcessAccess::addPlugin(Plugin *heightPlugin) { + plugin = heightPlugin; +} + void FestoProcessAccess::updateInputs(void) { timeCounter = time(NULL); process->updateProcessImage(); @@ -149,6 +153,10 @@ bool FestoProcessAccess::isItemAtHightSensor(void) { return !(process->isBitSet(ITEM_AT_HIGHT_SENSOR)); // active low }; +bool FestoProcessAccess::hasItemCorrectHight(void) { + return !(plugin->result()); // true is item with defect +} + bool FestoProcessAccess::isItemAtMetalDetector(void) { return !(process->isBitSet(ITEM_AT_JUNCTION)); // active low } diff --git a/Programm/Sources/FestoProcessAccess.h b/Programm/Sources/FestoProcessAccess.h index e6e653d..a0c217f 100755 --- a/Programm/Sources/FestoProcessAccess.h +++ b/Programm/Sources/FestoProcessAccess.h @@ -16,6 +16,7 @@ #include "FestoProcessSensors.h" #include "processimage.h" +#include "plugin.h" #define LOG_PROCESS @@ -23,11 +24,13 @@ class FestoProcessAccess : public FestoProcessSensors { private: time_t timeCounter; FestoProcessImage* process; + Plugin* plugin; FILE* logFile; public: FestoProcessAccess(FestoProcessImage* processImage); virtual ~FestoProcessAccess(); + void addPlugin(Plugin* heightPlugin); public: void updateInputs(void); void applyOutput(void); @@ -57,6 +60,7 @@ class FestoProcessAccess : public FestoProcessSensors { virtual bool isItemAtBeginning(void); virtual bool isItemAtHightSensor(void); + virtual bool hasItemCorrectHight(void); virtual bool isItemAtMetalDetector(void); virtual bool isMetalDetected(void); virtual bool isJunctionOpen(void); diff --git a/Programm/Sources/FestoProcessSensors.h b/Programm/Sources/FestoProcessSensors.h index d91715c..d13479a 100755 --- a/Programm/Sources/FestoProcessSensors.h +++ b/Programm/Sources/FestoProcessSensors.h @@ -16,7 +16,7 @@ class FestoProcessSensors { public: virtual bool isItemAtBeginning(void) = 0; virtual bool isItemAtHightSensor(void) = 0; - //virtual bool hasItemCorrectHight(void)= 0; + virtual bool hasItemCorrectHight(void)= 0; virtual bool isItemAtMetalDetector(void) = 0; virtual bool isMetalDetected(void) = 0; virtual bool isJunctionOpen(void) = 0; diff --git a/Programm/Sources/HeightProfileCheck.cpp b/Programm/Sources/HeightProfileCheck.cpp index 880a26d..c9a892f 100644 --- a/Programm/Sources/HeightProfileCheck.cpp +++ b/Programm/Sources/HeightProfileCheck.cpp @@ -3,9 +3,9 @@ * * class for checking the height profile of the items * - * \author Jannik Beyerstedt - * \version 0.1 - * \date 2014-11-25 + * \author Jannik Beyerstedt, Daniel Friedrich + * \version 0.2 + * \date 2014-12-08 */ #include "HeightProfileCheck.h" @@ -100,9 +100,9 @@ bool HeightProfileCheck::result() { return itemDiagnosis; } -void HeightProfileCheck::logDefectType(std::string defectDecsription) { +void HeightProfileCheck::logDefectType(std::string defectDescription) { if (logFile.is_open()) { - logFile << time(NULL) << " wrong item: " << defectDecsription << std::endl; + logFile << time(NULL) << " wrong item: " << defectDescription << std::endl; }else { std::cout << "logfile can´t be accessed" << std::endl; } diff --git a/Programm/Sources/HeightProfileCheck.h b/Programm/Sources/HeightProfileCheck.h index 250309a..3e52a71 100644 --- a/Programm/Sources/HeightProfileCheck.h +++ b/Programm/Sources/HeightProfileCheck.h @@ -3,9 +3,9 @@ * * class for checking the height profile of the items * - * \author Jannik Beyerstedt - * \version 0.1 - * \date 2014-11-25 + * \author Jannik Beyerstedt, Daniel Friedrich + * \version 0.2 + * \date 2014-12-08 */ #ifndef HEIGHT_PROFILE_CHECK_H @@ -44,7 +44,7 @@ class HeightProfileCheck : public Plugin{ void evalCycle(); bool result(); private: - void logDefectType(std::string defectDecsription); + void logDefectType(std::string defectDescription); }; #endif /* HEIGHT_PROFILE_CHECK_H */ diff --git a/Programm/Sources/fsm.cpp b/Programm/Sources/fsm.cpp index 0485dac..37f8c9f 100755 --- a/Programm/Sources/fsm.cpp +++ b/Programm/Sources/fsm.cpp @@ -59,6 +59,9 @@ void FSM::evalEvents() { if (process->isItemAtEnd()) { currentState = Error; } + if (!(process->hasItemCorrectHight())) { + currentState = TransportBack; + } break; case MetalDetection: if (process->isMetalDetected()) { @@ -110,6 +113,16 @@ void FSM::evalEvents() { currentState = Standby; } break; + case TransportBack: + if (process->isItemAtBeginning()) { + currentState = StartReached; + } + break; + case StartReached: + if (!(process->isItemAtBeginning())) { + currentState = Standby; + } + break; default: currentState = Start; } @@ -186,7 +199,15 @@ void FSM::evalState() { process->closeJunction(); blinkRed(); break; - + case TransportBack: + process->driveLeft(); + blinkRed(); + process->lightGreenOff(); + break; + case StartReached: + process->driveStop(); + blinkRed(); + break; } } diff --git a/Programm/Sources/fsm.h b/Programm/Sources/fsm.h index 356ae3d..9b32818 100755 --- a/Programm/Sources/fsm.h +++ b/Programm/Sources/fsm.h @@ -13,7 +13,7 @@ #include "FestoProcessAccess.h" #include "plugin.h" -enum fsm_states { Start, Standby, Ready, Transport, MetalDetection, NonMetalic, Metalic, SlideReached, Error, EndReached}; +enum fsm_states { Start, Standby, Ready, Transport, MetalDetection, NonMetalic, Metalic, SlideReached, Error, EndReached, TransportBack, StartReached}; class FSM { private: From cb7c8f654ea83d5d6c4375c6750014cf6024c345 Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 11 Dec 2014 17:28:53 +0100 Subject: [PATCH 04/17] HeightProfileCheck: some comments --- Programm/Sources/HeightProfileCheck.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Programm/Sources/HeightProfileCheck.h b/Programm/Sources/HeightProfileCheck.h index 250309a..392740d 100644 --- a/Programm/Sources/HeightProfileCheck.h +++ b/Programm/Sources/HeightProfileCheck.h @@ -32,7 +32,7 @@ class HeightProfileCheck : public Plugin{ private: height_fsm_states currentState; FestoProcessSensors *process; - bool itemDiagnosis; + bool itemDiagnosis; // true if defect detected std::ofstream logFile; public: HeightProfileCheck( FestoProcessSensors *process); @@ -40,9 +40,10 @@ class HeightProfileCheck : public Plugin{ private: void evalEvents(); void evalState(); + public: void evalCycle(); - bool result(); + bool result(); // returns true if defect detected private: void logDefectType(std::string defectDecsription); }; From ba8dd8c2ef426ec48044a4e683e849d55acbfaf2 Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 11 Dec 2014 17:29:21 +0100 Subject: [PATCH 05/17] processlog files copied to Tests directory --- Programm/Tests/processlog1.txt | 531 +++++++++++++++++++++++++++++++++ Programm/Tests/processlog2.txt | 519 ++++++++++++++++++++++++++++++++ Programm/Tests/processlog3.txt | 408 +++++++++++++++++++++++++ 3 files changed, 1458 insertions(+) create mode 100755 Programm/Tests/processlog1.txt create mode 100755 Programm/Tests/processlog2.txt create mode 100755 Programm/Tests/processlog3.txt diff --git a/Programm/Tests/processlog1.txt b/Programm/Tests/processlog1.txt new file mode 100755 index 0000000..51fa123 --- /dev/null +++ b/Programm/Tests/processlog1.txt @@ -0,0 +1,531 @@ +1415882803; 0; 3780 +1415882819; 0; 3780 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3779 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3779 +1415882824; 0; 3783 +1415882824; 0; 3780 +1415882824; 0; 3779 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3779 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3779 +1415882825; 0; 3781 +1415882825; 0; 3781 +1415882825; 0; 3784 +1415882825; 0; 3781 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3779 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882826; 0; 3782 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3783 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882826; 0; 3780 +1415882826; 0; 3783 +1415882826; 0; 3781 +1415882826; 0; 3781 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882826; 0; 3781 +1415882826; 0; 3779 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882826; 0; 3780 +1415882826; 0; 3779 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3779 +1415882827; 0; 3779 +1415882827; 0; 3780 +1415882827; 0; 3779 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3784 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3781 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3779 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3779 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3781 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3779 +1415882829; 0; 3781 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3779 +1415882829; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3779 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3779 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3779 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3781 +1415882831; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3779 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3781 +1415882831; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3779 +1415882831; 0; 3780 +1415882831; 0; 3779 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3780 +1415882832; 0; 3779 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3779 +1415882832; 0; 3783 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3780 +1415882832; 0; 3780 +1415882832; 0; 3779 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882833; 0; 3778 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3781 +1415882833; 0; 3781 +1415882833; 0; 3779 +1415882833; 0; 3779 +1415882833; 0; 3781 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3779 +1415882834; 0; 3780 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3779 +1415882834; 0; 3780 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3783 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3779 +1415882834; 0; 3779 +1415882834; 0; 3779 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3779 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3779 +1415882835; 0; 3098 +1415882835; 0; 3105 +1415882835; 0; 3099 +1415882835; 0; 3100 +1415882835; 1; 3095 +1415882835; 1; 3097 +1415882835; 1; 3094 +1415882835; 1; 3101 +1415882835; 1; 3783 +1415882835; 1; 3781 +1415882835; 1; 3779 +1415882835; 1; 3779 +1415882835; 1; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3779 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3783 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3779 +1415882837; 0; 3781 +1415882837; 0; 3778 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3778 +1415882837; 0; 3778 +1415882837; 0; 3780 +1415882837; 0; 3781 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3778 +1415882838; 0; 3779 +1415882838; 0; 3778 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3778 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3780 +1415882838; 0; 3778 +1415882838; 0; 3778 +1415882838; 0; 3780 +1415882838; 0; 3778 +1415882838; 0; 3782 +1415882838; 0; 3779 +1415882838; 0; 3775 +1415882838; 0; 3779 +1415882838; 0; 3778 +1415882838; 0; 3778 +1415882838; 0; 3782 +1415882838; 0; 3779 +1415882839; 0; 3779 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3779 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3779 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3783 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3779 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3779 +1415882841; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3778 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3779 +1415882842; 0; 3781 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3779 +1415882843; 0; 3779 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3778 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3783 +1415882843; 0; 3781 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3781 +1415882844; 0; 3781 +1415882844; 0; 3781 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3781 +1415882844; 0; 3782 diff --git a/Programm/Tests/processlog2.txt b/Programm/Tests/processlog2.txt new file mode 100755 index 0000000..fefe569 --- /dev/null +++ b/Programm/Tests/processlog2.txt @@ -0,0 +1,519 @@ +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3781 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3779 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3781 +1415882920; 0; 3779 +1415882920; 0; 3779 +1415882920; 0; 3781 +1415882920; 0; 3781 +1415882920; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3781 +1415882921; 0; 3779 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3779 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3781 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3781 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3779 +1415882921; 0; 3780 +1415882921; 0; 3784 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882922; 0; 3781 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882922; 0; 3781 +1415882922; 0; 3781 +1415882922; 0; 3779 +1415882922; 0; 3780 +1415882922; 0; 3783 +1415882922; 0; 3780 +1415882922; 0; 3782 +1415882922; 0; 3781 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3781 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3779 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3779 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3783 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3782 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3782 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3781 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3779 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3779 +1415882926; 0; 3779 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3784 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3783 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3779 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3779 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3781 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882929; 0; 3781 +1415882929; 0; 3781 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3783 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3779 +1415882929; 0; 3780 +1415882929; 0; 3778 +1415882929; 0; 3779 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3779 +1415882930; 0; 3781 +1415882930; 0; 3781 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3779 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3779 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3779 +1415882931; 0; 3781 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3782 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3779 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882933; 0; 3781 +1415882933; 0; 3780 +1415882933; 0; 3781 +1415882933; 0; 3781 +1415882933; 0; 3779 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3779 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3783 +1415882933; 0; 3781 +1415882933; 0; 3779 +1415882933; 0; 3779 +1415882933; 0; 3781 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3778 +1415882934; 0; 3781 +1415882934; 0; 3780 +1415882934; 0; 3779 +1415882934; 0; 3781 +1415882934; 0; 3780 +1415882934; 0; 3779 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3779 +1415882934; 0; 3779 +1415882934; 0; 3783 +1415882934; 0; 3781 +1415882934; 0; 3781 +1415882934; 0; 3781 +1415882934; 0; 3781 +1415882934; 0; 3783 +1415882934; 0; 3779 +1415882934; 0; 3779 +1415882934; 0; 3780 +1415882934; 0; 3781 +1415882935; 0; 3780 +1415882935; 0; 3069 +1415882935; 0; 3063 +1415882935; 0; 3051 +1415882935; 0; 3089 +1415882935; 1; 3345 +1415882935; 1; 3407 +1415882935; 1; 3040 +1415882935; 1; 3099 +1415882935; 1; 3046 +1415882935; 1; 3645 +1415882935; 1; 3780 +1415882935; 1; 3779 +1415882935; 1; 3780 +1415882935; 0; 3779 +1415882935; 0; 3779 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882935; 0; 3779 +1415882935; 0; 3780 +1415882935; 0; 3781 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3779 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3781 +1415882936; 0; 3781 +1415882936; 0; 3777 +1415882936; 0; 3780 +1415882936; 0; 3779 +1415882936; 0; 3779 +1415882936; 0; 3780 +1415882936; 0; 3779 +1415882936; 0; 3779 +1415882936; 0; 3781 +1415882936; 0; 3779 +1415882936; 0; 3779 +1415882936; 0; 3780 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3780 +1415882937; 0; 3780 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3780 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3780 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3778 +1415882938; 0; 3778 +1415882938; 0; 3778 +1415882938; 0; 3780 +1415882938; 0; 3780 +1415882938; 0; 3779 +1415882938; 0; 3780 +1415882938; 0; 3779 +1415882938; 0; 3778 +1415882938; 0; 3779 +1415882938; 0; 3780 +1415882938; 0; 3777 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3780 +1415882938; 0; 3780 +1415882938; 0; 3780 +1415882938; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3779 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3781 +1415882939; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3782 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3782 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3782 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882941; 0; 3780 +1415882941; 0; 3781 diff --git a/Programm/Tests/processlog3.txt b/Programm/Tests/processlog3.txt new file mode 100755 index 0000000..660f54a --- /dev/null +++ b/Programm/Tests/processlog3.txt @@ -0,0 +1,408 @@ +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3779 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883056; 0; 3781 +1415883056; 0; 3781 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3779 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3781 +1415883057; 0; 3781 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883058; 0; 3780 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3780 +1415883058; 0; 3779 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3779 +1415883058; 0; 3780 +1415883058; 0; 3780 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3779 +1415883058; 0; 3780 +1415883058; 0; 3782 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3780 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3780 +1415883059; 0; 3784 +1415883059; 0; 3782 +1415883059; 0; 3783 +1415883059; 0; 3779 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3779 +1415883059; 0; 3780 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3779 +1415883059; 0; 3780 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3779 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3779 +1415883060; 0; 3778 +1415883060; 0; 3779 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883061; 0; 3778 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3779 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3784 +1415883061; 0; 3780 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3779 +1415883062; 0; 3780 +1415883062; 0; 3779 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883063; 0; 3781 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3779 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3779 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3778 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3781 +1415883063; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3781 +1415883064; 0; 3779 +1415883064; 0; 3779 +1415883064; 0; 3781 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3782 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3781 +1415883064; 0; 3779 +1415883064; 0; 3780 +1415883064; 0; 3780 +1415883064; 0; 3779 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3779 +1415883065; 0; 3779 +1415883065; 0; 3779 +1415883065; 0; 3782 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3781 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3782 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3782 +1415883065; 0; 3780 +1415883065; 0; 3781 +1415883065; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3781 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3779 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3779 +1415883066; 0; 3121 +1415883067; 0; 3106 +1415883067; 0; 3125 +1415883067; 1; 3413 +1415883067; 1; 3410 +1415883067; 1; 3416 +1415883067; 1; 3410 +1415883067; 1; 3780 +1415883067; 1; 3781 +1415883067; 1; 3780 +1415883067; 1; 3781 +1415883067; 1; 3779 +1415883067; 1; 3780 +1415883067; 0; 3780 +1415883067; 0; 3780 +1415883067; 0; 3779 +1415883067; 0; 3781 +1415883067; 0; 3780 +1415883067; 0; 3780 +1415883067; 0; 3781 +1415883067; 0; 3779 +1415883067; 0; 3778 +1415883067; 0; 3780 +1415883067; 0; 3779 +1415883067; 0; 3782 +1415883067; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3781 +1415883068; 0; 3780 +1415883068; 0; 3780 +1415883068; 0; 3781 +1415883068; 0; 3781 +1415883068; 0; 3780 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3780 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3779 +1415883068; 0; 3779 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3778 +1415883068; 0; 3778 +1415883068; 0; 3778 +1415883068; 0; 3779 +1415883068; 0; 3781 +1415883068; 0; 3778 +1415883068; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3782 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883069; 0; 3778 +1415883069; 0; 3778 +1415883069; 0; 3778 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883070; 0; 3780 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3778 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3780 +1415883070; 0; 3782 +1415883070; 0; 3778 +1415883070; 0; 3778 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3780 +1415883070; 0; 3781 +1415883070; 0; 3780 +1415883070; 0; 3780 +1415883070; 0; 3779 +1415883070; 0; 3782 +1415883070; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3781 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3781 +1415883071; 0; 3779 +1415883071; 0; 3780 +1415883071; 0; 3780 +1415883071; 0; 3779 +1415883071; 0; 3780 +1415883071; 0; 3782 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3780 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3780 +1415883072; 0; 3780 +1415883072; 0; 3780 +1415883072; 0; 3781 +1415883072; 0; 3781 From da66c4fd55fa9b9df94e68613e06c503e2bfead8 Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 11 Dec 2014 17:30:45 +0100 Subject: [PATCH 06/17] [Test] UnitTester complete and tested main modified for the UnitTester --- Programm/Sources/main.cpp | 10 ++++ Programm/Tests/StubHeightSensor.cpp | 9 +++ Programm/Tests/StubHeightSensor.h | 20 ++++++- Programm/Tests/UnitTester.cpp | 91 +++++++++++++++++++++++++++++ Programm/Tests/UnitTester.h | 19 ++++++ 5 files changed, 148 insertions(+), 1 deletion(-) create mode 100644 Programm/Tests/UnitTester.cpp diff --git a/Programm/Sources/main.cpp b/Programm/Sources/main.cpp index cc4d8b2..040801a 100755 --- a/Programm/Sources/main.cpp +++ b/Programm/Sources/main.cpp @@ -8,7 +8,12 @@ #include #include +#define TEST // enable tests + #include "factory.h" +#ifdef TEST +#include "UnitTester.h" +#endif using namespace std; @@ -16,6 +21,11 @@ using namespace std; * */ int main(int argc, char** argv) { + +#ifdef TEST + volatile UnitTester t; +#endif + bool run = true; // set this variable to false whilst debugging to end program. FSMFactory factory; diff --git a/Programm/Tests/StubHeightSensor.cpp b/Programm/Tests/StubHeightSensor.cpp index a6520e3..206952e 100644 --- a/Programm/Tests/StubHeightSensor.cpp +++ b/Programm/Tests/StubHeightSensor.cpp @@ -10,3 +10,12 @@ */ #include "StubHeightSensor.h" + + +unsigned short StubHeightSensor::getHight() { + return height; +} + +void StubHeightSensor::setHightValue(unsigned short height){ + this->height = height; +} \ No newline at end of file diff --git a/Programm/Tests/StubHeightSensor.h b/Programm/Tests/StubHeightSensor.h index 08799b7..18db4b3 100644 --- a/Programm/Tests/StubHeightSensor.h +++ b/Programm/Tests/StubHeightSensor.h @@ -19,7 +19,25 @@ class StubHeightSensor : public FestoProcessSensors { public: virtual unsigned short getHight(); - void setHightVale(unsigned short height); + void setHightValue(unsigned short height); + +public: + bool isItemAtBeginning(void) {return 0;}; + bool isItemAtHightSensor(void) {return 0;}; + //bool hasItemCorrectHight(void){return 0;}; + bool isItemAtMetalDetector(void) {return 0;}; + bool isMetalDetected(void) {return 0;}; + bool isJunctionOpen(void) {return 0;}; + bool isItemAtSlide(void) {return 0;}; + bool hasItemPassedSlide(void) {return 0;}; + bool isItemAtEnd(void) {return 0;}; + bool isButtonStartPressed(void) {return 0;}; + bool isButtonStartPositiveEdge(void) {return 0;}; + bool isButtonStartNegativeEdge(void) {return 0;}; + bool isButtonStopPressed(void) {return 0;}; + bool isButtonResetPressed(void) {return 0;}; + bool isButtonEmergencyActive(void) {return 0;}; + time_t timeCounter1s() {return 0;}; }; #endif diff --git a/Programm/Tests/UnitTester.cpp b/Programm/Tests/UnitTester.cpp new file mode 100644 index 0000000..ad72fd6 --- /dev/null +++ b/Programm/Tests/UnitTester.cpp @@ -0,0 +1,91 @@ +/** + * File: UnitTester.cpp + * + * unit-test for plugin HeightProfileCheck + * + * \author Jannik Beyerstedt + * \version 0.1 + * \date 2014-11-25 + */ + +#include + +#include "UnitTester.h" +#include "ti_assertion.h" +#include + +using namespace std; + +UnitTester::UnitTester() { + sensorStub = new StubHeightSensor(); + unitUnderTest = new HeightProfileCheck(sensorStub); + + doTest(); +} + +UnitTester::~UnitTester() { + delete unitUnderTest; +} + +void UnitTester::doTest() { + ifstream inputData; + int dump; char sep; + + unsigned short height; + int trueCount = 0; + + // good part: result always false + inputData.open("processlog1.txt"); + while (inputData >> dump >> sep >> dump >> sep >> height) { + sensorStub->setHightValue(height); + unitUnderTest->evalCycle(); + + if (unitUnderTest->result()) { + trueCount++; + } + } + ASSERT(0 == trueCount); + + cout << "-- good part complete" << endl; + inputData.close(); + trueCount = 0; + + + // bad part1: result should be one time true + inputData.open("processlog2.txt"); + while (inputData >> dump >> sep >> dump >> sep >> height) { + sensorStub->setHightValue(height); + unitUnderTest->evalCycle(); + + if (unitUnderTest->result()) { + trueCount++; + } + } + ASSERT(1 == trueCount); + + cout << "-- bad part 1 complete" << endl; + inputData.close(); + trueCount = 0; + + + // bad part2: result should be one time true + inputData.open("processlog3.txt"); + while (inputData >> dump >> sep >> dump >> sep >> height) { + sensorStub->setHightValue(height); + unitUnderTest->evalCycle(); + + if (unitUnderTest->result()) { + trueCount++; + } + } + ASSERT(1 == trueCount); + + cout << "-- bad part 2 complete" << endl; + inputData.close(); + trueCount = 0; + + + cout << "all tests done, result see above!" << endl; +} + + diff --git a/Programm/Tests/UnitTester.h b/Programm/Tests/UnitTester.h index cabb758..9956abe 100644 --- a/Programm/Tests/UnitTester.h +++ b/Programm/Tests/UnitTester.h @@ -11,5 +11,24 @@ #ifndef UNIT_TESTER_H #define UNIT_TESTER_H +#include +#include + +#include "HeightProfileCheck.h" +#include "StubHeightSensor.h" + + +class UnitTester { + HeightProfileCheck* unitUnderTest; + //FestoProcessSensors* sensorStub; + StubHeightSensor* sensorStub; + +public: + UnitTester(); + ~UnitTester(); +private: + void doTest(); +}; + #endif From c0b9a94e1af116782c3b142aea24b0f6656a4b2a Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 11 Dec 2014 17:40:05 +0100 Subject: [PATCH 07/17] Merge branch 'jannik-code' into dont-touch for latest plugin code --- Programm/Sources/FestoProcessAccess.cpp | 8 ++++++++ Programm/Sources/FestoProcessAccess.h | 4 ++++ Programm/Sources/FestoProcessSensors.h | 2 +- Programm/Sources/HeightProfileCheck.cpp | 10 +++++----- Programm/Sources/HeightProfileCheck.h | 8 ++++---- Programm/Sources/fsm.cpp | 23 ++++++++++++++++++++++- Programm/Sources/fsm.h | 2 +- 7 files changed, 45 insertions(+), 12 deletions(-) diff --git a/Programm/Sources/FestoProcessAccess.cpp b/Programm/Sources/FestoProcessAccess.cpp index 36c2608..0383f74 100755 --- a/Programm/Sources/FestoProcessAccess.cpp +++ b/Programm/Sources/FestoProcessAccess.cpp @@ -32,6 +32,10 @@ FestoProcessAccess::~FestoProcessAccess() { } } +void FestoProcessAccess::addPlugin(Plugin *heightPlugin) { + plugin = heightPlugin; +} + void FestoProcessAccess::updateInputs(void) { timeCounter = time(NULL); process->updateProcessImage(); @@ -149,6 +153,10 @@ bool FestoProcessAccess::isItemAtHightSensor(void) { return !(process->isBitSet(ITEM_AT_HIGHT_SENSOR)); // active low }; +bool FestoProcessAccess::hasItemCorrectHight(void) { + return !(plugin->result()); // true is item with defect +} + bool FestoProcessAccess::isItemAtMetalDetector(void) { return !(process->isBitSet(ITEM_AT_JUNCTION)); // active low } diff --git a/Programm/Sources/FestoProcessAccess.h b/Programm/Sources/FestoProcessAccess.h index e6e653d..a0c217f 100755 --- a/Programm/Sources/FestoProcessAccess.h +++ b/Programm/Sources/FestoProcessAccess.h @@ -16,6 +16,7 @@ #include "FestoProcessSensors.h" #include "processimage.h" +#include "plugin.h" #define LOG_PROCESS @@ -23,11 +24,13 @@ class FestoProcessAccess : public FestoProcessSensors { private: time_t timeCounter; FestoProcessImage* process; + Plugin* plugin; FILE* logFile; public: FestoProcessAccess(FestoProcessImage* processImage); virtual ~FestoProcessAccess(); + void addPlugin(Plugin* heightPlugin); public: void updateInputs(void); void applyOutput(void); @@ -57,6 +60,7 @@ class FestoProcessAccess : public FestoProcessSensors { virtual bool isItemAtBeginning(void); virtual bool isItemAtHightSensor(void); + virtual bool hasItemCorrectHight(void); virtual bool isItemAtMetalDetector(void); virtual bool isMetalDetected(void); virtual bool isJunctionOpen(void); diff --git a/Programm/Sources/FestoProcessSensors.h b/Programm/Sources/FestoProcessSensors.h index d91715c..d13479a 100755 --- a/Programm/Sources/FestoProcessSensors.h +++ b/Programm/Sources/FestoProcessSensors.h @@ -16,7 +16,7 @@ class FestoProcessSensors { public: virtual bool isItemAtBeginning(void) = 0; virtual bool isItemAtHightSensor(void) = 0; - //virtual bool hasItemCorrectHight(void)= 0; + virtual bool hasItemCorrectHight(void)= 0; virtual bool isItemAtMetalDetector(void) = 0; virtual bool isMetalDetected(void) = 0; virtual bool isJunctionOpen(void) = 0; diff --git a/Programm/Sources/HeightProfileCheck.cpp b/Programm/Sources/HeightProfileCheck.cpp index 880a26d..c9a892f 100644 --- a/Programm/Sources/HeightProfileCheck.cpp +++ b/Programm/Sources/HeightProfileCheck.cpp @@ -3,9 +3,9 @@ * * class for checking the height profile of the items * - * \author Jannik Beyerstedt - * \version 0.1 - * \date 2014-11-25 + * \author Jannik Beyerstedt, Daniel Friedrich + * \version 0.2 + * \date 2014-12-08 */ #include "HeightProfileCheck.h" @@ -100,9 +100,9 @@ bool HeightProfileCheck::result() { return itemDiagnosis; } -void HeightProfileCheck::logDefectType(std::string defectDecsription) { +void HeightProfileCheck::logDefectType(std::string defectDescription) { if (logFile.is_open()) { - logFile << time(NULL) << " wrong item: " << defectDecsription << std::endl; + logFile << time(NULL) << " wrong item: " << defectDescription << std::endl; }else { std::cout << "logfile can´t be accessed" << std::endl; } diff --git a/Programm/Sources/HeightProfileCheck.h b/Programm/Sources/HeightProfileCheck.h index 392740d..cdd54f7 100644 --- a/Programm/Sources/HeightProfileCheck.h +++ b/Programm/Sources/HeightProfileCheck.h @@ -3,9 +3,9 @@ * * class for checking the height profile of the items * - * \author Jannik Beyerstedt - * \version 0.1 - * \date 2014-11-25 + * \author Jannik Beyerstedt, Daniel Friedrich + * \version 0.2 + * \date 2014-12-08 */ #ifndef HEIGHT_PROFILE_CHECK_H @@ -45,7 +45,7 @@ class HeightProfileCheck : public Plugin{ void evalCycle(); bool result(); // returns true if defect detected private: - void logDefectType(std::string defectDecsription); + void logDefectType(std::string defectDescription); }; #endif /* HEIGHT_PROFILE_CHECK_H */ diff --git a/Programm/Sources/fsm.cpp b/Programm/Sources/fsm.cpp index 0485dac..37f8c9f 100755 --- a/Programm/Sources/fsm.cpp +++ b/Programm/Sources/fsm.cpp @@ -59,6 +59,9 @@ void FSM::evalEvents() { if (process->isItemAtEnd()) { currentState = Error; } + if (!(process->hasItemCorrectHight())) { + currentState = TransportBack; + } break; case MetalDetection: if (process->isMetalDetected()) { @@ -110,6 +113,16 @@ void FSM::evalEvents() { currentState = Standby; } break; + case TransportBack: + if (process->isItemAtBeginning()) { + currentState = StartReached; + } + break; + case StartReached: + if (!(process->isItemAtBeginning())) { + currentState = Standby; + } + break; default: currentState = Start; } @@ -186,7 +199,15 @@ void FSM::evalState() { process->closeJunction(); blinkRed(); break; - + case TransportBack: + process->driveLeft(); + blinkRed(); + process->lightGreenOff(); + break; + case StartReached: + process->driveStop(); + blinkRed(); + break; } } diff --git a/Programm/Sources/fsm.h b/Programm/Sources/fsm.h index 356ae3d..9b32818 100755 --- a/Programm/Sources/fsm.h +++ b/Programm/Sources/fsm.h @@ -13,7 +13,7 @@ #include "FestoProcessAccess.h" #include "plugin.h" -enum fsm_states { Start, Standby, Ready, Transport, MetalDetection, NonMetalic, Metalic, SlideReached, Error, EndReached}; +enum fsm_states { Start, Standby, Ready, Transport, MetalDetection, NonMetalic, Metalic, SlideReached, Error, EndReached, TransportBack, StartReached}; class FSM { private: From 66d04f48eab3347592e672f6f4191f1d61fa7296 Mon Sep 17 00:00:00 2001 From: "jtByt.Pictures" Date: Thu, 11 Dec 2014 17:41:16 +0100 Subject: [PATCH 08/17] update Stub for updated (merged) code --- Programm/Tests/StubHeightSensor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Programm/Tests/StubHeightSensor.h b/Programm/Tests/StubHeightSensor.h index 18db4b3..4844edb 100644 --- a/Programm/Tests/StubHeightSensor.h +++ b/Programm/Tests/StubHeightSensor.h @@ -24,7 +24,7 @@ class StubHeightSensor : public FestoProcessSensors { public: bool isItemAtBeginning(void) {return 0;}; bool isItemAtHightSensor(void) {return 0;}; - //bool hasItemCorrectHight(void){return 0;}; + bool hasItemCorrectHight(void){return 0;}; bool isItemAtMetalDetector(void) {return 0;}; bool isMetalDetected(void) {return 0;}; bool isJunctionOpen(void) {return 0;}; From e6c0ea7f5a0b5259ab288b45c4e62cf3065fd444 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Thu, 11 Dec 2014 20:19:32 +0100 Subject: [PATCH 09/17] some comments added --- Programm/Sources/HeightProfileCheck.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Programm/Sources/HeightProfileCheck.h b/Programm/Sources/HeightProfileCheck.h index 3e52a71..c01e168 100644 --- a/Programm/Sources/HeightProfileCheck.h +++ b/Programm/Sources/HeightProfileCheck.h @@ -32,7 +32,7 @@ class HeightProfileCheck : public Plugin{ private: height_fsm_states currentState; FestoProcessSensors *process; - bool itemDiagnosis; + bool itemDiagnosis; // true if defect detected std::ofstream logFile; public: HeightProfileCheck( FestoProcessSensors *process); @@ -42,7 +42,7 @@ class HeightProfileCheck : public Plugin{ void evalState(); public: void evalCycle(); - bool result(); + bool result(); // returns true if defect detected private: void logDefectType(std::string defectDescription); }; From 6c50d151a6f1584f27841943a84f895dce483155 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Mon, 15 Dec 2014 16:22:35 +0100 Subject: [PATCH 10/17] [TEST] UnitTester little correction --- Programm/Sources/main.cpp | 3 ++- Programm/Tests/UnitTester.cpp | 1 + Programm/Tests/UnitTester.h | 1 - 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Programm/Sources/main.cpp b/Programm/Sources/main.cpp index 040801a..fc1e8c0 100755 --- a/Programm/Sources/main.cpp +++ b/Programm/Sources/main.cpp @@ -23,7 +23,8 @@ using namespace std; int main(int argc, char** argv) { #ifdef TEST - volatile UnitTester t; + UnitTester *t = new UnitTester(); + delete t; #endif bool run = true; // set this variable to false whilst debugging to end program. diff --git a/Programm/Tests/UnitTester.cpp b/Programm/Tests/UnitTester.cpp index ad72fd6..31cd0b1 100644 --- a/Programm/Tests/UnitTester.cpp +++ b/Programm/Tests/UnitTester.cpp @@ -25,6 +25,7 @@ UnitTester::UnitTester() { UnitTester::~UnitTester() { delete unitUnderTest; + delete sensorStub; } void UnitTester::doTest() { diff --git a/Programm/Tests/UnitTester.h b/Programm/Tests/UnitTester.h index 9956abe..6e5e564 100644 --- a/Programm/Tests/UnitTester.h +++ b/Programm/Tests/UnitTester.h @@ -20,7 +20,6 @@ class UnitTester { HeightProfileCheck* unitUnderTest; - //FestoProcessSensors* sensorStub; StubHeightSensor* sensorStub; public: From 28d7ac7588b43bd4816290411946ce6d3a6f2359 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:32:47 +0100 Subject: [PATCH 11/17] [NETB] Netbeans project added --- .gitignore | 3 + Programm/Makefile | 128 +++++++++++ Programm/nbproject/Makefile-Debug.mk | 126 +++++++++++ Programm/nbproject/Makefile-Release.mk | 126 +++++++++++ Programm/nbproject/Makefile-impl.mk | 133 +++++++++++ Programm/nbproject/Makefile-variables.mk | 35 +++ Programm/nbproject/Package-Debug.bash | 76 +++++++ Programm/nbproject/Package-Release.bash | 76 +++++++ Programm/nbproject/configurations.xml | 210 ++++++++++++++++++ .../nbproject/private/Makefile-variables.mk | 7 + Programm/nbproject/private/configurations.xml | 74 ++++++ .../nbproject/private/launcher.properties | 40 ++++ Programm/nbproject/private/private.xml | 7 + Programm/nbproject/project.xml | 32 +++ 14 files changed, 1073 insertions(+) create mode 100755 Programm/Makefile create mode 100755 Programm/nbproject/Makefile-Debug.mk create mode 100755 Programm/nbproject/Makefile-Release.mk create mode 100755 Programm/nbproject/Makefile-impl.mk create mode 100755 Programm/nbproject/Makefile-variables.mk create mode 100755 Programm/nbproject/Package-Debug.bash create mode 100755 Programm/nbproject/Package-Release.bash create mode 100755 Programm/nbproject/configurations.xml create mode 100755 Programm/nbproject/private/Makefile-variables.mk create mode 100755 Programm/nbproject/private/configurations.xml create mode 100755 Programm/nbproject/private/launcher.properties create mode 100755 Programm/nbproject/private/private.xml create mode 100755 Programm/nbproject/project.xml diff --git a/.gitignore b/.gitignore index 03af7e6..219b7b5 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,6 @@ *.vpp~* *.pages + +Programm/build +Programm/dist \ No newline at end of file diff --git a/Programm/Makefile b/Programm/Makefile new file mode 100755 index 0000000..05de621 --- /dev/null +++ b/Programm/Makefile @@ -0,0 +1,128 @@ +# +# There exist several targets which are by default empty and which can be +# used for execution of your targets. These targets are usually executed +# before and after some main targets. They are: +# +# .build-pre: called before 'build' target +# .build-post: called after 'build' target +# .clean-pre: called before 'clean' target +# .clean-post: called after 'clean' target +# .clobber-pre: called before 'clobber' target +# .clobber-post: called after 'clobber' target +# .all-pre: called before 'all' target +# .all-post: called after 'all' target +# .help-pre: called before 'help' target +# .help-post: called after 'help' target +# +# Targets beginning with '.' are not intended to be called on their own. +# +# Main targets can be executed directly, and they are: +# +# build build a specific configuration +# clean remove built files from a configuration +# clobber remove all built files +# all build all configurations +# help print help mesage +# +# Targets .build-impl, .clean-impl, .clobber-impl, .all-impl, and +# .help-impl are implemented in nbproject/makefile-impl.mk. +# +# Available make variables: +# +# CND_BASEDIR base directory for relative paths +# CND_DISTDIR default top distribution directory (build artifacts) +# CND_BUILDDIR default top build directory (object files, ...) +# CONF name of current configuration +# CND_PLATFORM_${CONF} platform name (current configuration) +# CND_ARTIFACT_DIR_${CONF} directory of build artifact (current configuration) +# CND_ARTIFACT_NAME_${CONF} name of build artifact (current configuration) +# CND_ARTIFACT_PATH_${CONF} path to build artifact (current configuration) +# CND_PACKAGE_DIR_${CONF} directory of package (current configuration) +# CND_PACKAGE_NAME_${CONF} name of package (current configuration) +# CND_PACKAGE_PATH_${CONF} path to package (current configuration) +# +# NOCDDL + + +# Environment +MKDIR=mkdir +CP=cp +CCADMIN=CCadmin + + +# build +build: .build-post + +.build-pre: +# Add your pre 'build' code here... + +.build-post: .build-impl +# Add your post 'build' code here... + + +# clean +clean: .clean-post + +.clean-pre: +# Add your pre 'clean' code here... + +.clean-post: .clean-impl +# Add your post 'clean' code here... + + +# clobber +clobber: .clobber-post + +.clobber-pre: +# Add your pre 'clobber' code here... + +.clobber-post: .clobber-impl +# Add your post 'clobber' code here... + + +# all +all: .all-post + +.all-pre: +# Add your pre 'all' code here... + +.all-post: .all-impl +# Add your post 'all' code here... + + +# build tests +build-tests: .build-tests-post + +.build-tests-pre: +# Add your pre 'build-tests' code here... + +.build-tests-post: .build-tests-impl +# Add your post 'build-tests' code here... + + +# run tests +test: .test-post + +.test-pre: build-tests +# Add your pre 'test' code here... + +.test-post: .test-impl +# Add your post 'test' code here... + + +# help +help: .help-post + +.help-pre: +# Add your pre 'help' code here... + +.help-post: .help-impl +# Add your post 'help' code here... + + + +# include project implementation makefile +include nbproject/Makefile-impl.mk + +# include project make variables +include nbproject/Makefile-variables.mk diff --git a/Programm/nbproject/Makefile-Debug.mk b/Programm/nbproject/Makefile-Debug.mk new file mode 100755 index 0000000..4516523 --- /dev/null +++ b/Programm/nbproject/Makefile-Debug.mk @@ -0,0 +1,126 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Environment +MKDIR=mkdir +CP=cp +GREP=grep +NM=nm +CCADMIN=CCadmin +RANLIB=ranlib +CC=gcc +CCC=g++ +CXX=g++ +FC=gfortran +AS=as + +# Macros +CND_PLATFORM=MinGW-Windows +CND_DLIB_EXT=dll +CND_CONF=Debug +CND_DISTDIR=dist +CND_BUILDDIR=build + +# Include project Makefile +include Makefile + +# Object Directory +OBJECTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM} + +# Object Files +OBJECTFILES= \ + ${OBJECTDIR}/Sources/FestoProcessAccess.o \ + ${OBJECTDIR}/Sources/HeightProfileCheck.o \ + ${OBJECTDIR}/Sources/StubHeightSensor.o \ + ${OBJECTDIR}/Sources/UnitTester.o \ + ${OBJECTDIR}/Sources/factory.o \ + ${OBJECTDIR}/Sources/fsm.o \ + ${OBJECTDIR}/Sources/main.o \ + ${OBJECTDIR}/Sources/minilab1008processimage.o + + +# C Compiler Flags +CFLAGS= + +# CC Compiler Flags +CCFLAGS= +CXXFLAGS= + +# Fortran Compiler Flags +FFLAGS= + +# Assembler Flags +ASFLAGS= + +# Link Libraries and Options +LDLIBSOPTIONS=-L/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -lcbw32 + +# Build Targets +.build-conf: ${BUILD_SUBPROJECTS} + "${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm.exe + +${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm.exe: ${OBJECTFILES} + ${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM} + ${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm ${OBJECTFILES} ${LDLIBSOPTIONS} + +${OBJECTDIR}/Sources/FestoProcessAccess.o: Sources/FestoProcessAccess.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/FestoProcessAccess.o Sources/FestoProcessAccess.cpp + +${OBJECTDIR}/Sources/HeightProfileCheck.o: Sources/HeightProfileCheck.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/HeightProfileCheck.o Sources/HeightProfileCheck.cpp + +${OBJECTDIR}/Sources/StubHeightSensor.o: Sources/StubHeightSensor.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/StubHeightSensor.o Sources/StubHeightSensor.cpp + +${OBJECTDIR}/Sources/UnitTester.o: Sources/UnitTester.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/UnitTester.o Sources/UnitTester.cpp + +${OBJECTDIR}/Sources/factory.o: Sources/factory.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/factory.o Sources/factory.cpp + +${OBJECTDIR}/Sources/fsm.o: Sources/fsm.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/fsm.o Sources/fsm.cpp + +${OBJECTDIR}/Sources/main.o: Sources/main.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/main.o Sources/main.cpp + +${OBJECTDIR}/Sources/minilab1008processimage.o: Sources/minilab1008processimage.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -g -I/C/Users/Public/Documents/Measurement\ Computing/DAQ/C -include /C/Users/Public/Documents/Measurement\ Computing/DAQ/C/cbw.h -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/minilab1008processimage.o Sources/minilab1008processimage.cpp + +# Subprojects +.build-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${CND_BUILDDIR}/${CND_CONF} + ${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm.exe + +# Subprojects +.clean-subprojects: + +# Enable dependency checking +.dep.inc: .depcheck-impl + +include .dep.inc diff --git a/Programm/nbproject/Makefile-Release.mk b/Programm/nbproject/Makefile-Release.mk new file mode 100755 index 0000000..64eaa1d --- /dev/null +++ b/Programm/nbproject/Makefile-Release.mk @@ -0,0 +1,126 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a -pre and a -post target defined where you can add customized code. +# +# This makefile implements configuration specific macros and targets. + + +# Environment +MKDIR=mkdir +CP=cp +GREP=grep +NM=nm +CCADMIN=CCadmin +RANLIB=ranlib +CC=gcc +CCC=g++ +CXX=g++ +FC=gfortran +AS=as + +# Macros +CND_PLATFORM=MinGW-Windows +CND_DLIB_EXT=dll +CND_CONF=Release +CND_DISTDIR=dist +CND_BUILDDIR=build + +# Include project Makefile +include Makefile + +# Object Directory +OBJECTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM} + +# Object Files +OBJECTFILES= \ + ${OBJECTDIR}/Sources/FestoProcessAccess.o \ + ${OBJECTDIR}/Sources/HeightProfileCheck.o \ + ${OBJECTDIR}/Sources/StubHeightSensor.o \ + ${OBJECTDIR}/Sources/UnitTester.o \ + ${OBJECTDIR}/Sources/factory.o \ + ${OBJECTDIR}/Sources/fsm.o \ + ${OBJECTDIR}/Sources/main.o \ + ${OBJECTDIR}/Sources/minilab1008processimage.o + + +# C Compiler Flags +CFLAGS= + +# CC Compiler Flags +CCFLAGS= +CXXFLAGS= + +# Fortran Compiler Flags +FFLAGS= + +# Assembler Flags +ASFLAGS= + +# Link Libraries and Options +LDLIBSOPTIONS= + +# Build Targets +.build-conf: ${BUILD_SUBPROJECTS} + "${MAKE}" -f nbproject/Makefile-${CND_CONF}.mk ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm.exe + +${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm.exe: ${OBJECTFILES} + ${MKDIR} -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM} + ${LINK.cc} -o ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm ${OBJECTFILES} ${LDLIBSOPTIONS} + +${OBJECTDIR}/Sources/FestoProcessAccess.o: Sources/FestoProcessAccess.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/FestoProcessAccess.o Sources/FestoProcessAccess.cpp + +${OBJECTDIR}/Sources/HeightProfileCheck.o: Sources/HeightProfileCheck.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/HeightProfileCheck.o Sources/HeightProfileCheck.cpp + +${OBJECTDIR}/Sources/StubHeightSensor.o: Sources/StubHeightSensor.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/StubHeightSensor.o Sources/StubHeightSensor.cpp + +${OBJECTDIR}/Sources/UnitTester.o: Sources/UnitTester.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/UnitTester.o Sources/UnitTester.cpp + +${OBJECTDIR}/Sources/factory.o: Sources/factory.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/factory.o Sources/factory.cpp + +${OBJECTDIR}/Sources/fsm.o: Sources/fsm.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/fsm.o Sources/fsm.cpp + +${OBJECTDIR}/Sources/main.o: Sources/main.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/main.o Sources/main.cpp + +${OBJECTDIR}/Sources/minilab1008processimage.o: Sources/minilab1008processimage.cpp + ${MKDIR} -p ${OBJECTDIR}/Sources + ${RM} "$@.d" + $(COMPILE.cc) -O2 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/Sources/minilab1008processimage.o Sources/minilab1008processimage.cpp + +# Subprojects +.build-subprojects: + +# Clean Targets +.clean-conf: ${CLEAN_SUBPROJECTS} + ${RM} -r ${CND_BUILDDIR}/${CND_CONF} + ${RM} ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm.exe + +# Subprojects +.clean-subprojects: + +# Enable dependency checking +.dep.inc: .depcheck-impl + +include .dep.inc diff --git a/Programm/nbproject/Makefile-impl.mk b/Programm/nbproject/Makefile-impl.mk new file mode 100755 index 0000000..b01a13f --- /dev/null +++ b/Programm/nbproject/Makefile-impl.mk @@ -0,0 +1,133 @@ +# +# Generated Makefile - do not edit! +# +# Edit the Makefile in the project folder instead (../Makefile). Each target +# has a pre- and a post- target defined where you can add customization code. +# +# This makefile implements macros and targets common to all configurations. +# +# NOCDDL + + +# Building and Cleaning subprojects are done by default, but can be controlled with the SUB +# macro. If SUB=no, subprojects will not be built or cleaned. The following macro +# statements set BUILD_SUB-CONF and CLEAN_SUB-CONF to .build-reqprojects-conf +# and .clean-reqprojects-conf unless SUB has the value 'no' +SUB_no=NO +SUBPROJECTS=${SUB_${SUB}} +BUILD_SUBPROJECTS_=.build-subprojects +BUILD_SUBPROJECTS_NO= +BUILD_SUBPROJECTS=${BUILD_SUBPROJECTS_${SUBPROJECTS}} +CLEAN_SUBPROJECTS_=.clean-subprojects +CLEAN_SUBPROJECTS_NO= +CLEAN_SUBPROJECTS=${CLEAN_SUBPROJECTS_${SUBPROJECTS}} + + +# Project Name +PROJECTNAME=Programm + +# Active Configuration +DEFAULTCONF=Debug +CONF=${DEFAULTCONF} + +# All Configurations +ALLCONFS=Debug Release + + +# build +.build-impl: .build-pre .validate-impl .depcheck-impl + @#echo "=> Running $@... Configuration=$(CONF)" + "${MAKE}" -f nbproject/Makefile-${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .build-conf + + +# clean +.clean-impl: .clean-pre .validate-impl .depcheck-impl + @#echo "=> Running $@... Configuration=$(CONF)" + "${MAKE}" -f nbproject/Makefile-${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .clean-conf + + +# clobber +.clobber-impl: .clobber-pre .depcheck-impl + @#echo "=> Running $@..." + for CONF in ${ALLCONFS}; \ + do \ + "${MAKE}" -f nbproject/Makefile-$${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .clean-conf; \ + done + +# all +.all-impl: .all-pre .depcheck-impl + @#echo "=> Running $@..." + for CONF in ${ALLCONFS}; \ + do \ + "${MAKE}" -f nbproject/Makefile-$${CONF}.mk QMAKE=${QMAKE} SUBPROJECTS=${SUBPROJECTS} .build-conf; \ + done + +# build tests +.build-tests-impl: .build-impl .build-tests-pre + @#echo "=> Running $@... Configuration=$(CONF)" + "${MAKE}" -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .build-tests-conf + +# run tests +.test-impl: .build-tests-impl .test-pre + @#echo "=> Running $@... Configuration=$(CONF)" + "${MAKE}" -f nbproject/Makefile-${CONF}.mk SUBPROJECTS=${SUBPROJECTS} .test-conf + +# dependency checking support +.depcheck-impl: + @echo "# This code depends on make tool being used" >.dep.inc + @if [ -n "${MAKE_VERSION}" ]; then \ + echo "DEPFILES=\$$(wildcard \$$(addsuffix .d, \$${OBJECTFILES}))" >>.dep.inc; \ + echo "ifneq (\$${DEPFILES},)" >>.dep.inc; \ + echo "include \$${DEPFILES}" >>.dep.inc; \ + echo "endif" >>.dep.inc; \ + else \ + echo ".KEEP_STATE:" >>.dep.inc; \ + echo ".KEEP_STATE_FILE:.make.state.\$${CONF}" >>.dep.inc; \ + fi + +# configuration validation +.validate-impl: + @if [ ! -f nbproject/Makefile-${CONF}.mk ]; \ + then \ + echo ""; \ + echo "Error: can not find the makefile for configuration '${CONF}' in project ${PROJECTNAME}"; \ + echo "See 'make help' for details."; \ + echo "Current directory: " `pwd`; \ + echo ""; \ + fi + @if [ ! -f nbproject/Makefile-${CONF}.mk ]; \ + then \ + exit 1; \ + fi + + +# help +.help-impl: .help-pre + @echo "This makefile supports the following configurations:" + @echo " ${ALLCONFS}" + @echo "" + @echo "and the following targets:" + @echo " build (default target)" + @echo " clean" + @echo " clobber" + @echo " all" + @echo " help" + @echo "" + @echo "Makefile Usage:" + @echo " make [CONF=] [SUB=no] build" + @echo " make [CONF=] [SUB=no] clean" + @echo " make [SUB=no] clobber" + @echo " make [SUB=no] all" + @echo " make help" + @echo "" + @echo "Target 'build' will build a specific configuration and, unless 'SUB=no'," + @echo " also build subprojects." + @echo "Target 'clean' will clean a specific configuration and, unless 'SUB=no'," + @echo " also clean subprojects." + @echo "Target 'clobber' will remove all built files from all configurations and," + @echo " unless 'SUB=no', also from subprojects." + @echo "Target 'all' will will build all configurations and, unless 'SUB=no'," + @echo " also build subprojects." + @echo "Target 'help' prints this message." + @echo "" + diff --git a/Programm/nbproject/Makefile-variables.mk b/Programm/nbproject/Makefile-variables.mk new file mode 100755 index 0000000..a62ea59 --- /dev/null +++ b/Programm/nbproject/Makefile-variables.mk @@ -0,0 +1,35 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +CND_BASEDIR=`pwd` +CND_BUILDDIR=build +CND_DISTDIR=dist +# Debug configuration +CND_PLATFORM_Debug=MinGW-Windows +CND_ARTIFACT_DIR_Debug=dist/Debug/MinGW-Windows +CND_ARTIFACT_NAME_Debug=programm +CND_ARTIFACT_PATH_Debug=dist/Debug/MinGW-Windows/programm +CND_PACKAGE_DIR_Debug=dist/Debug/MinGW-Windows/package +CND_PACKAGE_NAME_Debug=programm.tar +CND_PACKAGE_PATH_Debug=dist/Debug/MinGW-Windows/package/programm.tar +# Release configuration +CND_PLATFORM_Release=MinGW-Windows +CND_ARTIFACT_DIR_Release=dist/Release/MinGW-Windows +CND_ARTIFACT_NAME_Release=programm +CND_ARTIFACT_PATH_Release=dist/Release/MinGW-Windows/programm +CND_PACKAGE_DIR_Release=dist/Release/MinGW-Windows/package +CND_PACKAGE_NAME_Release=programm.tar +CND_PACKAGE_PATH_Release=dist/Release/MinGW-Windows/package/programm.tar +# +# include compiler specific variables +# +# dmake command +ROOT:sh = test -f nbproject/private/Makefile-variables.mk || \ + (mkdir -p nbproject/private && touch nbproject/private/Makefile-variables.mk) +# +# gmake command +.PHONY: $(shell test -f nbproject/private/Makefile-variables.mk || (mkdir -p nbproject/private && touch nbproject/private/Makefile-variables.mk)) +# +include nbproject/private/Makefile-variables.mk diff --git a/Programm/nbproject/Package-Debug.bash b/Programm/nbproject/Package-Debug.bash new file mode 100755 index 0000000..eb1bbfc --- /dev/null +++ b/Programm/nbproject/Package-Debug.bash @@ -0,0 +1,76 @@ +#!/bin/bash -x + +# +# Generated - do not edit! +# + +# Macros +TOP=`pwd` +CND_PLATFORM=MinGW-Windows +CND_CONF=Debug +CND_DISTDIR=dist +CND_BUILDDIR=build +CND_DLIB_EXT=dll +NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging +TMPDIRNAME=tmp-packaging +OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm +OUTPUT_BASENAME=programm +PACKAGE_TOP_DIR=programm/ + +# Functions +function checkReturnCode +{ + rc=$? + if [ $rc != 0 ] + then + exit $rc + fi +} +function makeDirectory +# $1 directory path +# $2 permission (optional) +{ + mkdir -p "$1" + checkReturnCode + if [ "$2" != "" ] + then + chmod $2 "$1" + checkReturnCode + fi +} +function copyFileToTmpDir +# $1 from-file path +# $2 to-file path +# $3 permission +{ + cp "$1" "$2" + checkReturnCode + if [ "$3" != "" ] + then + chmod $3 "$2" + checkReturnCode + fi +} + +# Setup +cd "${TOP}" +mkdir -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package +rm -rf ${NBTMPDIR} +mkdir -p ${NBTMPDIR} + +# Copy files and create directories and links +cd "${TOP}" +makeDirectory "${NBTMPDIR}/programm/bin" +copyFileToTmpDir "${OUTPUT_PATH}.exe" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}.exe" 0755 + + +# Generate tar file +cd "${TOP}" +rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/programm.tar +cd ${NBTMPDIR} +tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/programm.tar * +checkReturnCode + +# Cleanup +cd "${TOP}" +rm -rf ${NBTMPDIR} diff --git a/Programm/nbproject/Package-Release.bash b/Programm/nbproject/Package-Release.bash new file mode 100755 index 0000000..0ddb1c8 --- /dev/null +++ b/Programm/nbproject/Package-Release.bash @@ -0,0 +1,76 @@ +#!/bin/bash -x + +# +# Generated - do not edit! +# + +# Macros +TOP=`pwd` +CND_PLATFORM=MinGW-Windows +CND_CONF=Release +CND_DISTDIR=dist +CND_BUILDDIR=build +CND_DLIB_EXT=dll +NBTMPDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM}/tmp-packaging +TMPDIRNAME=tmp-packaging +OUTPUT_PATH=${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/programm +OUTPUT_BASENAME=programm +PACKAGE_TOP_DIR=programm/ + +# Functions +function checkReturnCode +{ + rc=$? + if [ $rc != 0 ] + then + exit $rc + fi +} +function makeDirectory +# $1 directory path +# $2 permission (optional) +{ + mkdir -p "$1" + checkReturnCode + if [ "$2" != "" ] + then + chmod $2 "$1" + checkReturnCode + fi +} +function copyFileToTmpDir +# $1 from-file path +# $2 to-file path +# $3 permission +{ + cp "$1" "$2" + checkReturnCode + if [ "$3" != "" ] + then + chmod $3 "$2" + checkReturnCode + fi +} + +# Setup +cd "${TOP}" +mkdir -p ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package +rm -rf ${NBTMPDIR} +mkdir -p ${NBTMPDIR} + +# Copy files and create directories and links +cd "${TOP}" +makeDirectory "${NBTMPDIR}/programm/bin" +copyFileToTmpDir "${OUTPUT_PATH}.exe" "${NBTMPDIR}/${PACKAGE_TOP_DIR}bin/${OUTPUT_BASENAME}.exe" 0755 + + +# Generate tar file +cd "${TOP}" +rm -f ${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/programm.tar +cd ${NBTMPDIR} +tar -vcf ../../../../${CND_DISTDIR}/${CND_CONF}/${CND_PLATFORM}/package/programm.tar * +checkReturnCode + +# Cleanup +cd "${TOP}" +rm -rf ${NBTMPDIR} diff --git a/Programm/nbproject/configurations.xml b/Programm/nbproject/configurations.xml new file mode 100755 index 0000000..7044274 --- /dev/null +++ b/Programm/nbproject/configurations.xml @@ -0,0 +1,210 @@ + + + + + + + + + + + Sources/FestoProcessAccess.cpp + Sources/FestoProcessAccess.h + Sources/FestoProcessSensors.h + Sources/HeightProfileCheck.cpp + Sources/HeightProfileCheck.h + Sources/Makefile + Sources/StubHeightSensor.cpp + Sources/StubHeightSensor.h + Sources/UnitTester.cpp + Sources/UnitTester.h + Sources/factory.cpp + Sources/factory.h + Sources/fsm.cpp + Sources/fsm.h + Sources/iomasks.h + Sources/main.cpp + Sources/minilab1008processimage.cpp + Sources/minilab1008processimage.h + Sources/plugin.h + Sources/processimage.h + Sources/processlog1.txt + Sources/processlog2.txt + Sources/processlog3.txt + Sources/ti_assertion.h + + + + + Makefile + + + + Programm/Sources + Programm/Tests + Sources + + Makefile + + + + default + true + false + + + + + C:/Users/Public/Documents/Measurement Computing/DAQ/C + + + C:/Users/Public/Documents/Measurement Computing/DAQ/C/cbw.h + + + + + C:/Users/Public/Documents/Measurement Computing/DAQ/C + + + cbw32 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + default + true + false + + + + 5 + + + 5 + + + 5 + + + 5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Programm/nbproject/private/Makefile-variables.mk b/Programm/nbproject/private/Makefile-variables.mk new file mode 100755 index 0000000..a64183e --- /dev/null +++ b/Programm/nbproject/private/Makefile-variables.mk @@ -0,0 +1,7 @@ +# +# Generated - do not edit! +# +# NOCDDL +# +# Debug configuration +# Release configuration diff --git a/Programm/nbproject/private/configurations.xml b/Programm/nbproject/private/configurations.xml new file mode 100755 index 0000000..2a1696c --- /dev/null +++ b/Programm/nbproject/private/configurations.xml @@ -0,0 +1,74 @@ + + + Makefile + + + + localhost + 3 + + + + + + + + + + + + + + + gdb + + + + "${OUTPUT_PATH}" + + "${OUTPUT_PATH}" + + true + 1 + 0 + 0 + + + + + + + localhost + 3 + + + + + + + + + + + + + + + gdb + + + + "${OUTPUT_PATH}" + + "${OUTPUT_PATH}" + + true + 1 + 0 + 0 + + + + + + diff --git a/Programm/nbproject/private/launcher.properties b/Programm/nbproject/private/launcher.properties new file mode 100755 index 0000000..6cc2127 --- /dev/null +++ b/Programm/nbproject/private/launcher.properties @@ -0,0 +1,40 @@ +# Launchers File syntax: +# +# [Must-have property line] +# launcher1.runCommand= +# [Optional extra properties] +# launcher1.displayName= +# launcher1.buildCommand= +# launcher1.runDir= +# launcher1.symbolFiles= +# launcher1.env.= +# (If this value is quoted with ` it is handled as a native command which execution result will become the value) +# [Common launcher properties] +# common.runDir= +# (This value is overwritten by a launcher specific runDir value if the latter exists) +# common.env.= +# (Environment variables from common launcher are merged with launcher specific variables) +# common.symbolFiles= +# (This value is overwritten by a launcher specific symbolFiles value if the latter exists) +# +# In runDir, symbolFiles and env fields you can use these macroses: +# ${PROJECT_DIR} - project directory absolute path +# ${OUTPUT_PATH} - linker output path (relative to project directory path) +# ${OUTPUT_BASENAME}- linker output filename +# ${TESTDIR} - test files directory (relative to project directory path) +# ${OBJECTDIR} - object files directory (relative to project directory path) +# ${CND_DISTDIR} - distribution directory (relative to project directory path) +# ${CND_BUILDDIR} - build directory (relative to project directory path) +# ${CND_PLATFORM} - platform name +# ${CND_CONF} - configuration name +# ${CND_DLIB_EXT} - dynamic library extension +# +# All the project launchers must be listed in the file! +# +# launcher1.runCommand=... +# launcher2.runCommand=... +# ... +# common.runDir=... +# common.env.KEY=VALUE + +# launcher1.runCommand= \ No newline at end of file diff --git a/Programm/nbproject/private/private.xml b/Programm/nbproject/private/private.xml new file mode 100755 index 0000000..bd90369 --- /dev/null +++ b/Programm/nbproject/private/private.xml @@ -0,0 +1,7 @@ + + + + 1 + 0 + + diff --git a/Programm/nbproject/project.xml b/Programm/nbproject/project.xml new file mode 100755 index 0000000..71ef695 --- /dev/null +++ b/Programm/nbproject/project.xml @@ -0,0 +1,32 @@ + + + org.netbeans.modules.cnd.makeproject + + + SEP + + cpp + h + UTF-8 + + + Programm/Sources + Programm/Tests + Sources + + + + Debug + 1 + + + Release + 1 + + + + false + + + + From 36bb0987b9250c5c538775a34ccfaa734fabf889 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:33:08 +0100 Subject: [PATCH 12/17] Programm files restructured for netbeans --- .../{Tests => Sources}/StubHeightSensor.cpp | 0 .../{Tests => Sources}/StubHeightSensor.h | 0 Programm/{Tests => Sources}/UnitTester.cpp | 0 Programm/{Tests => Sources}/UnitTester.h | 0 Programm/{Tests => Sources}/processlog1.txt | 0 Programm/{Tests => Sources}/processlog2.txt | 0 Programm/{Tests => Sources}/processlog3.txt | 0 Programm/{ => Sources}/ti_assertion.h | 0 Programm/processlog1.txt | 531 ++++++++++++++++++ Programm/processlog2.txt | 519 +++++++++++++++++ Programm/processlog3.txt | 408 ++++++++++++++ 11 files changed, 1458 insertions(+) rename Programm/{Tests => Sources}/StubHeightSensor.cpp (100%) rename Programm/{Tests => Sources}/StubHeightSensor.h (100%) rename Programm/{Tests => Sources}/UnitTester.cpp (100%) rename Programm/{Tests => Sources}/UnitTester.h (100%) rename Programm/{Tests => Sources}/processlog1.txt (100%) rename Programm/{Tests => Sources}/processlog2.txt (100%) rename Programm/{Tests => Sources}/processlog3.txt (100%) rename Programm/{ => Sources}/ti_assertion.h (100%) create mode 100755 Programm/processlog1.txt create mode 100755 Programm/processlog2.txt create mode 100755 Programm/processlog3.txt diff --git a/Programm/Tests/StubHeightSensor.cpp b/Programm/Sources/StubHeightSensor.cpp similarity index 100% rename from Programm/Tests/StubHeightSensor.cpp rename to Programm/Sources/StubHeightSensor.cpp diff --git a/Programm/Tests/StubHeightSensor.h b/Programm/Sources/StubHeightSensor.h similarity index 100% rename from Programm/Tests/StubHeightSensor.h rename to Programm/Sources/StubHeightSensor.h diff --git a/Programm/Tests/UnitTester.cpp b/Programm/Sources/UnitTester.cpp similarity index 100% rename from Programm/Tests/UnitTester.cpp rename to Programm/Sources/UnitTester.cpp diff --git a/Programm/Tests/UnitTester.h b/Programm/Sources/UnitTester.h similarity index 100% rename from Programm/Tests/UnitTester.h rename to Programm/Sources/UnitTester.h diff --git a/Programm/Tests/processlog1.txt b/Programm/Sources/processlog1.txt similarity index 100% rename from Programm/Tests/processlog1.txt rename to Programm/Sources/processlog1.txt diff --git a/Programm/Tests/processlog2.txt b/Programm/Sources/processlog2.txt similarity index 100% rename from Programm/Tests/processlog2.txt rename to Programm/Sources/processlog2.txt diff --git a/Programm/Tests/processlog3.txt b/Programm/Sources/processlog3.txt similarity index 100% rename from Programm/Tests/processlog3.txt rename to Programm/Sources/processlog3.txt diff --git a/Programm/ti_assertion.h b/Programm/Sources/ti_assertion.h similarity index 100% rename from Programm/ti_assertion.h rename to Programm/Sources/ti_assertion.h diff --git a/Programm/processlog1.txt b/Programm/processlog1.txt new file mode 100755 index 0000000..51fa123 --- /dev/null +++ b/Programm/processlog1.txt @@ -0,0 +1,531 @@ +1415882803; 0; 3780 +1415882819; 0; 3780 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3781 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3779 +1415882823; 0; 3781 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882823; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3781 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882824; 0; 3779 +1415882824; 0; 3783 +1415882824; 0; 3780 +1415882824; 0; 3779 +1415882824; 0; 3781 +1415882824; 0; 3780 +1415882824; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3779 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3779 +1415882825; 0; 3781 +1415882825; 0; 3781 +1415882825; 0; 3784 +1415882825; 0; 3781 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3779 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882825; 0; 3780 +1415882825; 0; 3780 +1415882825; 0; 3781 +1415882826; 0; 3782 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3783 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882826; 0; 3780 +1415882826; 0; 3783 +1415882826; 0; 3781 +1415882826; 0; 3781 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882826; 0; 3781 +1415882826; 0; 3779 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882826; 0; 3780 +1415882826; 0; 3779 +1415882826; 0; 3780 +1415882826; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3779 +1415882827; 0; 3779 +1415882827; 0; 3780 +1415882827; 0; 3779 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3780 +1415882827; 0; 3781 +1415882827; 0; 3781 +1415882827; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3784 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3781 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3779 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3779 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882828; 0; 3781 +1415882828; 0; 3781 +1415882828; 0; 3780 +1415882828; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3779 +1415882829; 0; 3781 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3779 +1415882829; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3781 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3779 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882829; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3779 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3780 +1415882830; 0; 3779 +1415882830; 0; 3780 +1415882830; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3781 +1415882831; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3779 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3781 +1415882831; 0; 3781 +1415882831; 0; 3780 +1415882831; 0; 3780 +1415882831; 0; 3779 +1415882831; 0; 3780 +1415882831; 0; 3779 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3780 +1415882832; 0; 3779 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3779 +1415882832; 0; 3783 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3780 +1415882832; 0; 3780 +1415882832; 0; 3779 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882832; 0; 3781 +1415882832; 0; 3780 +1415882833; 0; 3778 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3781 +1415882833; 0; 3781 +1415882833; 0; 3779 +1415882833; 0; 3779 +1415882833; 0; 3781 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3779 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882833; 0; 3780 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3779 +1415882834; 0; 3780 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3779 +1415882834; 0; 3780 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3783 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3779 +1415882834; 0; 3779 +1415882834; 0; 3779 +1415882834; 0; 3781 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882834; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3779 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3779 +1415882835; 0; 3098 +1415882835; 0; 3105 +1415882835; 0; 3099 +1415882835; 0; 3100 +1415882835; 1; 3095 +1415882835; 1; 3097 +1415882835; 1; 3094 +1415882835; 1; 3101 +1415882835; 1; 3783 +1415882835; 1; 3781 +1415882835; 1; 3779 +1415882835; 1; 3779 +1415882835; 1; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882835; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3779 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3783 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3780 +1415882836; 0; 3781 +1415882836; 0; 3779 +1415882837; 0; 3781 +1415882837; 0; 3778 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3778 +1415882837; 0; 3778 +1415882837; 0; 3780 +1415882837; 0; 3781 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3780 +1415882837; 0; 3778 +1415882837; 0; 3779 +1415882837; 0; 3779 +1415882837; 0; 3778 +1415882838; 0; 3779 +1415882838; 0; 3778 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3778 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3779 +1415882838; 0; 3780 +1415882838; 0; 3778 +1415882838; 0; 3778 +1415882838; 0; 3780 +1415882838; 0; 3778 +1415882838; 0; 3782 +1415882838; 0; 3779 +1415882838; 0; 3775 +1415882838; 0; 3779 +1415882838; 0; 3778 +1415882838; 0; 3778 +1415882838; 0; 3782 +1415882838; 0; 3779 +1415882839; 0; 3779 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3779 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3781 +1415882839; 0; 3780 +1415882839; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3779 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3780 +1415882840; 0; 3781 +1415882840; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3783 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3780 +1415882841; 0; 3779 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3781 +1415882841; 0; 3780 +1415882841; 0; 3781 +1415882841; 0; 3779 +1415882841; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3778 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3779 +1415882842; 0; 3781 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882842; 0; 3781 +1415882842; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3779 +1415882843; 0; 3779 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3780 +1415882843; 0; 3778 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3780 +1415882843; 0; 3781 +1415882843; 0; 3783 +1415882843; 0; 3781 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3781 +1415882844; 0; 3781 +1415882844; 0; 3781 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3780 +1415882844; 0; 3781 +1415882844; 0; 3782 diff --git a/Programm/processlog2.txt b/Programm/processlog2.txt new file mode 100755 index 0000000..fefe569 --- /dev/null +++ b/Programm/processlog2.txt @@ -0,0 +1,519 @@ +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3781 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3779 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3780 +1415882920; 0; 3781 +1415882920; 0; 3779 +1415882920; 0; 3779 +1415882920; 0; 3781 +1415882920; 0; 3781 +1415882920; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3781 +1415882921; 0; 3779 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3779 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3781 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3780 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3781 +1415882921; 0; 3780 +1415882921; 0; 3781 +1415882921; 0; 3779 +1415882921; 0; 3780 +1415882921; 0; 3784 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882922; 0; 3781 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882922; 0; 3781 +1415882922; 0; 3781 +1415882922; 0; 3779 +1415882922; 0; 3780 +1415882922; 0; 3783 +1415882922; 0; 3780 +1415882922; 0; 3782 +1415882922; 0; 3781 +1415882922; 0; 3780 +1415882922; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3781 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3779 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3779 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3781 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882923; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3781 +1415882924; 0; 3781 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882924; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3783 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3782 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882925; 0; 3781 +1415882925; 0; 3780 +1415882925; 0; 3782 +1415882925; 0; 3780 +1415882925; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3781 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3779 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3779 +1415882926; 0; 3779 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3781 +1415882926; 0; 3780 +1415882926; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3784 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3783 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3781 +1415882927; 0; 3779 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882927; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3779 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882928; 0; 3781 +1415882928; 0; 3781 +1415882928; 0; 3780 +1415882928; 0; 3781 +1415882929; 0; 3781 +1415882929; 0; 3781 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3783 +1415882929; 0; 3780 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882929; 0; 3779 +1415882929; 0; 3780 +1415882929; 0; 3778 +1415882929; 0; 3779 +1415882929; 0; 3780 +1415882929; 0; 3781 +1415882929; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3779 +1415882930; 0; 3781 +1415882930; 0; 3781 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3781 +1415882930; 0; 3779 +1415882930; 0; 3780 +1415882930; 0; 3780 +1415882930; 0; 3779 +1415882930; 0; 3781 +1415882930; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882931; 0; 3780 +1415882931; 0; 3779 +1415882931; 0; 3781 +1415882931; 0; 3780 +1415882931; 0; 3781 +1415882931; 0; 3779 +1415882931; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3782 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3779 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3781 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882932; 0; 3780 +1415882933; 0; 3781 +1415882933; 0; 3780 +1415882933; 0; 3781 +1415882933; 0; 3781 +1415882933; 0; 3779 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3779 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3780 +1415882933; 0; 3783 +1415882933; 0; 3781 +1415882933; 0; 3779 +1415882933; 0; 3779 +1415882933; 0; 3781 +1415882933; 0; 3779 +1415882933; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3778 +1415882934; 0; 3781 +1415882934; 0; 3780 +1415882934; 0; 3779 +1415882934; 0; 3781 +1415882934; 0; 3780 +1415882934; 0; 3779 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3780 +1415882934; 0; 3779 +1415882934; 0; 3779 +1415882934; 0; 3783 +1415882934; 0; 3781 +1415882934; 0; 3781 +1415882934; 0; 3781 +1415882934; 0; 3781 +1415882934; 0; 3783 +1415882934; 0; 3779 +1415882934; 0; 3779 +1415882934; 0; 3780 +1415882934; 0; 3781 +1415882935; 0; 3780 +1415882935; 0; 3069 +1415882935; 0; 3063 +1415882935; 0; 3051 +1415882935; 0; 3089 +1415882935; 1; 3345 +1415882935; 1; 3407 +1415882935; 1; 3040 +1415882935; 1; 3099 +1415882935; 1; 3046 +1415882935; 1; 3645 +1415882935; 1; 3780 +1415882935; 1; 3779 +1415882935; 1; 3780 +1415882935; 0; 3779 +1415882935; 0; 3779 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882935; 0; 3779 +1415882935; 0; 3780 +1415882935; 0; 3781 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882935; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3779 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3780 +1415882936; 0; 3781 +1415882936; 0; 3781 +1415882936; 0; 3777 +1415882936; 0; 3780 +1415882936; 0; 3779 +1415882936; 0; 3779 +1415882936; 0; 3780 +1415882936; 0; 3779 +1415882936; 0; 3779 +1415882936; 0; 3781 +1415882936; 0; 3779 +1415882936; 0; 3779 +1415882936; 0; 3780 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3780 +1415882937; 0; 3780 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3780 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3780 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882937; 0; 3779 +1415882937; 0; 3779 +1415882937; 0; 3778 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3778 +1415882938; 0; 3778 +1415882938; 0; 3778 +1415882938; 0; 3780 +1415882938; 0; 3780 +1415882938; 0; 3779 +1415882938; 0; 3780 +1415882938; 0; 3779 +1415882938; 0; 3778 +1415882938; 0; 3779 +1415882938; 0; 3780 +1415882938; 0; 3777 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3779 +1415882938; 0; 3780 +1415882938; 0; 3780 +1415882938; 0; 3780 +1415882938; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3779 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3780 +1415882939; 0; 3781 +1415882939; 0; 3781 +1415882939; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3780 +1415882940; 0; 3782 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3782 +1415882940; 0; 3780 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3781 +1415882940; 0; 3782 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882940; 0; 3780 +1415882941; 0; 3780 +1415882941; 0; 3781 diff --git a/Programm/processlog3.txt b/Programm/processlog3.txt new file mode 100755 index 0000000..660f54a --- /dev/null +++ b/Programm/processlog3.txt @@ -0,0 +1,408 @@ +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3779 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883056; 0; 3781 +1415883056; 0; 3781 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3780 +1415883056; 0; 3781 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3779 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883057; 0; 3781 +1415883057; 0; 3781 +1415883057; 0; 3781 +1415883057; 0; 3780 +1415883057; 0; 3780 +1415883058; 0; 3780 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3780 +1415883058; 0; 3779 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3779 +1415883058; 0; 3780 +1415883058; 0; 3780 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3779 +1415883058; 0; 3780 +1415883058; 0; 3782 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3781 +1415883058; 0; 3780 +1415883058; 0; 3780 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3780 +1415883059; 0; 3784 +1415883059; 0; 3782 +1415883059; 0; 3783 +1415883059; 0; 3779 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3779 +1415883059; 0; 3780 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3781 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883059; 0; 3779 +1415883059; 0; 3780 +1415883059; 0; 3780 +1415883059; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3779 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3779 +1415883060; 0; 3778 +1415883060; 0; 3779 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3780 +1415883060; 0; 3780 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883060; 0; 3781 +1415883061; 0; 3778 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3779 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3784 +1415883061; 0; 3780 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883061; 0; 3780 +1415883061; 0; 3781 +1415883061; 0; 3781 +1415883061; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3779 +1415883062; 0; 3780 +1415883062; 0; 3779 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3780 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883062; 0; 3781 +1415883063; 0; 3781 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3779 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3779 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3780 +1415883063; 0; 3778 +1415883063; 0; 3781 +1415883063; 0; 3780 +1415883063; 0; 3781 +1415883063; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3781 +1415883064; 0; 3779 +1415883064; 0; 3779 +1415883064; 0; 3781 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3782 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3781 +1415883064; 0; 3779 +1415883064; 0; 3780 +1415883064; 0; 3780 +1415883064; 0; 3779 +1415883064; 0; 3780 +1415883064; 0; 3781 +1415883064; 0; 3780 +1415883064; 0; 3779 +1415883065; 0; 3779 +1415883065; 0; 3779 +1415883065; 0; 3782 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3781 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3782 +1415883065; 0; 3780 +1415883065; 0; 3780 +1415883065; 0; 3782 +1415883065; 0; 3780 +1415883065; 0; 3781 +1415883065; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3781 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3779 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3780 +1415883066; 0; 3779 +1415883066; 0; 3779 +1415883066; 0; 3121 +1415883067; 0; 3106 +1415883067; 0; 3125 +1415883067; 1; 3413 +1415883067; 1; 3410 +1415883067; 1; 3416 +1415883067; 1; 3410 +1415883067; 1; 3780 +1415883067; 1; 3781 +1415883067; 1; 3780 +1415883067; 1; 3781 +1415883067; 1; 3779 +1415883067; 1; 3780 +1415883067; 0; 3780 +1415883067; 0; 3780 +1415883067; 0; 3779 +1415883067; 0; 3781 +1415883067; 0; 3780 +1415883067; 0; 3780 +1415883067; 0; 3781 +1415883067; 0; 3779 +1415883067; 0; 3778 +1415883067; 0; 3780 +1415883067; 0; 3779 +1415883067; 0; 3782 +1415883067; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3781 +1415883068; 0; 3780 +1415883068; 0; 3780 +1415883068; 0; 3781 +1415883068; 0; 3781 +1415883068; 0; 3780 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3780 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3779 +1415883068; 0; 3779 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3780 +1415883068; 0; 3779 +1415883068; 0; 3778 +1415883068; 0; 3778 +1415883068; 0; 3778 +1415883068; 0; 3779 +1415883068; 0; 3781 +1415883068; 0; 3778 +1415883068; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3782 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883069; 0; 3778 +1415883069; 0; 3778 +1415883069; 0; 3778 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3779 +1415883069; 0; 3778 +1415883070; 0; 3780 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3778 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3780 +1415883070; 0; 3782 +1415883070; 0; 3778 +1415883070; 0; 3778 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3779 +1415883070; 0; 3780 +1415883070; 0; 3781 +1415883070; 0; 3780 +1415883070; 0; 3780 +1415883070; 0; 3779 +1415883070; 0; 3782 +1415883070; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3781 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3781 +1415883071; 0; 3779 +1415883071; 0; 3780 +1415883071; 0; 3780 +1415883071; 0; 3779 +1415883071; 0; 3780 +1415883071; 0; 3782 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3781 +1415883071; 0; 3781 +1415883071; 0; 3780 +1415883071; 0; 3779 +1415883071; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3780 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3781 +1415883072; 0; 3780 +1415883072; 0; 3780 +1415883072; 0; 3780 +1415883072; 0; 3781 +1415883072; 0; 3781 From 48ff713b71fbd6c34a3cc398c456154e99e606ad Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:35:48 +0100 Subject: [PATCH 13/17] [FIX] pointer error at Plugin --- Programm/Sources/factory.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/Programm/Sources/factory.cpp b/Programm/Sources/factory.cpp index 12ef4ce..9683757 100755 --- a/Programm/Sources/factory.cpp +++ b/Programm/Sources/factory.cpp @@ -18,6 +18,7 @@ FSM* FSMFactory::createFSM(){ FestoProcessImage* processImage = new FestoMiniLab1008ProcessImage(); FestoProcessAccess* processAccess = new FestoProcessAccess(processImage); Plugin* plugin = new HeightProfileCheck(processAccess); + processAccess->addPlugin(plugin); FSM* fsm = new FSM(processAccess, plugin); return fsm; } From 838f486909c11551fb3f597ae280799b7a9dec8c Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:36:22 +0100 Subject: [PATCH 14/17] [FIX] better constructor at UnitTester --- Programm/Sources/UnitTester.cpp | 2 -- Programm/Sources/UnitTester.h | 1 - Programm/Sources/main.cpp | 3 ++- 3 files changed, 2 insertions(+), 4 deletions(-) mode change 100644 => 100755 Programm/Sources/UnitTester.cpp mode change 100644 => 100755 Programm/Sources/UnitTester.h diff --git a/Programm/Sources/UnitTester.cpp b/Programm/Sources/UnitTester.cpp old mode 100644 new mode 100755 index 31cd0b1..c65ee01 --- a/Programm/Sources/UnitTester.cpp +++ b/Programm/Sources/UnitTester.cpp @@ -19,8 +19,6 @@ using namespace std; UnitTester::UnitTester() { sensorStub = new StubHeightSensor(); unitUnderTest = new HeightProfileCheck(sensorStub); - - doTest(); } UnitTester::~UnitTester() { diff --git a/Programm/Sources/UnitTester.h b/Programm/Sources/UnitTester.h old mode 100644 new mode 100755 index 6e5e564..24441b5 --- a/Programm/Sources/UnitTester.h +++ b/Programm/Sources/UnitTester.h @@ -25,7 +25,6 @@ class UnitTester { public: UnitTester(); ~UnitTester(); -private: void doTest(); }; diff --git a/Programm/Sources/main.cpp b/Programm/Sources/main.cpp index fc1e8c0..ae6317b 100755 --- a/Programm/Sources/main.cpp +++ b/Programm/Sources/main.cpp @@ -8,7 +8,7 @@ #include #include -#define TEST // enable tests +//#define TEST // enable tests #include "factory.h" #ifdef TEST @@ -24,6 +24,7 @@ int main(int argc, char** argv) { #ifdef TEST UnitTester *t = new UnitTester(); + t->doTest(); delete t; #endif From 3176efb63494ce3d3d6b9ab3f5bc6fbf0242b219 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:36:38 +0100 Subject: [PATCH 15/17] [NETB] netbeans files update --- Programm/nbproject/private/private.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Programm/nbproject/private/private.xml b/Programm/nbproject/private/private.xml index bd90369..6b00f87 100755 --- a/Programm/nbproject/private/private.xml +++ b/Programm/nbproject/private/private.xml @@ -4,4 +4,7 @@ 1 0 + + + From a755f8f798038f91aa30769e82af8d7f43a1b454 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:37:12 +0100 Subject: [PATCH 16/17] [ENH] enhance logging of wrong items --- Programm/Sources/HeightProfileCheck.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) mode change 100644 => 100755 Programm/Sources/HeightProfileCheck.cpp diff --git a/Programm/Sources/HeightProfileCheck.cpp b/Programm/Sources/HeightProfileCheck.cpp old mode 100644 new mode 100755 index c9a892f..522f8a8 --- a/Programm/Sources/HeightProfileCheck.cpp +++ b/Programm/Sources/HeightProfileCheck.cpp @@ -70,7 +70,6 @@ void HeightProfileCheck::evalEvents() { case WrongType2: currentState = H_Standby; break; - default: break; } @@ -102,7 +101,8 @@ bool HeightProfileCheck::result() { void HeightProfileCheck::logDefectType(std::string defectDescription) { if (logFile.is_open()) { - logFile << time(NULL) << " wrong item: " << defectDescription << std::endl; + logFile << time(NULL) << " wrong item: " << defectDescription << std::endl; + std::cout << time(NULL) << " wrong item: " << defectDescription << std::endl; }else { std::cout << "logfile can´t be accessed" << std::endl; } From 50c6e0c9683aa6a7af6e0fee7bb0f9cc41e28184 Mon Sep 17 00:00:00 2001 From: Jannik Beyerstedt Date: Tue, 16 Dec 2014 12:40:44 +0100 Subject: [PATCH 17/17] [FIX] direct change of drive direction --- Programm/Sources/FestoProcessAccess.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Programm/Sources/FestoProcessAccess.cpp b/Programm/Sources/FestoProcessAccess.cpp index 0383f74..479f399 100755 --- a/Programm/Sources/FestoProcessAccess.cpp +++ b/Programm/Sources/FestoProcessAccess.cpp @@ -16,6 +16,7 @@ FestoProcessAccess::FestoProcessAccess(FestoProcessImage* processImage) { timeCounter = 0; process = processImage; + plugin = NULL; #ifdef LOG_PROCESS logFile = fopen("c:\\tmp\\processlog.txt","w"); @@ -54,21 +55,25 @@ void FestoProcessAccess::applyOutput(void) { void FestoProcessAccess::driveRight(void) { process->setBitInOutput(DRIVE_DIRECTION_RIGHT); + process->clearBitInOutput(DRIVE_DIRECTION_LEFT); process->clearBitInOutput(DRIVE_STOP); } void FestoProcessAccess::driveLeft(void) { process-> setBitInOutput(DRIVE_DIRECTION_LEFT); + process-> clearBitInOutput(DRIVE_DIRECTION_RIGHT); process-> clearBitInOutput(DRIVE_STOP); } void FestoProcessAccess::driveSlowRight(void) { process->setBitInOutput(DRIVE_DIRECTION_RIGHT | DRIVE_SLOW); + process->clearBitInOutput(DRIVE_DIRECTION_LEFT); process->clearBitInOutput(DRIVE_STOP); } void FestoProcessAccess::driveSlowLeft(void) { process->setBitInOutput(DRIVE_DIRECTION_LEFT | DRIVE_SLOW); + process->clearBitInOutput(DRIVE_DIRECTION_RIGHT); process->clearBitInOutput(DRIVE_STOP); }