소스 검색

restart software from menu, added some TODOs

Sebastian Vendt 6 년 전
부모
커밋
c23f1cca70

+ 431 - 174
CoffeeCode/.cproject

@@ -1,177 +1,434 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <?fileVersion 4.0.0?><cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
-	<storageModule moduleId="org.eclipse.cdt.core.settings">
-		<cconfiguration id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735">
-			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735" moduleId="org.eclipse.cdt.core.settings" name="Debug">
-				<externalSettings/>
-				<extensions>
-					<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
-				</extensions>
-			</storageModule>
-			<storageModule moduleId="cdtBuildSystem" version="4.0.0">
-				<configuration artifactName="coffeecode" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735" name="Debug" parent="cdt.managedbuild.config.gnu.cross.exe.debug" postbuildStep="~/CoffeePi/CoffeeCode/deploy coffeecode &quot;${ProjDirPath}&quot; &quot;${ProjName}&quot;">
-					<folderInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735." name="/" resourcePath="">
-						<toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.debug.812446316" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.debug">
-							<option id="cdt.managedbuild.option.gnu.cross.path.1620127555" name="Path" superClass="cdt.managedbuild.option.gnu.cross.path" value="/home/sebastian/ArmCrossCompiler/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin" valueType="string"/>
-							<option id="cdt.managedbuild.option.gnu.cross.prefix.1147812077" name="Prefix" superClass="cdt.managedbuild.option.gnu.cross.prefix" value="arm-linux-gnueabihf-" valueType="string"/>
-							<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross.1661109517" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
-							<builder buildPath="${workspace_loc:/CoffeeCode}/Debug" id="cdt.managedbuild.builder.gnu.cross.1825703461" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.builder.gnu.cross"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.2133223649" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler">
-								<option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.1633625824" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" value="gnu.c.optimization.level.none" valueType="enumerated"/>
-								<option id="gnu.c.compiler.option.debugging.level.835404286" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>
-								<option id="gnu.c.compiler.option.include.paths.750277177" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">
-									<listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi"/>
-									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite}&quot;"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/include"/>
-								</option>
-								<option id="gnu.c.compiler.option.include.files.1577782333" name="Include files (-include)" superClass="gnu.c.compiler.option.include.files"/>
-								<option id="gnu.c.compiler.option.misc.other.6920715" name="Other flags" superClass="gnu.c.compiler.option.misc.other" value="-c -fmessage-length=0 -std=c++11 -DTHREADSAFE=1 -lpthread" valueType="string"/>
-								<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.435867427" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
-							</tool>
-							<tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler">
-								<option id="gnu.cpp.compiler.option.optimization.level.629779628" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.size" valueType="enumerated"/>
-								<option id="gnu.cpp.compiler.option.debugging.level.490333088" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
-								<option id="gnu.cpp.compiler.option.include.paths.458109603" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" valueType="includePath">
-									<listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi"/>
-									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite}&quot;"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/include"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include"/>
-								</option>
-								<option id="gnu.cpp.compiler.option.other.other.822952785" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" value="-c -fmessage-length=0 -std=c++11 -DTHREADSAFE=1 -lpthread" valueType="string"/>
-								<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1449409074" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
-							</tool>
-							<tool id="cdt.managedbuild.tool.gnu.cross.c.linker.1150547366" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1977507866" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker">
-								<option id="gnu.cpp.link.option.paths.1835854318" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" valueType="libPaths">
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/lib/arm-linux-gnueabihf"/>
-									<listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite/Default}&quot;"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/lib"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/lib"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/lib"/>
-									<listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi/Debug"/>
-								</option>
-								<option id="gnu.cpp.link.option.libs.800876913" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" valueType="libs">
-									<listOptionValue builtIn="false" value="wiringPi"/>
-									<listOptionValue builtIn="false" value="dl"/>
-									<listOptionValue builtIn="false" value="rt"/>
-									<listOptionValue builtIn="false" value="pthread"/>
-								</option>
-								<option id="gnu.cpp.link.option.flags.273537853" name="Linker flags" superClass="gnu.cpp.link.option.flags" value="--sysroot=/home/sebastian/opencv_Source/ArmLibs" valueType="string"/>
-								<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.482712297" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
-									<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
-									<additionalInput kind="additionalinput" paths="$(LIBS)"/>
-								</inputType>
-							</tool>
-							<tool id="cdt.managedbuild.tool.gnu.cross.archiver.1403596622" name="Cross GCC Archiver" superClass="cdt.managedbuild.tool.gnu.cross.archiver"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.assembler.516386995" name="Cross GCC Assembler" superClass="cdt.managedbuild.tool.gnu.cross.assembler">
-								<inputType id="cdt.managedbuild.tool.gnu.assembler.input.628846185" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
-							</tool>
-						</toolChain>
-					</folderInfo>
-					<fileInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.1828524293" name="canspeed.cpp" rcbsApplicability="disable" resourcePath="canspeed.cpp" toolsToInvoke="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575.48715778">
-						<tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575.48715778" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575">
-							<option id="gnu.cpp.compiler.option.optimization.level.1264892597" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.size" valueType="enumerated"/>
-							<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1375961860" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
-						</tool>
-						<tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.865219715" name="Resource Custom Build Step">
-							<inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.1473831985" name="Resource Custom Build Step Input Type">
-								<additionalInput kind="additionalinputdependency" paths=""/>
-							</inputType>
-							<outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.968467368" name="Resource Custom Build Step Output Type"/>
-						</tool>
-					</fileInfo>
-					<sourceEntries>
-						<entry excluding="canspeed.cpp|sqlite/shell.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
-					</sourceEntries>
-				</configuration>
-			</storageModule>
-			<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
-		</cconfiguration>
-		<cconfiguration id="cdt.managedbuild.config.gnu.cross.exe.release.54911552">
-			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.cross.exe.release.54911552" moduleId="org.eclipse.cdt.core.settings" name="Release">
-				<externalSettings/>
-				<extensions>
-					<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
-					<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
-				</extensions>
-			</storageModule>
-			<storageModule moduleId="cdtBuildSystem" version="4.0.0">
-				<configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.cross.exe.release.54911552" name="Release" parent="cdt.managedbuild.config.gnu.cross.exe.release">
-					<folderInfo id="cdt.managedbuild.config.gnu.cross.exe.release.54911552." name="/" resourcePath="">
-						<toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.release.256431159" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.release">
-							<option id="cdt.managedbuild.option.gnu.cross.path.123925299" name="Path" superClass="cdt.managedbuild.option.gnu.cross.path" value="/home/sebastian/ArmCrossCompiler/tools" valueType="string"/>
-							<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross.1156150939" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
-							<builder buildPath="${workspace_loc:/CoffeeCode}/Release" id="cdt.managedbuild.builder.gnu.cross.1101804384" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.builder.gnu.cross"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.1036121755" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler">
-								<option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.option.optimization.level.214658157" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" valueType="enumerated"/>
-								<option id="gnu.c.compiler.option.debugging.level.563333842" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" value="gnu.c.debugging.level.none" valueType="enumerated"/>
-								<inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1347928614" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
-							</tool>
-							<tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.283893729" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler">
-								<option id="gnu.cpp.compiler.option.optimization.level.800340288" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
-								<option id="gnu.cpp.compiler.option.debugging.level.428273656" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
-								<inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.2104693797" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
-							</tool>
-							<tool id="cdt.managedbuild.tool.gnu.cross.c.linker.345825560" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1571109472" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker">
-								<inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1756540630" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
-									<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
-									<additionalInput kind="additionalinput" paths="$(LIBS)"/>
-								</inputType>
-							</tool>
-							<tool id="cdt.managedbuild.tool.gnu.cross.archiver.732517529" name="Cross GCC Archiver" superClass="cdt.managedbuild.tool.gnu.cross.archiver"/>
-							<tool id="cdt.managedbuild.tool.gnu.cross.assembler.2013097265" name="Cross GCC Assembler" superClass="cdt.managedbuild.tool.gnu.cross.assembler">
-								<inputType id="cdt.managedbuild.tool.gnu.assembler.input.973627320" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
-							</tool>
-						</toolChain>
-					</folderInfo>
-					<sourceEntries>
-						<entry excluding="canspeed.cpp|sqlite/shell.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
-					</sourceEntries>
-				</configuration>
-			</storageModule>
-			<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
-		</cconfiguration>
-	</storageModule>
-	<storageModule moduleId="cdtBuildSystem" version="4.0.0">
-		<project id="CoffeeCode.cdt.managedbuild.target.gnu.cross.exe.1989023680" name="Executable" projectType="cdt.managedbuild.target.gnu.cross.exe"/>
-	</storageModule>
-	<storageModule moduleId="scannerConfiguration">
-		<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
-		<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735;cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.;cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575;cdt.managedbuild.tool.gnu.cpp.compiler.input.1449409074">
-			<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
-		</scannerConfigBuildInfo>
-		<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.release.54911552;cdt.managedbuild.config.gnu.cross.exe.release.54911552.;cdt.managedbuild.tool.gnu.cross.c.compiler.1036121755;cdt.managedbuild.tool.gnu.c.compiler.input.1347928614">
-			<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
-		</scannerConfigBuildInfo>
-		<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735;cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.;cdt.managedbuild.tool.gnu.cross.c.compiler.2133223649;cdt.managedbuild.tool.gnu.c.compiler.input.435867427">
-			<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
-		</scannerConfigBuildInfo>
-		<scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.release.54911552;cdt.managedbuild.config.gnu.cross.exe.release.54911552.;cdt.managedbuild.tool.gnu.cross.cpp.compiler.283893729;cdt.managedbuild.tool.gnu.cpp.compiler.input.2104693797">
-			<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
-		</scannerConfigBuildInfo>
-	</storageModule>
-	<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
-	<storageModule moduleId="refreshScope" versionNumber="2">
-		<configuration configurationName="Release">
-			<resource resourceType="PROJECT" workspacePath="/Pi code"/>
-		</configuration>
-		<configuration configurationName="Debug">
-			<resource resourceType="PROJECT" workspacePath="/Pi code"/>
-		</configuration>
-	</storageModule>
-	<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
-	<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
-		<buildTargets/>
-	</storageModule>
+    	
+    <storageModule moduleId="org.eclipse.cdt.core.settings">
+        		
+        <cconfiguration id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735">
+            			
+            <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735" moduleId="org.eclipse.cdt.core.settings" name="Debug">
+                				
+                <externalSettings/>
+                				
+                <extensions>
+                    					
+                    <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    				
+                </extensions>
+                			
+            </storageModule>
+            			
+            <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+                				
+                <configuration artifactName="coffeecode" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735" name="Debug" optionalBuildProperties="org.eclipse.cdt.docker.launcher.containerbuild.property.selectedvolumes=,org.eclipse.cdt.docker.launcher.containerbuild.property.volumes=" parent="cdt.managedbuild.config.gnu.cross.exe.debug" postbuildStep="${ProjDirPath}/deploy coffeecode &quot;${ProjDirPath}&quot; &quot;${ProjName}&quot;">
+                    					
+                    <folderInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735." name="/" resourcePath="">
+                        						
+                        <toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.debug.812446316" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.debug">
+                            							
+                            <option id="cdt.managedbuild.option.gnu.cross.path.1620127555" name="Path" superClass="cdt.managedbuild.option.gnu.cross.path" useByScannerDiscovery="false" value="/home/sebastian/ArmCrossCompiler/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin" valueType="string"/>
+                            							
+                            <option id="cdt.managedbuild.option.gnu.cross.prefix.1147812077" name="Prefix" superClass="cdt.managedbuild.option.gnu.cross.prefix" useByScannerDiscovery="false" value="arm-linux-gnueabihf-" valueType="string"/>
+                            							
+                            <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross.1661109517" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
+                            							
+                            <builder buildPath="${workspace_loc:/CoffeeCode}/Debug" id="cdt.managedbuild.builder.gnu.cross.1825703461" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.builder.gnu.cross"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.2133223649" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler">
+                                								
+                                <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.option.optimization.level.1633625824" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" useByScannerDiscovery="false" value="gnu.c.optimization.level.none" valueType="enumerated"/>
+                                								
+                                <option id="gnu.c.compiler.option.debugging.level.835404286" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.max" valueType="enumerated"/>
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.c.compiler.option.include.paths.750277177" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include/arm-linux-gnueabihf/"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite}&quot;"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/include"/>
+                                    								
+                                </option>
+                                								
+                                <option id="gnu.c.compiler.option.include.files.1577782333" name="Include files (-include)" superClass="gnu.c.compiler.option.include.files" useByScannerDiscovery="false"/>
+                                								
+                                <option id="gnu.c.compiler.option.misc.other.6920715" name="Other flags" superClass="gnu.c.compiler.option.misc.other" useByScannerDiscovery="false" value="-c -fmessage-length=0 -std=c++11 -DTHREADSAFE=1 -lpthread" valueType="string"/>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.435867427" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler">
+                                								
+                                <option id="gnu.cpp.compiler.option.optimization.level.629779628" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.size" valueType="enumerated"/>
+                                								
+                                <option id="gnu.cpp.compiler.option.debugging.level.490333088" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.max" valueType="enumerated"/>
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.cpp.compiler.option.include.paths.458109603" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include/arm-linux-gnueabihf/"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite}&quot;"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/include"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include"/>
+                                    								
+                                </option>
+                                								
+                                <option id="gnu.cpp.compiler.option.other.other.822952785" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" useByScannerDiscovery="false" value="-c -fmessage-length=0 -std=c++11 -DTHREADSAFE=1 -lpthread" valueType="string"/>
+                                								
+                                <option id="gnu.cpp.compiler.option.dialect.std.703508735" name="Language standard" superClass="gnu.cpp.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.cpp.compiler.dialect.default" valueType="enumerated"/>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1449409074" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.c.linker.1150547366" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1977507866" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker">
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.cpp.link.option.paths.1835854318" name="Library search path (-L)" superClass="gnu.cpp.link.option.paths" useByScannerDiscovery="false" valueType="libPaths">
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/lib/arm-linux-gnueabihf"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/lib/arm-linux-gnueabihf"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite/Default}&quot;"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/lib"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/lib"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/lib"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi/Debug"/>
+                                    								
+                                </option>
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.cpp.link.option.libs.800876913" name="Libraries (-l)" superClass="gnu.cpp.link.option.libs" useByScannerDiscovery="false" valueType="libs">
+                                    									
+                                    <listOptionValue builtIn="false" value="wiringPi"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="dl"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="rt"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="pthread"/>
+                                    								
+                                </option>
+                                								
+                                <option id="gnu.cpp.link.option.flags.273537853" name="Linker flags" superClass="gnu.cpp.link.option.flags" useByScannerDiscovery="false" value="-Wl,--no-as-needed --sysroot=/home/sebastian/opencv_Source/ArmLibs" valueType="string"/>
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="true" id="gnu.cpp.link.option.other.1085902026" name="Other options (-Xlinker [option])" superClass="gnu.cpp.link.option.other" useByScannerDiscovery="false" valueType="stringList"/>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.482712297" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+                                    									
+                                    <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+                                    									
+                                    <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+                                    								
+                                </inputType>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.archiver.1403596622" name="Cross GCC Archiver" superClass="cdt.managedbuild.tool.gnu.cross.archiver"/>
+                            							
+                            <tool command="/home/sebastian/ArmCrossCompiler/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/arm-linux-gnueabihf/bin/as" id="cdt.managedbuild.tool.gnu.cross.assembler.516386995" name="Cross GCC Assembler" superClass="cdt.managedbuild.tool.gnu.cross.assembler">
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.assembler.input.628846185" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+                                							
+                            </tool>
+                            						
+                        </toolChain>
+                        					
+                    </folderInfo>
+                    					
+                    <folderInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.1890836287" name="/" resourcePath="sqlite">
+                        						
+                        <toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.debug.817341032" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.debug" unusedChildren="">
+                            							
+                            <option id="cdt.managedbuild.option.gnu.cross.path.1620127555.502566778" name="Path" superClass="cdt.managedbuild.option.gnu.cross.path.1620127555"/>
+                            							
+                            <option id="cdt.managedbuild.option.gnu.cross.prefix.1147812077.2035914885" name="Prefix" superClass="cdt.managedbuild.option.gnu.cross.prefix.1147812077"/>
+                            							
+                            <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
+                            							
+                            <tool command="arm-linux-gnueabihf-gcc" id="cdt.managedbuild.tool.gnu.cross.c.compiler.1628263978" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler.2133223649">
+                                								
+                                <option id="gnu.c.compiler.option.dialect.std.1435395295" name="Language standard" superClass="gnu.c.compiler.option.dialect.std" useByScannerDiscovery="true" value="gnu.c.compiler.dialect.default" valueType="enumerated"/>
+                                								
+                                <option id="gnu.c.compiler.option.misc.other.1624005894" name="Other flags" superClass="gnu.c.compiler.option.misc.other" useByScannerDiscovery="false" value="-std=c++11 -c -fmessage-length=0 -DTHREADSAFE=1 -lpthread" valueType="string"/>
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.c.compiler.option.include.paths.524132885" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include/arm-linux-gnueabihf/"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite}&quot;"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/include"/>
+                                    								
+                                </option>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.143674810" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.1985841693" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575">
+                                								
+                                <option IS_BUILTIN_EMPTY="false" IS_VALUE_EMPTY="false" id="gnu.cpp.compiler.option.include.paths.1763352781" name="Include paths (-I)" superClass="gnu.cpp.compiler.option.include.paths" useByScannerDiscovery="false" valueType="includePath">
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/wiringPi/wiringPi"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include/arm-linux-gnueabihf/"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="&quot;${workspace_loc:/sqlite}&quot;"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/local/include"/>
+                                    									
+                                    <listOptionValue builtIn="false" value="/home/sebastian/opencv_Source/ArmLibs/usr/include"/>
+                                    								
+                                </option>
+                                								
+                                <option id="gnu.cpp.compiler.option.other.other.1922213394" name="Other flags" superClass="gnu.cpp.compiler.option.other.other" useByScannerDiscovery="false" value="-std=c++11 -c -fmessage-length=0 -DTHREADSAFE=1 -lpthread " valueType="string"/>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.2046443678" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.c.linker.2051726281" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker.1150547366"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1500571265" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker.1977507866"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.archiver.542873108" name="Cross GCC Archiver" superClass="cdt.managedbuild.tool.gnu.cross.archiver.1403596622"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.assembler.93839321" name="Cross GCC Assembler" superClass="cdt.managedbuild.tool.gnu.cross.assembler.516386995">
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.assembler.input.162593178" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+                                							
+                            </tool>
+                            						
+                        </toolChain>
+                        					
+                    </folderInfo>
+                    					
+                    <fileInfo id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.1828524293" name="canspeed.cpp" rcbsApplicability="disable" resourcePath="canspeed.cpp" toolsToInvoke="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575.48715778">
+                        						
+                        <tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575.48715778" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575">
+                            							
+                            <option id="gnu.cpp.compiler.option.optimization.level.1264892597" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.size" valueType="enumerated"/>
+                            							
+                            <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.1375961860" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+                            						
+                        </tool>
+                        						
+                        <tool customBuildStep="true" id="org.eclipse.cdt.managedbuilder.ui.rcbs.865219715" name="Resource Custom Build Step">
+                            							
+                            <inputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.inputtype.1473831985" name="Resource Custom Build Step Input Type">
+                                								
+                                <additionalInput kind="additionalinputdependency" paths=""/>
+                                							
+                            </inputType>
+                            							
+                            <outputType id="org.eclipse.cdt.managedbuilder.ui.rcbs.outputtype.968467368" name="Resource Custom Build Step Output Type"/>
+                            						
+                        </tool>
+                        					
+                    </fileInfo>
+                    					
+                    <sourceEntries>
+                        						
+                        <entry excluding="canspeed.cpp|sqlite/shell.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
+                        					
+                    </sourceEntries>
+                    				
+                </configuration>
+                			
+            </storageModule>
+            			
+            <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+            		
+        </cconfiguration>
+        		
+        <cconfiguration id="cdt.managedbuild.config.gnu.cross.exe.release.54911552">
+            			
+            <storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="cdt.managedbuild.config.gnu.cross.exe.release.54911552" moduleId="org.eclipse.cdt.core.settings" name="Release">
+                				
+                <externalSettings/>
+                				
+                <extensions>
+                    					
+                    <extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    					
+                    <extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
+                    				
+                </extensions>
+                			
+            </storageModule>
+            			
+            <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+                				
+                <configuration artifactName="${ProjName}" buildArtefactType="org.eclipse.cdt.build.core.buildArtefactType.exe" buildProperties="org.eclipse.cdt.build.core.buildArtefactType=org.eclipse.cdt.build.core.buildArtefactType.exe,org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release" cleanCommand="rm -rf" description="" id="cdt.managedbuild.config.gnu.cross.exe.release.54911552" name="Release" parent="cdt.managedbuild.config.gnu.cross.exe.release">
+                    					
+                    <folderInfo id="cdt.managedbuild.config.gnu.cross.exe.release.54911552." name="/" resourcePath="">
+                        						
+                        <toolChain id="cdt.managedbuild.toolchain.gnu.cross.exe.release.256431159" name="Cross GCC" superClass="cdt.managedbuild.toolchain.gnu.cross.exe.release">
+                            							
+                            <option id="cdt.managedbuild.option.gnu.cross.path.123925299" name="Path" superClass="cdt.managedbuild.option.gnu.cross.path" value="/home/sebastian/ArmCrossCompiler/tools" valueType="string"/>
+                            							
+                            <targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="cdt.managedbuild.targetPlatform.gnu.cross.1156150939" isAbstract="false" osList="all" superClass="cdt.managedbuild.targetPlatform.gnu.cross"/>
+                            							
+                            <builder buildPath="${workspace_loc:/CoffeeCode}/Release" id="cdt.managedbuild.builder.gnu.cross.1101804384" keepEnvironmentInBuildfile="false" managedBuildOn="true" name="Gnu Make Builder" superClass="cdt.managedbuild.builder.gnu.cross"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.c.compiler.1036121755" name="Cross GCC Compiler" superClass="cdt.managedbuild.tool.gnu.cross.c.compiler">
+                                								
+                                <option defaultValue="gnu.c.optimization.level.most" id="gnu.c.compiler.option.optimization.level.214658157" name="Optimization Level" superClass="gnu.c.compiler.option.optimization.level" useByScannerDiscovery="false" valueType="enumerated"/>
+                                								
+                                <option id="gnu.c.compiler.option.debugging.level.563333842" name="Debug Level" superClass="gnu.c.compiler.option.debugging.level" useByScannerDiscovery="false" value="gnu.c.debugging.level.none" valueType="enumerated"/>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1347928614" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.cpp.compiler.283893729" name="Cross G++ Compiler" superClass="cdt.managedbuild.tool.gnu.cross.cpp.compiler">
+                                								
+                                <option id="gnu.cpp.compiler.option.optimization.level.800340288" name="Optimization Level" superClass="gnu.cpp.compiler.option.optimization.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.optimization.level.most" valueType="enumerated"/>
+                                								
+                                <option id="gnu.cpp.compiler.option.debugging.level.428273656" name="Debug Level" superClass="gnu.cpp.compiler.option.debugging.level" useByScannerDiscovery="false" value="gnu.cpp.compiler.debugging.level.none" valueType="enumerated"/>
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.cpp.compiler.input.2104693797" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.input"/>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.c.linker.345825560" name="Cross GCC Linker" superClass="cdt.managedbuild.tool.gnu.cross.c.linker"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.cpp.linker.1571109472" name="Cross G++ Linker" superClass="cdt.managedbuild.tool.gnu.cross.cpp.linker">
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.cpp.linker.input.1756540630" superClass="cdt.managedbuild.tool.gnu.cpp.linker.input">
+                                    									
+                                    <additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
+                                    									
+                                    <additionalInput kind="additionalinput" paths="$(LIBS)"/>
+                                    								
+                                </inputType>
+                                							
+                            </tool>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.archiver.732517529" name="Cross GCC Archiver" superClass="cdt.managedbuild.tool.gnu.cross.archiver"/>
+                            							
+                            <tool id="cdt.managedbuild.tool.gnu.cross.assembler.2013097265" name="Cross GCC Assembler" superClass="cdt.managedbuild.tool.gnu.cross.assembler">
+                                								
+                                <inputType id="cdt.managedbuild.tool.gnu.assembler.input.973627320" superClass="cdt.managedbuild.tool.gnu.assembler.input"/>
+                                							
+                            </tool>
+                            						
+                        </toolChain>
+                        					
+                    </folderInfo>
+                    					
+                    <sourceEntries>
+                        						
+                        <entry excluding="canspeed.cpp|sqlite/shell.c" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>
+                        					
+                    </sourceEntries>
+                    				
+                </configuration>
+                			
+            </storageModule>
+            			
+            <storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
+            		
+        </cconfiguration>
+        	
+    </storageModule>
+    	
+    <storageModule moduleId="cdtBuildSystem" version="4.0.0">
+        		
+        <project id="CoffeeCode.cdt.managedbuild.target.gnu.cross.exe.1989023680" name="Executable" projectType="cdt.managedbuild.target.gnu.cross.exe"/>
+        	
+    </storageModule>
+    	
+    <storageModule moduleId="scannerConfiguration">
+        		
+        <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
+        		
+        <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735;cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.;cdt.managedbuild.tool.gnu.cross.cpp.compiler.212510575;cdt.managedbuild.tool.gnu.cpp.compiler.input.1449409074">
+            			
+            <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
+            		
+        </scannerConfigBuildInfo>
+        		
+        <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.release.54911552;cdt.managedbuild.config.gnu.cross.exe.release.54911552.;cdt.managedbuild.tool.gnu.cross.c.compiler.1036121755;cdt.managedbuild.tool.gnu.c.compiler.input.1347928614">
+            			
+            <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
+            		
+        </scannerConfigBuildInfo>
+        		
+        <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735;cdt.managedbuild.config.gnu.cross.exe.debug.1231565735.;cdt.managedbuild.tool.gnu.cross.c.compiler.2133223649;cdt.managedbuild.tool.gnu.c.compiler.input.435867427">
+            			
+            <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC"/>
+            		
+        </scannerConfigBuildInfo>
+        		
+        <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.exe.release.54911552;cdt.managedbuild.config.gnu.cross.exe.release.54911552.;cdt.managedbuild.tool.gnu.cross.cpp.compiler.283893729;cdt.managedbuild.tool.gnu.cpp.compiler.input.2104693797">
+            			
+            <autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP"/>
+            		
+        </scannerConfigBuildInfo>
+        	
+    </storageModule>
+    	
+    <storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
+    	
+    <storageModule moduleId="refreshScope" versionNumber="2">
+        		
+        <configuration configurationName="Debug">
+            			
+            <resource resourceType="PROJECT" workspacePath="/Pi code"/>
+            		
+        </configuration>
+        		
+        <configuration configurationName="Release">
+            			
+            <resource resourceType="PROJECT" workspacePath="/Pi code"/>
+            		
+        </configuration>
+        	
+    </storageModule>
+    	
+    <storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
+    	
+    <storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
+        		
+        <buildTargets/>
+        	
+    </storageModule>
+    
 </cproject>

+ 48 - 0
CoffeeCode/.settings/language.settings.xml

@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+    	
+    <configuration id="cdt.managedbuild.config.gnu.cross.exe.debug.1231565735" name="Debug">
+        		
+        <extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
+            			
+            <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
+            			
+            <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
+            			
+            <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
+            			
+            <provider class="org.eclipse.cdt.internal.build.crossgcc.CrossGCCBuiltinSpecsDetector" console="false" env-hash="749584680444037244" id="org.eclipse.cdt.build.crossgcc.CrossGCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
+                				
+                <language-scope id="org.eclipse.cdt.core.gcc"/>
+                				
+                <language-scope id="org.eclipse.cdt.core.g++"/>
+                			
+            </provider>
+            		
+        </extension>
+        	
+    </configuration>
+    	
+    <configuration id="cdt.managedbuild.config.gnu.cross.exe.release.54911552" name="Release">
+        		
+        <extension point="org.eclipse.cdt.core.LanguageSettingsProvider">
+            			
+            <provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
+            			
+            <provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
+            			
+            <provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
+            			
+            <provider class="org.eclipse.cdt.internal.build.crossgcc.CrossGCCBuiltinSpecsDetector" console="false" env-hash="367932637145505646" id="org.eclipse.cdt.build.crossgcc.CrossGCCBuiltinSpecsDetector" keep-relative-paths="false" name="CDT Cross GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
+                				
+                <language-scope id="org.eclipse.cdt.core.gcc"/>
+                				
+                <language-scope id="org.eclipse.cdt.core.g++"/>
+                			
+            </provider>
+            		
+        </extension>
+        	
+    </configuration>
+    
+</project>

+ 6 - 0
CoffeeCode/.settings/org.eclipse.cdt.core.prefs

@@ -0,0 +1,6 @@
+eclipse.preferences.version=1
+environment/project/cdt.managedbuild.config.gnu.cross.exe.debug.1231565735/PATH/delimiter=\:
+environment/project/cdt.managedbuild.config.gnu.cross.exe.debug.1231565735/PATH/operation=replace
+environment/project/cdt.managedbuild.config.gnu.cross.exe.debug.1231565735/PATH/value=/home/sebastian/ArmCrossCompiler/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/libexec/gcc/arm-linux-gnueabihf/4.8.3\:/home/sebastian/ArmCrossCompiler/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin\:/usr/local/sbin\:/usr/local/bin\:/usr/bin\:/usr/lib/jvm/default/bin\:/usr/bin/site_perl\:/usr/bin/vendor_perl\:/usr/bin/core_perl
+environment/project/cdt.managedbuild.config.gnu.cross.exe.debug.1231565735/append=true
+environment/project/cdt.managedbuild.config.gnu.cross.exe.debug.1231565735/appendContributed=true

+ 1 - 1
CoffeeCode/buildno

@@ -1 +1 @@
-324
+337

+ 44 - 24
CoffeeCode/coffee.cpp

@@ -36,12 +36,13 @@ timer menuTimer(&menuTimeHandler);
 
 uint64_t totalHeatingTime; //local copies of the corresponding database entries
 uint16_t brewCounter;
+uint16_t currentCleanCycle;
 bool initalHeating;
 bool descaling; //flag to indicate descaling and cleaning
 uint16_t descBrewcount;
 time_t descRawTimestamp;
 
-const char* PageName[] = { "SoftOff", "Kill", "Stats", "Stats2", "Descaling", "Temp", "Clean", "Demo",
+const char* PageName[] = { "SoftOff", "Kill", "Stats", "Stats2", "Descaling", "Temp", "Clean", "Restart",
 		"Exit" };
 const char* StateName[] = { "OFF", "HEATING", "INITHEAT", "IDLE", "BREW",
 		"BREWMAN", "CLEAN", "ERROR", "WAITOFF" };
@@ -67,6 +68,8 @@ void *coffeeThread(void *threadid) {
 	brewTimer.stop();
 	brewTime = 0;
 
+	currentCleanCycle = 0;
+
 	menuTimer.setDivider(4);
 	menuTimer.stop();
 	menuTimeout = 0;
@@ -130,6 +133,9 @@ void *coffeeThread(void *threadid) {
 		 * Menue FSM
 		 */
 		switch (page) {
+		case PAGE_NULL:
+			break;
+
 		case PAGE_SOFTOFF: //this page is only available when the machine is on
 			if (SigValueEmpty() && mode == MODE_MENU)
 				pause();
@@ -172,7 +178,7 @@ void *coffeeThread(void *threadid) {
 				if (state == STATE_IDLE || state == STATE_HEATING) {
 					changePage(PAGE_CLEAN);
 				} else {
-					changePage(PAGE_DEMO);
+					changePage(PAGE_RESTART);
 				}
 				break;
 
@@ -199,7 +205,7 @@ void *coffeeThread(void *threadid) {
 				break;
 
 			case SigRotCW:
-				changePage(PAGE_DEMO);
+				changePage(PAGE_RESTART);
 				break;
 
 			case SigRotCCW:
@@ -208,11 +214,16 @@ void *coffeeThread(void *threadid) {
 			}
 			break;
 
-		case PAGE_DEMO:
+		case PAGE_RESTART:
 			if (SigValueEmpty() && mode == MODE_MENU)
 				pause();
 
 			switch (getSigValue(MODE_MENU)) {
+			case SigInt0Rls:
+				event_trigger("terminate");
+				coffeeNap(4, 0);
+				exit(EXIT_SUCCESS);
+				break;
 			case SigRotCW:
 				changePage(PAGE_TEMP);
 				break;
@@ -239,10 +250,11 @@ void *coffeeThread(void *threadid) {
 				break;
 
 			case SigRotCCW:
-				changePage(PAGE_DEMO);
+				changePage(PAGE_RESTART);
 				break;
 			}
 			break;
+
 		case PAGE_STATS:
 			if (SigValueEmpty() && mode == MODE_MENU)
 				pause();
@@ -300,7 +312,7 @@ void *coffeeThread(void *threadid) {
 						|| state == STATE_INITALHEATING) {
 					changePage(PAGE_SOFTOFF);
 				} else {
-					changePage(PAGE_DEMO);
+					changePage(PAGE_RESTART);
 				}
 				break;
 
@@ -315,6 +327,8 @@ void *coffeeThread(void *threadid) {
 		 * Hardware FSM
 		 */
 		switch (state) {
+		case STATE_NULL:
+			break;
 		/*
 		 *
 		 */
@@ -323,7 +337,7 @@ void *coffeeThread(void *threadid) {
 				halMachineOff();
 				writeBackCache();
 				//TODO this might be a bit confusing to change the page here even if the menu isnt actually displayed
-				changePage(PAGE_DEMO);
+				changePage(PAGE_RESTART);
 				if (SigValueEmpty())
 					pause();
 			}
@@ -349,7 +363,7 @@ void *coffeeThread(void *threadid) {
 
 			case SigRotCCW:
 			case SigRotCW:
-			case SigInt1Psh:
+			case SigInt1Rls:
 				//Enter the menu
 				/* This should be not necessary!
 				 * if (page != PAGE_DEMO)
@@ -372,8 +386,8 @@ void *coffeeThread(void *threadid) {
 				changeState(STATE_OFF);
 				break;
 
-			case SigInt0Psh:
-			case SigInt1Psh:
+			case SigInt0Rls:
+			case SigInt1Rls:
 			case SigPowerUp:
 				if (halProxSensorCovered()) {
 					changeState(STATE_FULLTANK);
@@ -422,7 +436,7 @@ void *coffeeThread(void *threadid) {
 
 			case SigRotCCW:
 			case SigRotCW:
-			case SigInt1Psh:
+			case SigInt1Rls:
 				enterMenu();
 				break;
 			}
@@ -451,7 +465,7 @@ void *coffeeThread(void *threadid) {
 				changeState(STATE_IDLE);
 				break;
 
-			case SigInt0Psh:
+			case SigInt0Rls:
 				//start to brew a delicious coffee
 				changeState(STATE_BREW);
 				break;
@@ -471,7 +485,7 @@ void *coffeeThread(void *threadid) {
 
 			case SigRotCCW:
 			case SigRotCW:
-			case SigInt1Psh:
+			case SigInt1Rls:
 				//Enter the menu
 				enterMenu();
 				break;
@@ -498,7 +512,7 @@ void *coffeeThread(void *threadid) {
 				changeState(STATE_HEATING);
 				break;
 
-			case SigInt0Psh:
+			case SigInt0Rls:
 				changeState(STATE_BREW);
 				break;
 
@@ -517,7 +531,7 @@ void *coffeeThread(void *threadid) {
 
 			case SigRotCCW:
 			case SigRotCW:
-			case SigInt1Psh:
+			case SigInt1Rls:
 				//Enter the menu
 				enterMenu();
 				break;
@@ -582,8 +596,8 @@ void *coffeeThread(void *threadid) {
 			if (SigValueEmpty() && mode == MODE_STATE)
 				pause();
 			switch (getSigValue(MODE_STATE)) {
-			case SigInt1Psh:
-			case SigInt0Psh:
+			case SigInt1Rls:
+			case SigInt0Rls:
 				if (halIsHeating() && initalHeating) {
 					changeState(STATE_INITALHEATING);
 				} else if (halIsHeating() && !initalHeating) {
@@ -602,7 +616,6 @@ void *coffeeThread(void *threadid) {
 			if (SigValueEmpty() && mode == MODE_STATE)
 				pause();
 			switch (getSigValue(MODE_STATE)) {
-			case SigInt1RlsLong:
 			case SigInt0RlsLong:
 				if (halIsHeating()) {
 					coffeeIncreaseHeatingTime(halgetHeatingTime());
@@ -642,7 +655,6 @@ int getSigValue(coffee_mode_t mode) {
 		case SigInt0RlsLong:
 		case SigInt1Psh:
 		case SigInt1Rls:
-		case SigInt1RlsLong:
 		case SigRotCCW:
 		case SigRotCW:
 			sigValue = 0;
@@ -730,6 +742,13 @@ void enterMenu(void) {
 	menuTimer.start();
 }
 
+/**
+ * Returns the current cleaning cycle
+ */
+uint16_t getCurrentCleanCycle(void) {
+	return currentCleanCycle;
+}
+
 /**
  * Returns the current state of the FSM
  */
@@ -861,7 +880,8 @@ void writeBackCache(void) {
  */
 void coffeeClean(void) {
 	logger(V_BREW, "Cleaning...\n");
-	for (int i = 0; i < 20; i++) {
+	for (int i = 0; i < CLEANING_CYCLES; i++) {
+		currentCleanCycle++;
 		halPumpOn();
 		coffeeNap(3,0);
 		halPumpOff();
@@ -869,6 +889,7 @@ void coffeeClean(void) {
 	}
 	updateDescaling();
 	descaling = false;
+	currentCleanCycle = 0;
 	event_trigger("descaling", &descaling, sizeof(bool));
 }
 
@@ -889,7 +910,7 @@ void coffeeBrew(void) {
 	while (halGetFlow() < AMOUNT_PREINFUSION && brewTime < TIME_PREINFUSION) {
 		//TODO don't use coffeeNap here since we don't want to resume to sleep after a signal got caught...
 		coffeeNap(0, 50000000);
-		if (getSigValue(MODE_STATE) == SigInt0Psh){
+		if (getSigValue(MODE_STATE) == SigInt0Rls){
 			stopBrewing();
 			return;
 		}
@@ -902,7 +923,7 @@ void coffeeBrew(void) {
 	brewTimer.start();
 	while (brewTime < TIME_SOAK) {
 		coffeeNap(1, 100000000);
-		if (getSigValue(MODE_STATE) == SigInt0Psh) {
+		if (getSigValue(MODE_STATE) == SigInt0Rls) {
 			stopBrewing();
 			return;
 		}
@@ -917,7 +938,7 @@ void coffeeBrew(void) {
 	brewTimer.start();
 	while (brewTime < TIME_INFUSION && halGetFlow() < AMOUNT_DBLESPRESSO) {
 		coffeeNap(1, 100000000);
-		if (getSigValue(MODE_STATE) == SigInt0Psh){
+		if (getSigValue(MODE_STATE) == SigInt0Rls){
 			stopBrewing();
 			break;
 		}
@@ -925,7 +946,6 @@ void coffeeBrew(void) {
 	stopBrewing();
 	halIncreaseLogCycleCounter();
 	return;
-	//TODO: I want to see the total elapsed brewing time!!
 }
 
 /*

+ 3 - 1
CoffeeCode/coffee.h

@@ -40,7 +40,7 @@ typedef enum {
 	PAGE_DESCALING,
 	PAGE_TEMP,
 	PAGE_CLEAN,
-	PAGE_DEMO,
+	PAGE_RESTART,
 	PAGE_EXIT,
 	PAGE_NULL
 } coffee_menuPage_t;
@@ -56,6 +56,7 @@ extern const char* PageName[];
 #define DIRTY_ESPRESSO		35		//Number of espressi until the next cleaning
 #define DIRTY_TIME			90		//Number of days until the next cleaning
 #define MENUTIMEOUT			30		//timeout of the menu when no input is received from the user (in seconds)
+#define CLEANING_CYCLES		20		//Number of On-Off cycles during the cleaning phase
 void *coffeeThread(void *threadid);
 
 void coffeeHandler(int signum, siginfo_t *siginfo, void *context);
@@ -68,6 +69,7 @@ void enterMenu(void);
 coffee_status_t getState(void);
 uint16_t getLastBrewTime(void);
 int getSigValue(coffee_mode_t mode);
+uint16_t getCurrentCleanCycle(void);
 uint16_t getBrewCounter(void);
 uint64_t getTotalHeatingTime(void);
 uint16_t getDescBrewCounter (void);

+ 1 - 0
CoffeeCode/deploy

@@ -1,4 +1,5 @@
 #!/bin/bash
+export SSH_AUTH_SOCK="/home/sebastian/.config/KeePass/agent.socket"
 #echo "Deploying source and executable from $2 ..."
 echo "Deploying executable $1"
 rsync -av --delete -e ssh $2/Debug/$1 pi@192.168.0.7:/opt/coffeepi/Debug

+ 20 - 16
CoffeeCode/display2.cpp

@@ -27,7 +27,7 @@
 
 //timeouts for the transitions in ms
 #define TIMEOUT_PREBREW		1000
-#define TIMEOUT_POSTBREW	4000
+#define TIMEOUT_POSTBREW	9000
 
 display_lang_t displayLang;
 timer displayTimer(displayTimerHandler);
@@ -149,6 +149,15 @@ void displayPrintFlow(int line) {
 	lcdPrintf(lcd, "%s: %.0f ml    ", displayGetString(str_flow), flow);
 }
 
+/**
+ * Prints the current cycle of the cleaning process
+ */
+void displayPrintCleanCycle(int line) {
+	char buffer[17];
+	if (line > DISPLAY_ROWS) line = 0;
+	sprintf(buffer, "%2d of %2d", getCurrentCleanCycle(), CLEANING_CYCLES);
+	displayPrintLn(line, buffer, true);
+}
 /**
  * Prints a string to a specific line, optionally centered.
  * This function also fills out the remaining row of the display with spaces,
@@ -278,6 +287,7 @@ void displayTerminate(event_t *e) {
 	logger(V_BASIC, "display.cpp: Terminating\n");
 	displayPrintLn(0, "CoffeePi", true);
 	displayPrintLn(1, displayGetString(str_bye), true);
+	displayTimer.stop();
 }
 
 /**
@@ -426,9 +436,9 @@ void setRefreshRate(refreshRate_t rate) {
 }
 
 /**
- * specifies a timeout at which the new state will be made to the current one
- * This function is necessary for the special state transitions which hold the new state while they
- * process the current transition. These cases set a timeout specifying how long the state transition should be paused.
+ * specifies a timeout at which the new state/mode/page will be made to the current one
+ * This function is enables for special state/mode/page transitions which hold the new state while
+ * the current transition is displayed. These cases set a timeout specifying how long the state transition should be paused.
  * After the time specified in the timeout the timerhandler of the display will switch the states and makes the new one to the current one.
  */
 void setSwitchToNextTimeout(idx_t idx, uint16_t millis) {
@@ -456,6 +466,7 @@ void displayRefresh(void) {
 		} else if (coffeeState[CURRENT] == STATE_BREW && coffeeState[NEXT] != STATE_NULL) { //Post brew
 			setSwitchToNextTimeout(state_idx, TIMEOUT_POSTBREW);
 			setRefreshRate(refresh_std);
+			displayPrintLn(0, displayGetString(str_postBrew), true);
 			displayPrintPostBrew(1);
 			return;
 		} else { //no special state transition -> make new state to the current one
@@ -489,8 +500,8 @@ void displayRefresh(void) {
 			break;
 
 		case STATE_CLEANING:
-			displayPrintLogo();
-			displayPrintLn(1, displayGetString(str_cleaning), true);
+			displayPrintLn(0, displayGetString(str_cleaning), true);
+			displayPrintCleanCycle(1);
 			break;
 
 		case STATE_ERROR:
@@ -511,14 +522,7 @@ void displayRefresh(void) {
 		}
 	} else if (coffeeMode[CURRENT] == MODE_MENU) {
 		//handle page transitions
-		if(coffeePage[NEXT] == PAGE_EXIT) {
-			setSwitchToNextTimeout(page_idx, 2000);
-			displayPrintLn(0, "test vor exit", true);
-			displayPrintLn(1, "Test", true);
-			return;
-		} else {
-			switchToNextPage(coffeePage);
-		}
+		switchToNextPage(coffeePage);
 
 		switch (coffeePage[CURRENT]) {
 		case PAGE_SOFTOFF:
@@ -549,9 +553,9 @@ void displayRefresh(void) {
 			displayPrintLn(0, displayGetString(str_menu), true);
 			displayPrintLn(1, displayGetString(str_menu_clean), true);
 			break;
-		case PAGE_DEMO:
+		case PAGE_RESTART:
 			displayPrintLn(0, displayGetString(str_menu), true);
-			displayPrintLn(1, displayGetString(str_menu_demo), true);
+			displayPrintLn(1, displayGetString(str_menu_restart), true);
 			break;
 		case PAGE_EXIT:
 			displayPrintLn(0, displayGetString(str_menu), true);

+ 11 - 4
CoffeeCode/display2.h

@@ -59,8 +59,9 @@ typedef enum {
 	str_menu_nextdesc,
 	str_menu_temp,
 	str_menu_clean,
-	str_menu_demo,
+	str_menu_restart,
 	str_menu_exit,
+	str_postBrew,
 	str_last
 } display_strings_t;
 
@@ -172,10 +173,10 @@ static const display_string_t display_strings[str_last] =
 						"Clean"
 				}
 		},
-		{ // str_menu_demo
+		{ // str_menu_restart
 				{
-						"Demo",
-						"Demo"
+						"Neustarten",
+						"restart software"
 				}
 		},
 		{ // str_menu_exit
@@ -183,6 +184,12 @@ static const display_string_t display_strings[str_last] =
 						"Menü verlassen",
 						"Leave menu"
 				}
+		},
+		{ // str_postBrew
+				{
+						"Quality:",
+						"Qualität:"
+				}
 		}
 };
 

+ 12 - 1
CoffeeCode/hal.cpp

@@ -133,6 +133,7 @@ void halInit(void) {
 		return;
 	}
 
+	//TODO when machine is turned off above the logcycle 1 is written back from cache...
 	if (!(logcycle = sqlGetConf(CFGSweepCounter))) {
 		logger_error("hal.cpp: Couldn't read the  logcycle counter from the database\n");
 		//pthread_exit(EXIT_SUCCESS);
@@ -379,6 +380,8 @@ void halIntPressure(void) {
  */
 double halgetHeatingTime(void){
 	//TODO check return value on negative times
+	//TODO move the tracking of the heating time into hal.cpp and fix issue of wrong tracking -> inital pressure close is not
+	//recognized and so heatingCycle has no time
 	if (halIsHeating()) {
 		logger(V_HAL, "Hot Heating Time: %f\n", difftime(time(NULL), heatingCycle[0]));
 		return difftime(time(0), heatingCycle[0]);
@@ -472,6 +475,13 @@ int halGetInt1(void) {
  * @param val Integer value assigned to signal
  */
 void halSendSignal(HalSig val) {
+	//reboot pi when lower button is pressed long
+	if (val == SigInt1RlsLong) {
+		event_trigger("terminate");
+		sleep(3);
+		system("reboot");
+	}
+
 	//catch if machine is idle and drop button event
 	switch (val) {
 	case SigInt0Psh:
@@ -484,7 +494,6 @@ void halSendSignal(HalSig val) {
 	case SigInt0Rls:
 	case SigInt0RlsLong:
 	case SigInt1Rls:
-	case SigInt1RlsLong:
 	case SigRotCCW:
 	case SigRotCW:
 		if (idle) {
@@ -497,6 +506,8 @@ void halSendSignal(HalSig val) {
 		break;
 	}
 
+
+
 	sigval value = { 0 };
 	value.sival_int = (int) val;
 

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 870 - 26
CoffeeCode/sqlite/sqlite3.c


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 505 - 107
CoffeeCode/sqlite/sqlite3.h


+ 110 - 10
CoffeeCode/sqlite/sqlite3ext.h

@@ -15,12 +15,10 @@
 ** as extensions by SQLite should #include this file instead of 
 ** sqlite3.h.
 */
-#ifndef _SQLITE3EXT_H_
-#define _SQLITE3EXT_H_
+#ifndef SQLITE3EXT_H
+#define SQLITE3EXT_H
 #include "sqlite3.h"
 
-typedef struct sqlite3_api_routines sqlite3_api_routines;
-
 /*
 ** The following structure holds pointers to all of the SQLite API
 ** routines.
@@ -136,7 +134,7 @@ struct sqlite3_api_routines {
   int  (*set_authorizer)(sqlite3*,int(*)(void*,int,const char*,const char*,
                          const char*,const char*),void*);
   void  (*set_auxdata)(sqlite3_context*,int,void*,void (*)(void*));
-  char * (*snprintf)(int,char*,const char*,...);
+  char * (*xsnprintf)(int,char*,const char*,...);
   int  (*step)(sqlite3_stmt*);
   int  (*table_column_metadata)(sqlite3*,const char*,const char*,const char*,
                                 char const**,char const**,int*,int*,int*);
@@ -248,7 +246,7 @@ struct sqlite3_api_routines {
   int (*uri_boolean)(const char*,const char*,int);
   sqlite3_int64 (*uri_int64)(const char*,const char*,sqlite3_int64);
   const char *(*uri_parameter)(const char*,const char*);
-  char *(*vsnprintf)(int,char*,const char*,va_list);
+  char *(*xvsnprintf)(int,char*,const char*,va_list);
   int (*wal_checkpoint_v2)(sqlite3*,const char*,int,int*,int*);
   /* Version 3.8.7 and later */
   int (*auto_extension)(void(*)(void));
@@ -275,8 +273,67 @@ struct sqlite3_api_routines {
   /* Version 3.9.0 and later */
   unsigned int (*value_subtype)(sqlite3_value*);
   void (*result_subtype)(sqlite3_context*,unsigned int);
+  /* Version 3.10.0 and later */
+  int (*status64)(int,sqlite3_int64*,sqlite3_int64*,int);
+  int (*strlike)(const char*,const char*,unsigned int);
+  int (*db_cacheflush)(sqlite3*);
+  /* Version 3.12.0 and later */
+  int (*system_errno)(sqlite3*);
+  /* Version 3.14.0 and later */
+  int (*trace_v2)(sqlite3*,unsigned,int(*)(unsigned,void*,void*,void*),void*);
+  char *(*expanded_sql)(sqlite3_stmt*);
+  /* Version 3.18.0 and later */
+  void (*set_last_insert_rowid)(sqlite3*,sqlite3_int64);
+  /* Version 3.20.0 and later */
+  int (*prepare_v3)(sqlite3*,const char*,int,unsigned int,
+                    sqlite3_stmt**,const char**);
+  int (*prepare16_v3)(sqlite3*,const void*,int,unsigned int,
+                      sqlite3_stmt**,const void**);
+  int (*bind_pointer)(sqlite3_stmt*,int,void*,const char*,void(*)(void*));
+  void (*result_pointer)(sqlite3_context*,void*,const char*,void(*)(void*));
+  void *(*value_pointer)(sqlite3_value*,const char*);
+  int (*vtab_nochange)(sqlite3_context*);
+  int (*value_nochange)(sqlite3_value*);
+  const char *(*vtab_collation)(sqlite3_index_info*,int);
+  /* Version 3.24.0 and later */
+  int (*keyword_count)(void);
+  int (*keyword_name)(int,const char**,int*);
+  int (*keyword_check)(const char*,int);
+  sqlite3_str *(*str_new)(sqlite3*);
+  char *(*str_finish)(sqlite3_str*);
+  void (*str_appendf)(sqlite3_str*, const char *zFormat, ...);
+  void (*str_vappendf)(sqlite3_str*, const char *zFormat, va_list);
+  void (*str_append)(sqlite3_str*, const char *zIn, int N);
+  void (*str_appendall)(sqlite3_str*, const char *zIn);
+  void (*str_appendchar)(sqlite3_str*, int N, char C);
+  void (*str_reset)(sqlite3_str*);
+  int (*str_errcode)(sqlite3_str*);
+  int (*str_length)(sqlite3_str*);
+  char *(*str_value)(sqlite3_str*);
+  /* Version 3.25.0 and later */
+  int (*create_window_function)(sqlite3*,const char*,int,int,void*,
+                            void (*xStep)(sqlite3_context*,int,sqlite3_value**),
+                            void (*xFinal)(sqlite3_context*),
+                            void (*xValue)(sqlite3_context*),
+                            void (*xInv)(sqlite3_context*,int,sqlite3_value**),
+                            void(*xDestroy)(void*));
+  /* Version 3.26.0 and later */
+  const char *(*normalized_sql)(sqlite3_stmt*);
+  /* Version 3.28.0 and later */
+  int (*stmt_isexplain)(sqlite3_stmt*);
+  int (*value_frombind)(sqlite3_value*);
 };
 
+/*
+** This is the function signature used for all extension entry points.  It
+** is also defined in the file "loadext.c".
+*/
+typedef int (*sqlite3_loadext_entry)(
+  sqlite3 *db,                       /* Handle to the database. */
+  char **pzErrMsg,                   /* Used to set error string on failure. */
+  const sqlite3_api_routines *pThunk /* Extension API function pointers. */
+);
+
 /*
 ** The following macros redefine the API routines so that they are
 ** redirected through the global sqlite3_api structure.
@@ -391,7 +448,7 @@ struct sqlite3_api_routines {
 #define sqlite3_rollback_hook          sqlite3_api->rollback_hook
 #define sqlite3_set_authorizer         sqlite3_api->set_authorizer
 #define sqlite3_set_auxdata            sqlite3_api->set_auxdata
-#define sqlite3_snprintf               sqlite3_api->snprintf
+#define sqlite3_snprintf               sqlite3_api->xsnprintf
 #define sqlite3_step                   sqlite3_api->step
 #define sqlite3_table_column_metadata  sqlite3_api->table_column_metadata
 #define sqlite3_thread_cleanup         sqlite3_api->thread_cleanup
@@ -415,7 +472,7 @@ struct sqlite3_api_routines {
 #define sqlite3_value_text16le         sqlite3_api->value_text16le
 #define sqlite3_value_type             sqlite3_api->value_type
 #define sqlite3_vmprintf               sqlite3_api->vmprintf
-#define sqlite3_vsnprintf              sqlite3_api->vsnprintf
+#define sqlite3_vsnprintf              sqlite3_api->xvsnprintf
 #define sqlite3_overload_function      sqlite3_api->overload_function
 #define sqlite3_prepare_v2             sqlite3_api->prepare_v2
 #define sqlite3_prepare16_v2           sqlite3_api->prepare16_v2
@@ -491,7 +548,7 @@ struct sqlite3_api_routines {
 #define sqlite3_uri_boolean            sqlite3_api->uri_boolean
 #define sqlite3_uri_int64              sqlite3_api->uri_int64
 #define sqlite3_uri_parameter          sqlite3_api->uri_parameter
-#define sqlite3_uri_vsnprintf          sqlite3_api->vsnprintf
+#define sqlite3_uri_vsnprintf          sqlite3_api->xvsnprintf
 #define sqlite3_wal_checkpoint_v2      sqlite3_api->wal_checkpoint_v2
 /* Version 3.8.7 and later */
 #define sqlite3_auto_extension         sqlite3_api->auto_extension
@@ -514,6 +571,49 @@ struct sqlite3_api_routines {
 /* Version 3.9.0 and later */
 #define sqlite3_value_subtype          sqlite3_api->value_subtype
 #define sqlite3_result_subtype         sqlite3_api->result_subtype
+/* Version 3.10.0 and later */
+#define sqlite3_status64               sqlite3_api->status64
+#define sqlite3_strlike                sqlite3_api->strlike
+#define sqlite3_db_cacheflush          sqlite3_api->db_cacheflush
+/* Version 3.12.0 and later */
+#define sqlite3_system_errno           sqlite3_api->system_errno
+/* Version 3.14.0 and later */
+#define sqlite3_trace_v2               sqlite3_api->trace_v2
+#define sqlite3_expanded_sql           sqlite3_api->expanded_sql
+/* Version 3.18.0 and later */
+#define sqlite3_set_last_insert_rowid  sqlite3_api->set_last_insert_rowid
+/* Version 3.20.0 and later */
+#define sqlite3_prepare_v3             sqlite3_api->prepare_v3
+#define sqlite3_prepare16_v3           sqlite3_api->prepare16_v3
+#define sqlite3_bind_pointer           sqlite3_api->bind_pointer
+#define sqlite3_result_pointer         sqlite3_api->result_pointer
+#define sqlite3_value_pointer          sqlite3_api->value_pointer
+/* Version 3.22.0 and later */
+#define sqlite3_vtab_nochange          sqlite3_api->vtab_nochange
+#define sqlite3_value_nochange         sqlite3_api->value_nochange
+#define sqlite3_vtab_collation         sqlite3_api->vtab_collation
+/* Version 3.24.0 and later */
+#define sqlite3_keyword_count          sqlite3_api->keyword_count
+#define sqlite3_keyword_name           sqlite3_api->keyword_name
+#define sqlite3_keyword_check          sqlite3_api->keyword_check
+#define sqlite3_str_new                sqlite3_api->str_new
+#define sqlite3_str_finish             sqlite3_api->str_finish
+#define sqlite3_str_appendf            sqlite3_api->str_appendf
+#define sqlite3_str_vappendf           sqlite3_api->str_vappendf
+#define sqlite3_str_append             sqlite3_api->str_append
+#define sqlite3_str_appendall          sqlite3_api->str_appendall
+#define sqlite3_str_appendchar         sqlite3_api->str_appendchar
+#define sqlite3_str_reset              sqlite3_api->str_reset
+#define sqlite3_str_errcode            sqlite3_api->str_errcode
+#define sqlite3_str_length             sqlite3_api->str_length
+#define sqlite3_str_value              sqlite3_api->str_value
+/* Version 3.25.0 and later */
+#define sqlite3_create_window_function sqlite3_api->create_window_function
+/* Version 3.26.0 and later */
+#define sqlite3_normalized_sql         sqlite3_api->normalized_sql
+/* Version 3.28.0 and later */
+#define sqlite3_stmt_isexplain         sqlite3_api->isexplain
+#define sqlite3_value_frombind         sqlite3_api->frombind
 #endif /* !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION) */
 
 #if !defined(SQLITE_CORE) && !defined(SQLITE_OMIT_LOAD_EXTENSION)
@@ -531,4 +631,4 @@ struct sqlite3_api_routines {
 # define SQLITE_EXTENSION_INIT3     /*no-op*/
 #endif
 
-#endif /* _SQLITE3EXT_H_ */
+#endif /* SQLITE3EXT_H */

+ 10 - 0
Scripts/config_ports.sh

@@ -0,0 +1,10 @@
+#!/bin/bash
+
+gpio write 25 1
+gpio write 29 1
+gpio write 28 1
+
+gpio mode 25 out
+gpio mode 29 out
+gpio mode 28 out
+gpio mode 4 out

+ 1 - 0
Scripts/display_an.sh

@@ -0,0 +1 @@
+gpio write 4 1

+ 1 - 0
Scripts/display_aus.sh

@@ -0,0 +1 @@
+gpio write 4 0

+ 14 - 0
Scripts/kaffee.sh

@@ -0,0 +1,14 @@
+#!/bin/bash
+
+PIN=25
+
+echo "Preinfusion.."
+gpio write $PIN 0
+sleep 3.1
+gpio write $PIN 1
+sleep 10
+echo "Bezug.."
+gpio write $PIN 0
+sleep 23
+gpio write $PIN 1
+echo "Fertig!"

+ 7 - 0
Scripts/leerbezug.sh

@@ -0,0 +1,7 @@
+#!/bin/bash
+
+PIN=25
+
+gpio write $PIN 0
+sleep 6
+gpio write $PIN 1

+ 5 - 0
Scripts/maschine_an.sh

@@ -0,0 +1,5 @@
+#!/bin/bash
+
+gpio write 25 1
+gpio write 28 0
+gpio write 29 0

+ 5 - 0
Scripts/maschine_aus.sh

@@ -0,0 +1,5 @@
+#!/bin/bash
+
+gpio write 25 1
+gpio write 28 1
+gpio write 29 1

+ 15 - 0
Scripts/reinigungsprogramm.sh

@@ -0,0 +1,15 @@
+#!/bin/bash
+
+PIN=25
+i="0"
+
+echo "Reinigung..."
+while [ $i -lt 20 ]
+do 
+gpio write $PIN 0
+sleep 3
+gpio write $PIN 1
+sleep 15
+i=$[$i+1]
+done
+echo "Fertig!"

+ 25 - 0
Scripts/stripe.sh

@@ -0,0 +1,25 @@
+#!/bin/bash
+
+COL1="255 0 0 0"
+COL2="0 0 0 0"
+COL3="0 255 0 0"
+COL4="0 0 255 0"
+TH=0
+TL=40
+TS=2.3
+
+while [ 1 ]
+do 
+i2cset -y 1 0x69 0x00 0x0b $COL1 $TH $TL i
+sleep $TS
+i2cset -y 1 0x69 0x00 0x0b $COL2 $TH $TL i
+sleep $TS
+i2cset -y 1 0x69 0x00 0x0b $COL3 $TH $TL i
+sleep $TS
+i2cset -y 1 0x69 0x00 0x0b $COL2 $TH $TL i
+sleep $TS
+i2cset -y 1 0x69 0x00 0x0b $COL4 $TH $TL i
+sleep $TS
+i2cset -y 1 0x69 0x00 0x0b $COL2 $TH $TL i
+sleep $TS
+done

+ 3 - 0
Scripts/sysConfig.sh

@@ -0,0 +1,3 @@
+service rpcbind restart
+service nfs-common restart
+service nfs-kernel-server restart

이 변경점에서 너무 많은 파일들이 변경되어 몇몇 파일들은 표시되지 않았습니다.