First commit

This commit is contained in:
YikeStone 2017-04-29 23:02:01 +05:30
commit 7fd127b075
91 changed files with 122327 additions and 0 deletions

View File

@ -0,0 +1,24 @@
#-------------------------------------------------
#
# Project created by QtCreator 2016-06-20T21:38:18
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport
TARGET = BlueC
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
qcustomplot.cpp \
HEADERS += mainwindow.h \
qcustomplot.h \
FORMS += mainwindow.ui
QT += serialport

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2017-01-20T08:29:19. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{071d3636-4530-4e79-9e5c-eb70a03bf55f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BlueC-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BlueC-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BlueC</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BlueC/BlueC.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BlueC.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2016-09-01T19:45:56. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{5d2c2528-3a67-4b34-9757-af8305407b5f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BlueC-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BlueC-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BlueC</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BlueC/BlueC.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BlueC.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2016-07-31T20:13:50. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{e1fc7551-0b1d-48c2-8cf8-e6d502bbac8d}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BlueC-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BlueC-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BlueC</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BlueC/BlueC.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BlueC.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,18 @@
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
//MainWindow w;
MainWindow t;
t.show();
int c=a.exec();
//qDebug()<<"close";
t.serial->disconnect();
t.serial->close();
//QThread::currentThread()->usleep(1);
//QThread::currentThread()->msleep(10);
return c;
}

View File

@ -0,0 +1,400 @@
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QKeyEvent"
#include "QDebug"
#include <QCoreApplication>
#include <QtCore/QCoreApplication>
//#include "bs.h"
int KP[44];double kp=0,ki=0,kd=0;int kp1=0,ki1=0,kd1=0;int pwm_left,pwm_right;
int a=-1;
double xa=0,ya=0,za=0;
double xg=0,yg=0,zg=0;
double xxa,yya,zza;double kp2 = 10;
double ki2 = 0;
double kd2 = 0;
double ra=0,rollg=0;const float alpha = 0.5;
QElapsedTimer f;
QByteArray ba("Hello\n");
int outMax = 255;
int outMin = -255;
float lastInput = 0;
double ITerm =0;
double Setpoint = 11;
double Compute(double input)
{
double error = Setpoint - input ;
//qDebug()<<error;
ITerm+= (ki * error);
if(ITerm > outMax) ITerm= outMax;
else if(ITerm < outMin) ITerm= outMin;
double dInput = (input - lastInput);
double output = kp * error + ITerm + kd * dInput;
if(output > outMax) output = outMax;
else if(output < outMin) output = outMin;
lastInput = input;
return output;
}
char blankString[] = QT_TRANSLATE_NOOP("SettingsDialog", "N/A");
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
f.start();
ui->setupUi(this);
serial = new QSerialPort(this);
serial2 = new QSerialPort(this);
QSerialPortInfo info1=QSerialPortInfo::availablePorts().at(1);
QSerialPortInfo info=QSerialPortInfo::availablePorts().at(0);
// Check info of the port
qDebug() << "Name : " << info.portName();
/*qDebug() << "Manufacturer: " << info.manufacturer(); //if showing manufacturer, means Qstring &name is good
qDebug() << "Busy: " << info.isBusy() << endl;
*/// Initialize Serial
qDebug()<<info1.portName();
serial2->setPortName("COM8");
serial->setPortName("COM17");
//serial->open(QIODevice::ReadWrite);
serial->setBaudRate(QSerialPort::Baud115200);
serial->setDataBits(QSerialPort::Data8);
serial->setParity(QSerialPort::NoParity);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
if(serial->open(QIODevice::ReadWrite));
serial2->setBaudRate(QSerialPort::Baud115200);
serial2->setDataBits(QSerialPort::Data8);
serial2->setParity(QSerialPort::NoParity);
serial2->setStopBits(QSerialPort::OneStop);
serial2->setFlowControl(QSerialPort::NoFlowControl);
if(serial2->open(QIODevice::ReadWrite));
/*QString description;
QString manufacturer;
QString serialNumber;int i=0;
/*foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) {
cout<<i++;
description = info.description();
manufacturer = info.manufacturer();
serialNumber = info.serialNumber();
qDebug() << info.portName()<<" "
<< (!description.isEmpty() ? description : blankString)<<" "
<< (!manufacturer.isEmpty() ? manufacturer : blankString)<<" "
<< (!serialNumber.isEmpty() ? serialNumber : blankString)<<" "
<< info.systemLocation()<<" "
<< (info.vendorIdentifier() ? QString::number(info.vendorIdentifier(), 16) : blankString)<<" "
<< (info.productIdentifier() ? QString::number(info.productIdentifier(), 16) : blankString)<<info.isBusy()<<" \n ";}*/
ui->textBrowser->setText("Key(s) Pressed:");
connect(ui->horizontalSlider,SIGNAL(valueChanged(int)),this,SLOT(value0(int)));
connect(ui->horizontalSlider_2,SIGNAL(valueChanged(int)),this,SLOT(value1(int)));
connect(ui->horizontalSlider_3,SIGNAL(valueChanged(int)),this,SLOT(value2(int)));
connect(ui->horizontalSlider_5,SIGNAL(valueChanged(int)),this,SLOT(value3(int)));
connect(ui->horizontalSlider_4,SIGNAL(valueChanged(int)),this,SLOT(value4(int)));
connect(ui->horizontalSlider_6,SIGNAL(valueChanged(int)),this,SLOT(value5(int)));
connect(ui->horizontalSlider_7,SIGNAL(valueChanged(int)),this,SLOT(value6(int)));
connect(ui->horizontalSlider_8,SIGNAL(valueChanged(int)),this,SLOT(value7(int)));
connect(ui->lineEdit,SIGNAL(returnPressed()),this,SLOT(value8()));
connect(ui->lineEdit_2,SIGNAL(returnPressed()),this,SLOT(value9()));
connect(ui->lineEdit_3,SIGNAL(returnPressed()),this,SLOT(value10()));
connect(ui->lineEdit_4,SIGNAL(returnPressed()),this,SLOT(value11()));
connect(ui->lineEdit_5,SIGNAL(returnPressed()),this,SLOT(value12()));
connect(ui->lineEdit_6,SIGNAL(returnPressed()),this,SLOT(value13()));
connect(ui->lineEdit_7,SIGNAL(returnPressed()),this,SLOT(value14()));
connect(ui->lineEdit_8,SIGNAL(returnPressed()),this,SLOT(value15()));
connect(ui->radioButton,SIGNAL(pressed()),this,SLOT(value16()));
connect(ui->radioButton_2,SIGNAL(pressed()),this,SLOT(value17()));
connect(serial, SIGNAL(readyRead()), this, SLOT(readData()));
connect(serial2, SIGNAL(readyRead()), this, SLOT(readData1()));
for(int i=0;i<44;i++)
KP[i]=0;
/*QVector<double> x(101), y(101); // initialize with entries 0..100
for (int i=0; i<101; ++i)
{
x[i] = i/50.0 - 1; // x goes from -1 to 1
y[i] = x[i]*x[i]; // let's plot a quadratic function
}*/
// create graph and assign data to it:
ui->widget->addGraph();
ui->widget->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
ui->widget->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget->axisRect()->setRangeZoomFactor(1.5);
//ui->widget->graph(0)->setData(x, y);
ui->widget->xAxis->setLabel("X Axis");
ui->widget->yAxis->setLabel("Y Axis");
ui->widget->xAxis->setRange(0,1000);
ui->widget->yAxis->setRange(-90,90);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::BlueP()
{
QString b("");
for(int i=0;i<44;i++)
if(KP[i]==1)b.append(i+47);
b.append("\n");
ba.clear();
ui->textBrowser->setText("Key(s) Pressed:"+b);
if(a==-1)
{
if(b.length()>1){
ba.append(b.toUtf8());
}
else
{
ba.append("stop\n");
}
}
else{
QString s("");
/*s.append("l");
s.append(QString::number(pwm_left,'g',9));
s.append("\nr");
s.append(QString::number(pwm_right,'g',9));
//s.append("\n");//only for pwm
s.append("\n");*/
s.append("p");
s.append(QString::number(kp,'g',9));
s.append(",i");
s.append(QString::number(ki,'g',9));
s.append(",d");
s.append(QString::number(kd,'g',9));
s.append(",");
ba=s.toUtf8();
}
if (serial->isOpen() && serial->isWritable())
{
serial->write(ba);
if (serial->bytesToWrite() > 0)
{
serial->flush();
serial->bytesWritten(ba.length());
}
}
else
{
cout<< "An error occured" << endl;
}
//QThread::currentThread()->msleep(1000);
}
void MainWindow::keyPressEvent(QKeyEvent * event)
{
int p=event->key();
if(p>46&&p<91){
KP[p-47]=1;
BlueP();
}
}
void MainWindow::keyReleaseEvent(QKeyEvent * event)
{
int r=event->key();
if(r>46&&r<91){
KP[r-47]=0;
BlueP();}
}
void MainWindow::value0(int k)
{
pwm_left=k-255;
ui->lineEdit->setText(QString::number(pwm_left));
BlueP();
}
void MainWindow::value1(int k)
{
pwm_right=k-255;
ui->lineEdit_2->setText(QString::number(pwm_right));
BlueP();
}
void MainWindow::value2(int k)
{
kp=k/10000000.0+kp1;
ui->lineEdit_3->setText(QString::number(kp,'g',9));
BlueP();
}
void MainWindow::value3(int k)
{
ki=k/10000000.0+ki1;
ui->lineEdit_5->setText(QString::number(ki,'g',9));
BlueP();
}
void MainWindow::value4(int k)
{
kd=k/10000000.0+kd1;
ui->lineEdit_4->setText(QString::number(kd,'g',9));
BlueP();
}
void MainWindow::value5(int k)
{
kp=kp-kp1+k;
kp1=k;
ui->lineEdit_8->setText(QString::number(kp1));
ui->lineEdit_3->setText(QString::number(kp,'g',9));
BlueP();
}
void MainWindow::value6(int k)
{
ki=ki-ki1+k;
ki1=k;
ui->lineEdit_7->setText(QString::number(ki1));
ui->lineEdit_5->setText(QString::number(ki,'g',9));
BlueP();
}
void MainWindow::value7(int k)
{
kd=kd-kd1+k;
kd1=k;
ui->lineEdit_6->setText(QString::number(kd1));
ui->lineEdit_4->setText(QString::number(kd,'g',9));
BlueP();
}
void MainWindow::value8()
{
QString s=ui->lineEdit->text();
pwm_left=s.toInt();
ui->horizontalSlider->setSliderPosition(pwm_left+255);
}
void MainWindow::value9()
{
QString s=ui->lineEdit_2->text();
pwm_right=s.toInt();
ui->horizontalSlider_2->setSliderPosition(pwm_right+255);
}
void MainWindow::value10()
{
QString s=ui->lineEdit_3->text();
kp=s.toDouble();
kp1=(int)kp;
ui->horizontalSlider_3->setSliderPosition((kp-kp1)*10000000);
ui->horizontalSlider_6->setSliderPosition(kp1);
}
void MainWindow::value11()
{
QString s=ui->lineEdit_4->text();
ki=s.toDouble();
ki1=(int)ki;
ui->horizontalSlider_4->setSliderPosition((ki-ki1)*10000000);
ui->horizontalSlider_8->setSliderPosition(ki1);
}
void MainWindow::value12()
{
QString s=ui->lineEdit_5->text();
kd=s.toDouble();
kd1=(int)kd;
ui->horizontalSlider_5->setSliderPosition((kd-kd1)*10000000);
ui->horizontalSlider_7->setSliderPosition(kd1);
}
void MainWindow::value13()
{
QString s=ui->lineEdit_6->text();
int k=s.toInt();
kd=kd-kd1+k;
kd1=k;
ui->horizontalSlider_8->setSliderPosition(kd1);
}
void MainWindow::value14()
{
QString s=ui->lineEdit_7->text();
int k=s.toInt();
ki=ki-ki1+k;
ki1=k;
ui->horizontalSlider_7->setSliderPosition(ki1);
}
void MainWindow::value15()
{
QString s=ui->lineEdit_8->text();
int k=s.toInt();
kp=kp-kp1+k;
kp1=k;
ui->horizontalSlider_6->setSliderPosition(kp1);
}
void MainWindow::value16()
{
a=1;BlueP();
}
void MainWindow::value17()
{
a=-1;BlueP();
}
void MainWindow::newData(double x,double y)
{
ui->widget->graph(0)->addData(y,x);
ui->widget->replot();
}
void MainWindow::readData()
{
//QThread::currentThread()->sleep(10);
QByteArray data = serial->readLine();
int i = data.indexOf(',',3);
int j = data.indexOf(',',i+1);
int k = data.indexOf(',',j+1);
if(data[1]=='1')
{
xa=data.mid(i+1,j-i-1).toDouble();
ya=data.mid(j+1,k-j-1).toDouble();
za=data.mid(k+1,data.length()-k-2).toDouble();
}
else
{
xg=data.mid(i+1,j-i-1).toDouble();
yg=data.mid(j+1,k-j-1).toDouble();
zg=data.mid(k+1,data.length()-k-1).toDouble();
}
yg*=0.07;
rollg+=yg;
xxa = xa * alpha + (xxa * (1.0 - alpha));
zza = za * alpha + (zza * (1.0 - alpha));
xa=xxa;ya=yya;
ra= 0.98* (rollg) + ((qAtan2(-zza, xxa)*180.0))/(3.141592653);
//qDebug()<<f.elapsed();
int zzz = Compute(ra);
//qDebug()<<ra;
//qDebug()<<zzz;
//zzz=((zzz>0&&zzz<10)?10:zzz);
//zzz=((zzz<0&&zzz>-10)?-10:zzz);
QByteArray ba="";ba.append(",");
ba.append(QString::number(zzz));
if (serial2->isOpen() && serial2->isWritable())
{
serial2->write(data);
if (serial2->bytesToWrite() > 0)
{
serial2->flush();
serial2->bytesWritten(data.length());
}
}
else
{
//cout<< "2 An error occured" << endl;
}
// qDebug()<<ba;
//qDebug()<<serial2->readAll()<<"hj";
qDebug()<<ba;
newData(ra-Setpoint,f.elapsed()/1000.0);
}
void MainWindow::readData1()
{
qDebug()<<"\narduino- "<<serial2->readAll();
}
/*void MainWindow::mouseWheel()
{
//ui->widget->replot();
}
*/

View File

@ -0,0 +1,57 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <iostream>
#include <QThread>
#include <QtMath>
#include <QtSerialPort/QSerialPort>
#include <QtSerialPort/QSerialPortInfo>
//#include "bs.h"
using namespace std;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
QSerialPort *serial;
QSerialPort *serial2;
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
void keyPressEvent(QKeyEvent *);
void keyReleaseEvent(QKeyEvent *);
void BlueP();
protected:
void newData(double x, double y);
private slots:
void value0(int);
void value1(int);
void value2(int);
void value3(int);
void value4(int);
void value5(int);
void value6(int);
void value7(int);
void value8();
void value9();
void value10();
void value11();
void value12();
void value13();
void value14();
void value15();
void value16();
void value17();
void readData();
void readData1();
//void mouseWheel();
};
#endif // MAINWINDOW_H

View File

@ -0,0 +1,633 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>691</width>
<height>513</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralWidget">
<widget class="QFrame" name="frame">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>671</width>
<height>441</height>
</rect>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<widget class="QWidget" name="horizontalLayoutWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>671</width>
<height>121</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QVBoxLayout" name="verticalLayout_5">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QLabel" name="label">
<property name="minimumSize">
<size>
<width>0</width>
<height>75</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>PWM_Left</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QSlider" name="horizontalSlider">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>22</height>
</size>
</property>
<property name="maximum">
<number>510</number>
</property>
<property name="value">
<number>255</number>
</property>
<property name="sliderPosition">
<number>255</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>35</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>4</number>
</property>
<property name="clearButtonEnabled">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_6">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QLabel" name="label_2">
<property name="minimumSize">
<size>
<width>0</width>
<height>75</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>PWM_Right</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QSlider" name="horizontalSlider_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>22</height>
</size>
</property>
<property name="maximum">
<number>510</number>
</property>
<property name="value">
<number>255</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>35</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>4</number>
</property>
<property name="clearButtonEnabled">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QWidget" name="verticalLayoutWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>120</y>
<width>671</width>
<height>251</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<widget class="QLabel" name="label_4">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>KP</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="horizontalSlider_6">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_8">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>3</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<widget class="QSlider" name="horizontalSlider_3">
<property name="maximum">
<number>10000000</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="tickPosition">
<enum>QSlider::NoTicks</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_3">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>20</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_10">
<item>
<widget class="QLabel" name="label_5">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>KI</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="horizontalSlider_7">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_7">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>3</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<widget class="QSlider" name="horizontalSlider_5">
<property name="maximum">
<number>10000000</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_5">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>20</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_11">
<item>
<widget class="QLabel" name="label_3">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>KD</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="horizontalSlider_8">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_6">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>3</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<widget class="QSlider" name="horizontalSlider_4">
<property name="maximum">
<number>10000000</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_4">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>20</number>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QTextBrowser" name="textBrowser">
<property name="geometry">
<rect>
<x>0</x>
<y>410</y>
<width>671</width>
<height>31</height>
</rect>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
</widget>
<widget class="QWidget" name="horizontalLayoutWidget_2">
<property name="geometry">
<rect>
<x>0</x>
<y>360</y>
<width>671</width>
<height>41</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_12">
<item>
<widget class="QRadioButton" name="radioButton_2">
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text">
<string>Key Mode</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="radioButton">
<property name="text">
<string>PWM/ PID mode</string>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
<widget class="QCustomPlot" name="widget" native="true">
<property name="geometry">
<rect>
<x>679</x>
<y>9</y>
<width>1091</width>
<height>581</height>
</rect>
</property>
</widget>
<zorder>frame</zorder>
<zorder>widget</zorder>
<zorder>textBrowser</zorder>
<zorder>radioButton_2</zorder>
<zorder>radioButton</zorder>
<zorder>horizontalLayoutWidget_2</zorder>
</widget>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>691</width>
<height>26</height>
</rect>
</property>
</widget>
<widget class="QToolBar" name="mainToolBar">
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
</attribute>
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
</widget>
<widget class="QStatusBar" name="statusBar"/>
</widget>
<layoutdefault spacing="6" margin="11"/>
<customwidgets>
<customwidget>
<class>QCustomPlot</class>
<extends>QWidget</extends>
<header>../../qcustomplot.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,346 @@
#############################################################################
# Makefile for building: BlueC
# Generated by qmake (3.0) (Qt 5.4.1)
# Project: ..\BlueC\BlueC.pro
# Template: app
# Command: C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe -spec win32-g++ CONFIG+=debug -o Makefile ..\BlueC\BlueC.pro
#############################################################################
MAKEFILE = Makefile
first: debug
install: debug-install
uninstall: debug-uninstall
QMAKE = C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe
DEL_FILE = del
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
COPY = copy /y
COPY_FILE = $(COPY)
COPY_DIR = xcopy /s /q /y /i
INSTALL_FILE = $(COPY_FILE)
INSTALL_PROGRAM = $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = del
SYMLINK = copy /y
DEL_DIR = rmdir
MOVE = move
SUBTARGETS = \
debug \
release
debug: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-all: FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
release: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-all: FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall
Makefile: ../BlueC/BlueC.pro C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qdevice.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/device_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/common/shell-win32.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qconfig.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bootstrap_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_clucene_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designercomponents_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_platformsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmldevtools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickparticles_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_functions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resolve_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/rtti.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/precompile_header.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/warn_on.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resources.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/moc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/opengl.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/uic.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/windows.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/testcase_targets.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exceptions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/yacc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/lex.prf \
../BlueC/BlueC.pro \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/qtmaind.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Cored.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5PrintSupport.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Widgets.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Gui.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl
$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\BlueC\BlueC.pro
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qdevice.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\device_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\common\shell-win32.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qconfig.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bootstrap_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_clucene_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designercomponents_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_platformsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmldevtools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qtmultimediaquicktools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickparticles_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_functions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\win32-g++\qmake.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resolve_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\rtti.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\precompile_header.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\warn_on.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resources.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\moc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\opengl.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\uic.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\windows.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\testcase_targets.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exceptions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\yacc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\lex.prf:
..\BlueC\BlueC.pro:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/qtmaind.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Cored.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5PrintSupport.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Widgets.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Gui.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\BlueC\BlueC.pro
qmake_all: FORCE
make_first: debug-make_first release-make_first FORCE
all: debug-all release-all FORCE
clean: debug-clean release-clean FORCE
distclean: debug-distclean release-distclean FORCE
-$(DEL_FILE) Makefile
debug-mocclean:
$(MAKE) -f $(MAKEFILE).Debug mocclean
release-mocclean:
$(MAKE) -f $(MAKEFILE).Release mocclean
mocclean: debug-mocclean release-mocclean
debug-mocables:
$(MAKE) -f $(MAKEFILE).Debug mocables
release-mocables:
$(MAKE) -f $(MAKEFILE).Release mocables
mocables: debug-mocables release-mocables
check: first
FORCE:
$(MAKEFILE).Debug: Makefile
$(MAKEFILE).Release: Makefile

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,189 @@
/****************************************************************************
** Meta object code from reading C++ file 'mainwindow.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.4.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../../BlueC/mainwindow.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'mainwindow.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.4.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_MainWindow_t {
QByteArrayData data[22];
char stringdata[165];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MainWindow_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MainWindow_t qt_meta_stringdata_MainWindow = {
{
QT_MOC_LITERAL(0, 0, 10), // "MainWindow"
QT_MOC_LITERAL(1, 11, 6), // "value0"
QT_MOC_LITERAL(2, 18, 0), // ""
QT_MOC_LITERAL(3, 19, 6), // "value1"
QT_MOC_LITERAL(4, 26, 6), // "value2"
QT_MOC_LITERAL(5, 33, 6), // "value3"
QT_MOC_LITERAL(6, 40, 6), // "value4"
QT_MOC_LITERAL(7, 47, 6), // "value5"
QT_MOC_LITERAL(8, 54, 6), // "value6"
QT_MOC_LITERAL(9, 61, 6), // "value7"
QT_MOC_LITERAL(10, 68, 6), // "value8"
QT_MOC_LITERAL(11, 75, 6), // "value9"
QT_MOC_LITERAL(12, 82, 7), // "value10"
QT_MOC_LITERAL(13, 90, 7), // "value11"
QT_MOC_LITERAL(14, 98, 7), // "value12"
QT_MOC_LITERAL(15, 106, 7), // "value13"
QT_MOC_LITERAL(16, 114, 7), // "value14"
QT_MOC_LITERAL(17, 122, 7), // "value15"
QT_MOC_LITERAL(18, 130, 7), // "value16"
QT_MOC_LITERAL(19, 138, 7), // "value17"
QT_MOC_LITERAL(20, 146, 8), // "readData"
QT_MOC_LITERAL(21, 155, 9) // "readData1"
},
"MainWindow\0value0\0\0value1\0value2\0"
"value3\0value4\0value5\0value6\0value7\0"
"value8\0value9\0value10\0value11\0value12\0"
"value13\0value14\0value15\0value16\0value17\0"
"readData\0readData1"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MainWindow[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
20, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 1, 114, 2, 0x08 /* Private */,
3, 1, 117, 2, 0x08 /* Private */,
4, 1, 120, 2, 0x08 /* Private */,
5, 1, 123, 2, 0x08 /* Private */,
6, 1, 126, 2, 0x08 /* Private */,
7, 1, 129, 2, 0x08 /* Private */,
8, 1, 132, 2, 0x08 /* Private */,
9, 1, 135, 2, 0x08 /* Private */,
10, 0, 138, 2, 0x08 /* Private */,
11, 0, 139, 2, 0x08 /* Private */,
12, 0, 140, 2, 0x08 /* Private */,
13, 0, 141, 2, 0x08 /* Private */,
14, 0, 142, 2, 0x08 /* Private */,
15, 0, 143, 2, 0x08 /* Private */,
16, 0, 144, 2, 0x08 /* Private */,
17, 0, 145, 2, 0x08 /* Private */,
18, 0, 146, 2, 0x08 /* Private */,
19, 0, 147, 2, 0x08 /* Private */,
20, 0, 148, 2, 0x08 /* Private */,
21, 0, 149, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MainWindow *_t = static_cast<MainWindow *>(_o);
switch (_id) {
case 0: _t->value0((*reinterpret_cast< int(*)>(_a[1]))); break;
case 1: _t->value1((*reinterpret_cast< int(*)>(_a[1]))); break;
case 2: _t->value2((*reinterpret_cast< int(*)>(_a[1]))); break;
case 3: _t->value3((*reinterpret_cast< int(*)>(_a[1]))); break;
case 4: _t->value4((*reinterpret_cast< int(*)>(_a[1]))); break;
case 5: _t->value5((*reinterpret_cast< int(*)>(_a[1]))); break;
case 6: _t->value6((*reinterpret_cast< int(*)>(_a[1]))); break;
case 7: _t->value7((*reinterpret_cast< int(*)>(_a[1]))); break;
case 8: _t->value8(); break;
case 9: _t->value9(); break;
case 10: _t->value10(); break;
case 11: _t->value11(); break;
case 12: _t->value12(); break;
case 13: _t->value13(); break;
case 14: _t->value14(); break;
case 15: _t->value15(); break;
case 16: _t->value16(); break;
case 17: _t->value17(); break;
case 18: _t->readData(); break;
case 19: _t->readData1(); break;
default: ;
}
}
}
const QMetaObject MainWindow::staticMetaObject = {
{ &QMainWindow::staticMetaObject, qt_meta_stringdata_MainWindow.data,
qt_meta_data_MainWindow, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
};
const QMetaObject *MainWindow::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MainWindow::qt_metacast(const char *_clname)
{
if (!_clname) return Q_NULLPTR;
if (!strcmp(_clname, qt_meta_stringdata_MainWindow.stringdata))
return static_cast<void*>(const_cast< MainWindow*>(this));
return QMainWindow::qt_metacast(_clname);
}
int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QMainWindow::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 20)
qt_static_metacall(this, _c, _id, _a);
_id -= 20;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 20)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 20;
}
return _id;
}
QT_END_MOC_NAMESPACE

View File

@ -0,0 +1,465 @@
/********************************************************************************
** Form generated from reading UI file 'mainwindow.ui'
**
** Created by: Qt User Interface Compiler version 5.4.1
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_MAINWINDOW_H
#define UI_MAINWINDOW_H
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QFrame>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QLineEdit>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QRadioButton>
#include <QtWidgets/QSlider>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QTextBrowser>
#include <QtWidgets/QToolBar>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
#include "qcustomplot.h"
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QWidget *centralWidget;
QFrame *frame;
QWidget *horizontalLayoutWidget;
QHBoxLayout *horizontalLayout;
QVBoxLayout *verticalLayout_5;
QHBoxLayout *horizontalLayout_3;
QLabel *label;
QHBoxLayout *horizontalLayout_2;
QSlider *horizontalSlider;
QLineEdit *lineEdit;
QVBoxLayout *verticalLayout_6;
QHBoxLayout *horizontalLayout_4;
QLabel *label_2;
QHBoxLayout *horizontalLayout_5;
QSlider *horizontalSlider_2;
QLineEdit *lineEdit_2;
QWidget *verticalLayoutWidget;
QVBoxLayout *verticalLayout;
QHBoxLayout *horizontalLayout_9;
QLabel *label_4;
QSlider *horizontalSlider_6;
QLineEdit *lineEdit_8;
QHBoxLayout *horizontalLayout_6;
QSlider *horizontalSlider_3;
QLineEdit *lineEdit_3;
QHBoxLayout *horizontalLayout_10;
QLabel *label_5;
QSlider *horizontalSlider_7;
QLineEdit *lineEdit_7;
QHBoxLayout *horizontalLayout_8;
QSlider *horizontalSlider_5;
QLineEdit *lineEdit_5;
QHBoxLayout *horizontalLayout_11;
QLabel *label_3;
QSlider *horizontalSlider_8;
QLineEdit *lineEdit_6;
QHBoxLayout *horizontalLayout_7;
QSlider *horizontalSlider_4;
QLineEdit *lineEdit_4;
QTextBrowser *textBrowser;
QWidget *horizontalLayoutWidget_2;
QHBoxLayout *horizontalLayout_12;
QRadioButton *radioButton_2;
QRadioButton *radioButton;
QCustomPlot *widget;
QMenuBar *menuBar;
QToolBar *mainToolBar;
QStatusBar *statusBar;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QStringLiteral("MainWindow"));
MainWindow->resize(691, 513);
centralWidget = new QWidget(MainWindow);
centralWidget->setObjectName(QStringLiteral("centralWidget"));
frame = new QFrame(centralWidget);
frame->setObjectName(QStringLiteral("frame"));
frame->setGeometry(QRect(0, 0, 671, 441));
frame->setFrameShape(QFrame::StyledPanel);
frame->setFrameShadow(QFrame::Raised);
horizontalLayoutWidget = new QWidget(frame);
horizontalLayoutWidget->setObjectName(QStringLiteral("horizontalLayoutWidget"));
horizontalLayoutWidget->setGeometry(QRect(0, 0, 671, 121));
horizontalLayout = new QHBoxLayout(horizontalLayoutWidget);
horizontalLayout->setSpacing(6);
horizontalLayout->setContentsMargins(11, 11, 11, 11);
horizontalLayout->setObjectName(QStringLiteral("horizontalLayout"));
horizontalLayout->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout->setContentsMargins(0, 0, 0, 0);
verticalLayout_5 = new QVBoxLayout();
verticalLayout_5->setSpacing(6);
verticalLayout_5->setObjectName(QStringLiteral("verticalLayout_5"));
verticalLayout_5->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout_3 = new QHBoxLayout();
horizontalLayout_3->setSpacing(6);
horizontalLayout_3->setObjectName(QStringLiteral("horizontalLayout_3"));
horizontalLayout_3->setSizeConstraint(QLayout::SetMinAndMaxSize);
label = new QLabel(horizontalLayoutWidget);
label->setObjectName(QStringLiteral("label"));
label->setMinimumSize(QSize(0, 75));
label->setMaximumSize(QSize(16777215, 75));
label->setAlignment(Qt::AlignCenter);
horizontalLayout_3->addWidget(label);
verticalLayout_5->addLayout(horizontalLayout_3);
horizontalLayout_2 = new QHBoxLayout();
horizontalLayout_2->setSpacing(6);
horizontalLayout_2->setObjectName(QStringLiteral("horizontalLayout_2"));
horizontalLayout_2->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalSlider = new QSlider(horizontalLayoutWidget);
horizontalSlider->setObjectName(QStringLiteral("horizontalSlider"));
QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(horizontalSlider->sizePolicy().hasHeightForWidth());
horizontalSlider->setSizePolicy(sizePolicy);
horizontalSlider->setMaximumSize(QSize(16777215, 22));
horizontalSlider->setMaximum(510);
horizontalSlider->setValue(255);
horizontalSlider->setSliderPosition(255);
horizontalSlider->setOrientation(Qt::Horizontal);
horizontalLayout_2->addWidget(horizontalSlider);
lineEdit = new QLineEdit(horizontalLayoutWidget);
lineEdit->setObjectName(QStringLiteral("lineEdit"));
QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Minimum);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(lineEdit->sizePolicy().hasHeightForWidth());
lineEdit->setSizePolicy(sizePolicy1);
lineEdit->setMaximumSize(QSize(35, 35));
lineEdit->setMaxLength(4);
lineEdit->setClearButtonEnabled(false);
horizontalLayout_2->addWidget(lineEdit);
verticalLayout_5->addLayout(horizontalLayout_2);
horizontalLayout->addLayout(verticalLayout_5);
verticalLayout_6 = new QVBoxLayout();
verticalLayout_6->setSpacing(6);
verticalLayout_6->setObjectName(QStringLiteral("verticalLayout_6"));
verticalLayout_6->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout_4 = new QHBoxLayout();
horizontalLayout_4->setSpacing(6);
horizontalLayout_4->setObjectName(QStringLiteral("horizontalLayout_4"));
horizontalLayout_4->setSizeConstraint(QLayout::SetMinAndMaxSize);
label_2 = new QLabel(horizontalLayoutWidget);
label_2->setObjectName(QStringLiteral("label_2"));
label_2->setMinimumSize(QSize(0, 75));
label_2->setMaximumSize(QSize(16777215, 75));
label_2->setAlignment(Qt::AlignCenter);
horizontalLayout_4->addWidget(label_2);
verticalLayout_6->addLayout(horizontalLayout_4);
horizontalLayout_5 = new QHBoxLayout();
horizontalLayout_5->setSpacing(6);
horizontalLayout_5->setObjectName(QStringLiteral("horizontalLayout_5"));
horizontalLayout_5->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalSlider_2 = new QSlider(horizontalLayoutWidget);
horizontalSlider_2->setObjectName(QStringLiteral("horizontalSlider_2"));
sizePolicy.setHeightForWidth(horizontalSlider_2->sizePolicy().hasHeightForWidth());
horizontalSlider_2->setSizePolicy(sizePolicy);
horizontalSlider_2->setMaximumSize(QSize(16777215, 22));
horizontalSlider_2->setMaximum(510);
horizontalSlider_2->setValue(255);
horizontalSlider_2->setOrientation(Qt::Horizontal);
horizontalLayout_5->addWidget(horizontalSlider_2);
lineEdit_2 = new QLineEdit(horizontalLayoutWidget);
lineEdit_2->setObjectName(QStringLiteral("lineEdit_2"));
sizePolicy1.setHeightForWidth(lineEdit_2->sizePolicy().hasHeightForWidth());
lineEdit_2->setSizePolicy(sizePolicy1);
lineEdit_2->setMaximumSize(QSize(35, 35));
lineEdit_2->setMaxLength(4);
lineEdit_2->setClearButtonEnabled(false);
horizontalLayout_5->addWidget(lineEdit_2);
verticalLayout_6->addLayout(horizontalLayout_5);
horizontalLayout->addLayout(verticalLayout_6);
verticalLayoutWidget = new QWidget(frame);
verticalLayoutWidget->setObjectName(QStringLiteral("verticalLayoutWidget"));
verticalLayoutWidget->setGeometry(QRect(0, 120, 671, 251));
verticalLayout = new QVBoxLayout(verticalLayoutWidget);
verticalLayout->setSpacing(6);
verticalLayout->setContentsMargins(11, 11, 11, 11);
verticalLayout->setObjectName(QStringLiteral("verticalLayout"));
verticalLayout->setContentsMargins(0, 0, 0, 0);
horizontalLayout_9 = new QHBoxLayout();
horizontalLayout_9->setSpacing(6);
horizontalLayout_9->setObjectName(QStringLiteral("horizontalLayout_9"));
label_4 = new QLabel(verticalLayoutWidget);
label_4->setObjectName(QStringLiteral("label_4"));
QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Minimum);
sizePolicy2.setHorizontalStretch(0);
sizePolicy2.setVerticalStretch(0);
sizePolicy2.setHeightForWidth(label_4->sizePolicy().hasHeightForWidth());
label_4->setSizePolicy(sizePolicy2);
label_4->setMaximumSize(QSize(16777215, 35));
label_4->setAlignment(Qt::AlignCenter);
horizontalLayout_9->addWidget(label_4);
horizontalSlider_6 = new QSlider(verticalLayoutWidget);
horizontalSlider_6->setObjectName(QStringLiteral("horizontalSlider_6"));
horizontalSlider_6->setMaximumSize(QSize(50, 16777215));
horizontalSlider_6->setMaximum(99);
horizontalSlider_6->setOrientation(Qt::Horizontal);
horizontalLayout_9->addWidget(horizontalSlider_6);
lineEdit_8 = new QLineEdit(verticalLayoutWidget);
lineEdit_8->setObjectName(QStringLiteral("lineEdit_8"));
lineEdit_8->setMaximumSize(QSize(50, 16777215));
lineEdit_8->setMaxLength(3);
horizontalLayout_9->addWidget(lineEdit_8);
verticalLayout->addLayout(horizontalLayout_9);
horizontalLayout_6 = new QHBoxLayout();
horizontalLayout_6->setSpacing(6);
horizontalLayout_6->setObjectName(QStringLiteral("horizontalLayout_6"));
horizontalSlider_3 = new QSlider(verticalLayoutWidget);
horizontalSlider_3->setObjectName(QStringLiteral("horizontalSlider_3"));
horizontalSlider_3->setMaximum(10000000);
horizontalSlider_3->setOrientation(Qt::Horizontal);
horizontalSlider_3->setTickPosition(QSlider::NoTicks);
horizontalLayout_6->addWidget(horizontalSlider_3);
lineEdit_3 = new QLineEdit(verticalLayoutWidget);
lineEdit_3->setObjectName(QStringLiteral("lineEdit_3"));
QSizePolicy sizePolicy3(QSizePolicy::Minimum, QSizePolicy::Fixed);
sizePolicy3.setHorizontalStretch(0);
sizePolicy3.setVerticalStretch(0);
sizePolicy3.setHeightForWidth(lineEdit_3->sizePolicy().hasHeightForWidth());
lineEdit_3->setSizePolicy(sizePolicy3);
lineEdit_3->setMaximumSize(QSize(100, 35));
lineEdit_3->setMaxLength(20);
horizontalLayout_6->addWidget(lineEdit_3);
verticalLayout->addLayout(horizontalLayout_6);
horizontalLayout_10 = new QHBoxLayout();
horizontalLayout_10->setSpacing(6);
horizontalLayout_10->setObjectName(QStringLiteral("horizontalLayout_10"));
label_5 = new QLabel(verticalLayoutWidget);
label_5->setObjectName(QStringLiteral("label_5"));
sizePolicy2.setHeightForWidth(label_5->sizePolicy().hasHeightForWidth());
label_5->setSizePolicy(sizePolicy2);
label_5->setMaximumSize(QSize(16777215, 35));
label_5->setAlignment(Qt::AlignCenter);
horizontalLayout_10->addWidget(label_5);
horizontalSlider_7 = new QSlider(verticalLayoutWidget);
horizontalSlider_7->setObjectName(QStringLiteral("horizontalSlider_7"));
horizontalSlider_7->setMaximumSize(QSize(50, 16777215));
horizontalSlider_7->setMaximum(99);
horizontalSlider_7->setOrientation(Qt::Horizontal);
horizontalLayout_10->addWidget(horizontalSlider_7);
lineEdit_7 = new QLineEdit(verticalLayoutWidget);
lineEdit_7->setObjectName(QStringLiteral("lineEdit_7"));
lineEdit_7->setMaximumSize(QSize(50, 16777215));
lineEdit_7->setMaxLength(3);
horizontalLayout_10->addWidget(lineEdit_7);
verticalLayout->addLayout(horizontalLayout_10);
horizontalLayout_8 = new QHBoxLayout();
horizontalLayout_8->setSpacing(6);
horizontalLayout_8->setObjectName(QStringLiteral("horizontalLayout_8"));
horizontalSlider_5 = new QSlider(verticalLayoutWidget);
horizontalSlider_5->setObjectName(QStringLiteral("horizontalSlider_5"));
horizontalSlider_5->setMaximum(10000000);
horizontalSlider_5->setOrientation(Qt::Horizontal);
horizontalLayout_8->addWidget(horizontalSlider_5);
lineEdit_5 = new QLineEdit(verticalLayoutWidget);
lineEdit_5->setObjectName(QStringLiteral("lineEdit_5"));
sizePolicy3.setHeightForWidth(lineEdit_5->sizePolicy().hasHeightForWidth());
lineEdit_5->setSizePolicy(sizePolicy3);
lineEdit_5->setMaximumSize(QSize(100, 35));
lineEdit_5->setMaxLength(20);
horizontalLayout_8->addWidget(lineEdit_5);
verticalLayout->addLayout(horizontalLayout_8);
horizontalLayout_11 = new QHBoxLayout();
horizontalLayout_11->setSpacing(6);
horizontalLayout_11->setObjectName(QStringLiteral("horizontalLayout_11"));
label_3 = new QLabel(verticalLayoutWidget);
label_3->setObjectName(QStringLiteral("label_3"));
sizePolicy2.setHeightForWidth(label_3->sizePolicy().hasHeightForWidth());
label_3->setSizePolicy(sizePolicy2);
label_3->setMaximumSize(QSize(16777215, 35));
label_3->setAlignment(Qt::AlignCenter);
horizontalLayout_11->addWidget(label_3);
horizontalSlider_8 = new QSlider(verticalLayoutWidget);
horizontalSlider_8->setObjectName(QStringLiteral("horizontalSlider_8"));
horizontalSlider_8->setMaximumSize(QSize(50, 16777215));
horizontalSlider_8->setMaximum(99);
horizontalSlider_8->setOrientation(Qt::Horizontal);
horizontalLayout_11->addWidget(horizontalSlider_8);
lineEdit_6 = new QLineEdit(verticalLayoutWidget);
lineEdit_6->setObjectName(QStringLiteral("lineEdit_6"));
lineEdit_6->setMaximumSize(QSize(50, 16777215));
lineEdit_6->setMaxLength(3);
horizontalLayout_11->addWidget(lineEdit_6);
verticalLayout->addLayout(horizontalLayout_11);
horizontalLayout_7 = new QHBoxLayout();
horizontalLayout_7->setSpacing(6);
horizontalLayout_7->setObjectName(QStringLiteral("horizontalLayout_7"));
horizontalSlider_4 = new QSlider(verticalLayoutWidget);
horizontalSlider_4->setObjectName(QStringLiteral("horizontalSlider_4"));
horizontalSlider_4->setMaximum(10000000);
horizontalSlider_4->setOrientation(Qt::Horizontal);
horizontalLayout_7->addWidget(horizontalSlider_4);
lineEdit_4 = new QLineEdit(verticalLayoutWidget);
lineEdit_4->setObjectName(QStringLiteral("lineEdit_4"));
sizePolicy3.setHeightForWidth(lineEdit_4->sizePolicy().hasHeightForWidth());
lineEdit_4->setSizePolicy(sizePolicy3);
lineEdit_4->setMaximumSize(QSize(100, 35));
lineEdit_4->setMaxLength(20);
horizontalLayout_7->addWidget(lineEdit_4);
verticalLayout->addLayout(horizontalLayout_7);
textBrowser = new QTextBrowser(frame);
textBrowser->setObjectName(QStringLiteral("textBrowser"));
textBrowser->setGeometry(QRect(0, 410, 671, 31));
textBrowser->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
textBrowser->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
horizontalLayoutWidget_2 = new QWidget(frame);
horizontalLayoutWidget_2->setObjectName(QStringLiteral("horizontalLayoutWidget_2"));
horizontalLayoutWidget_2->setGeometry(QRect(0, 360, 671, 41));
horizontalLayout_12 = new QHBoxLayout(horizontalLayoutWidget_2);
horizontalLayout_12->setSpacing(6);
horizontalLayout_12->setContentsMargins(11, 11, 11, 11);
horizontalLayout_12->setObjectName(QStringLiteral("horizontalLayout_12"));
horizontalLayout_12->setContentsMargins(0, 0, 0, 0);
radioButton_2 = new QRadioButton(horizontalLayoutWidget_2);
radioButton_2->setObjectName(QStringLiteral("radioButton_2"));
radioButton_2->setLayoutDirection(Qt::LeftToRight);
radioButton_2->setChecked(true);
horizontalLayout_12->addWidget(radioButton_2);
radioButton = new QRadioButton(horizontalLayoutWidget_2);
radioButton->setObjectName(QStringLiteral("radioButton"));
radioButton->setChecked(false);
horizontalLayout_12->addWidget(radioButton);
widget = new QCustomPlot(centralWidget);
widget->setObjectName(QStringLiteral("widget"));
widget->setGeometry(QRect(679, 9, 1091, 581));
MainWindow->setCentralWidget(centralWidget);
frame->raise();
widget->raise();
textBrowser->raise();
radioButton_2->raise();
radioButton->raise();
horizontalLayoutWidget_2->raise();
menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QStringLiteral("menuBar"));
menuBar->setGeometry(QRect(0, 0, 691, 26));
MainWindow->setMenuBar(menuBar);
mainToolBar = new QToolBar(MainWindow);
mainToolBar->setObjectName(QStringLiteral("mainToolBar"));
MainWindow->addToolBar(Qt::TopToolBarArea, mainToolBar);
statusBar = new QStatusBar(MainWindow);
statusBar->setObjectName(QStringLiteral("statusBar"));
MainWindow->setStatusBar(statusBar);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0));
label->setText(QApplication::translate("MainWindow", "PWM_Left", 0));
lineEdit->setText(QApplication::translate("MainWindow", "0", 0));
label_2->setText(QApplication::translate("MainWindow", "PWM_Right", 0));
lineEdit_2->setText(QApplication::translate("MainWindow", "0", 0));
label_4->setText(QApplication::translate("MainWindow", "KP", 0));
lineEdit_8->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_3->setText(QApplication::translate("MainWindow", "0", 0));
label_5->setText(QApplication::translate("MainWindow", "KI", 0));
lineEdit_7->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_5->setText(QApplication::translate("MainWindow", "0", 0));
label_3->setText(QApplication::translate("MainWindow", "KD", 0));
lineEdit_6->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_4->setText(QApplication::translate("MainWindow", "0", 0));
radioButton_2->setText(QApplication::translate("MainWindow", "Key Mode", 0));
radioButton->setText(QApplication::translate("MainWindow", "PWM/ PID mode", 0));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINWINDOW_H

View File

@ -0,0 +1,27 @@
#-------------------------------------------------
#
# Project created by QtCreator 2016-06-20T21:38:18
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport
TARGET = BControl
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
IMUfilter.cpp \
qcustomplot.cpp
HEADERS += mainwindow.h \
macrodefs.h \
IMUfilter.h \
qcustomplot.h
FORMS += mainwindow.ui
QT += serialport

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2017-04-12T08:11:22. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{071d3636-4530-4e79-9e5c-eb70a03bf55f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BControl</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BControl/BControl.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BControl.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2016-09-04T21:43:37. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{5d2c2528-3a67-4b34-9757-af8305407b5f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BControl</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BControl/BControl.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BControl.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2016-08-24T10:24:50. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{e1fc7551-0b1d-48c2-8cf8-e6d502bbac8d}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BControl</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BControl/BControl.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BControl.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,247 @@
/**
* @author Aaron Berk
*
* @section LICENSE
*
* Copyright (c) 2010 ARM Limited
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* @section DESCRIPTION
*
* IMU orientation filter developed by Sebastian Madgwick.
*
* Find more details about his paper here:
*
* http://code.google.com/p/imumargalgorithm30042010sohm/
*/
/**
* Includes
*/
#include "IMUfilter.h"
IMUfilter::IMUfilter(double rate, double gyroscopeMeasurementError){
firstUpdate = 0;
//Quaternion orientation of earth frame relative to auxiliary frame.
AEq_1 = 1;
AEq_2 = 0;
AEq_3 = 0;
AEq_4 = 0;
//Estimated orientation quaternion elements with initial conditions.
SEq_1 = 1;
SEq_2 = 0;
SEq_3 = 0;
SEq_4 = 0;
//Sampling period (typical value is ~0.1s).
deltat = rate;
//Gyroscope measurement error (in degrees per second).
gyroMeasError = gyroscopeMeasurementError;
//Compute beta.
beta = sqrt(3.0 / 4.0) * (PI * (gyroMeasError / 180.0));
}
void IMUfilter::updateFilter(double w_x, double w_y, double w_z, double a_x, double a_y, double a_z) {
//Local system variables.
//Vector norm.
double norm;
//Quaternion rate from gyroscope elements.
double SEqDot_omega_1;
double SEqDot_omega_2;
double SEqDot_omega_3;
double SEqDot_omega_4;
//Objective function elements.
double f_1;
double f_2;
double f_3;
//Objective function Jacobian elements.
double J_11or24;
double J_12or23;
double J_13or22;
double J_14or21;
double J_32;
double J_33;
//Objective function gradient elements.
double nablaf_1;
double nablaf_2;
double nablaf_3;
double nablaf_4;
//Auxiliary variables to avoid reapeated calcualtions.
double halfSEq_1 = 0.5 * SEq_1;
double halfSEq_2 = 0.5 * SEq_2;
double halfSEq_3 = 0.5 * SEq_3;
double halfSEq_4 = 0.5 * SEq_4;
double twoSEq_1 = 2.0 * SEq_1;
double twoSEq_2 = 2.0 * SEq_2;
double twoSEq_3 = 2.0 * SEq_3;
//Compute the quaternion rate measured by gyroscopes.
SEqDot_omega_1 = -halfSEq_2 * w_x - halfSEq_3 * w_y - halfSEq_4 * w_z;
SEqDot_omega_2 = halfSEq_1 * w_x + halfSEq_3 * w_z - halfSEq_4 * w_y;
SEqDot_omega_3 = halfSEq_1 * w_y - halfSEq_2 * w_z + halfSEq_4 * w_x;
SEqDot_omega_4 = halfSEq_1 * w_z + halfSEq_2 * w_y - halfSEq_3 * w_x;
//Normalise the accelerometer measurement.
norm = sqrt(a_x * a_x + a_y * a_y + a_z * a_z);
a_x /= norm;
a_y /= norm;
a_z /= norm;
//Compute the objective function and Jacobian.
f_1 = twoSEq_2 * SEq_4 - twoSEq_1 * SEq_3 - a_x;
f_2 = twoSEq_1 * SEq_2 + twoSEq_3 * SEq_4 - a_y;
f_3 = 1.0 - twoSEq_2 * SEq_2 - twoSEq_3 * SEq_3 - a_z;
//J_11 negated in matrix multiplication.
J_11or24 = twoSEq_3;
J_12or23 = 2 * SEq_4;
//J_12 negated in matrix multiplication
J_13or22 = twoSEq_1;
J_14or21 = twoSEq_2;
//Negated in matrix multiplication.
J_32 = 2 * J_14or21;
//Negated in matrix multiplication.
J_33 = 2 * J_11or24;
//Compute the gradient (matrix multiplication).
nablaf_1 = J_14or21 * f_2 - J_11or24 * f_1;
nablaf_2 = J_12or23 * f_1 + J_13or22 * f_2 - J_32 * f_3;
nablaf_3 = J_12or23 * f_2 - J_33 * f_3 - J_13or22 * f_1;
nablaf_4 = J_14or21 * f_1 + J_11or24 * f_2;
//Normalise the gradient.
norm = sqrt(nablaf_1 * nablaf_1 + nablaf_2 * nablaf_2 + nablaf_3 * nablaf_3 + nablaf_4 * nablaf_4);
nablaf_1 /= norm;
nablaf_2 /= norm;
nablaf_3 /= norm;
nablaf_4 /= norm;
//Compute then integrate the estimated quaternion rate.
SEq_1 += (SEqDot_omega_1 - (beta * nablaf_1)) * deltat;
SEq_2 += (SEqDot_omega_2 - (beta * nablaf_2)) * deltat;
SEq_3 += (SEqDot_omega_3 - (beta * nablaf_3)) * deltat;
SEq_4 += (SEqDot_omega_4 - (beta * nablaf_4)) * deltat;
//Normalise quaternion
norm = sqrt(SEq_1 * SEq_1 + SEq_2 * SEq_2 + SEq_3 * SEq_3 + SEq_4 * SEq_4);
SEq_1 /= norm;
SEq_2 /= norm;
SEq_3 /= norm;
SEq_4 /= norm;
if (firstUpdate == 0) {
//Store orientation of auxiliary frame.
AEq_1 = SEq_1;
AEq_2 = SEq_2;
AEq_3 = SEq_3;
AEq_4 = SEq_4;
firstUpdate = 1;
}
}
void IMUfilter::computeEuler(void){
//Quaternion describing orientation of sensor relative to earth.
double ESq_1, ESq_2, ESq_3, ESq_4;
//Quaternion describing orientation of sensor relative to auxiliary frame.
double ASq_1, ASq_2, ASq_3, ASq_4;
//Compute the quaternion conjugate.
ESq_1 = SEq_1;
ESq_2 = -SEq_2;
ESq_3 = -SEq_3;
ESq_4 = -SEq_4;
//Compute the quaternion product.
ASq_1 = ESq_1 * AEq_1 - ESq_2 * AEq_2 - ESq_3 * AEq_3 - ESq_4 * AEq_4;
ASq_2 = ESq_1 * AEq_2 + ESq_2 * AEq_1 + ESq_3 * AEq_4 - ESq_4 * AEq_3;
ASq_3 = ESq_1 * AEq_3 - ESq_2 * AEq_4 + ESq_3 * AEq_1 + ESq_4 * AEq_2;
ASq_4 = ESq_1 * AEq_4 + ESq_2 * AEq_3 - ESq_3 * AEq_2 + ESq_4 * AEq_1;
//Compute the Euler angles from the quaternion.
phi = atan2(2 * ASq_3 * ASq_4 - 2 * ASq_1 * ASq_2, 2 * ASq_1 * ASq_1 + 2 * ASq_4 * ASq_4 - 1);
theta = asin(2 * ASq_2 * ASq_3 - 2 * ASq_1 * ASq_3);
psi = atan2(2 * ASq_2 * ASq_3 - 2 * ASq_1 * ASq_4, 2 * ASq_1 * ASq_1 + 2 * ASq_2 * ASq_2 - 1);
}
double IMUfilter::getRoll(void){
return phi;
}
double IMUfilter::getPitch(void){
return theta;
}
double IMUfilter::getYaw(void){
return psi;
}
// Degrees
double IMUfilter::getRollInDegrees(void){
return toDegrees(phi);
}
double IMUfilter::getPitchInDegrees(void){
return toDegrees(theta);
}
double IMUfilter::getYawInDegrees(void){
return toDegrees(psi);
}
void IMUfilter::reset(void) {
firstUpdate = 0;
//Quaternion orientation of earth frame relative to auxiliary frame.
AEq_1 = 1;
AEq_2 = 0;
AEq_3 = 0;
AEq_4 = 0;
//Estimated orientation quaternion elements with initial conditions.
SEq_1 = 1;
SEq_2 = 0;
SEq_3 = 0;
SEq_4 = 0;
}

View File

@ -0,0 +1,166 @@
/**
* @author Aaron Berk
*
* @section LICENSE
*
* Copyright (c) 2010 ARM Limited
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* @section DESCRIPTION
*
* IMU orientation filter developed by Sebastian Madgwick.
*
* Find more details about his paper here:
*
* http://code.google.com/p/imumargalgorithm30042010sohm/
*/
#ifndef IMU_FILTER_H
#define IMU_FILTER_H
/**
* Includes
*/
#include <math.h>
#include "macrodefs.h"
/**
* Defines
*/
#define PI 3.1415926536
/**
* IMU orientation filter.
*/
class IMUfilter {
public:
/**
* Constructor.
*
* Initializes filter variables.
*
* @param rate The rate at which the filter should be updated.
* @param gyroscopeMeasurementError The error of the gyroscope in degrees
* per second. This used to calculate a tuning constant for the filter.
* Try changing this value if there are jittery readings, or they change
* too much or too fast when rotating the IMU.
*/
IMUfilter(double rate, double gyroscopeMeasurementError);
/**
* Update the filter variables.
*
* @param w_x X-axis gyroscope reading in rad/s.
* @param w_y Y-axis gyroscope reading in rad/s.
* @param w_z Z-axis gyroscope reading in rad/s.
* @param a_x X-axis accelerometer reading in m/s/s.
* @param a_y Y-axis accelerometer reading in m/s/s.
* @param a_z Z-axis accelerometer reading in m/s/s.
*/
void updateFilter(double w_x, double w_y, double w_z,
double a_x, double a_y, double a_z);
/**
* Compute the Euler angles based on the current filter data.
*/
void computeEuler(void);
/**
* Get the current roll.
*
* @return The current roll angle in radians.
*/
double getRoll(void);
/**
* Get the current roll.
*
* @return The current roll angle in degrees.
*/
double getRollInDegrees(void);
/**
* Get the current pitch.
*
* @return The current pitch angle in radians.
*/
double getPitch(void);
/**
* Get the current pitch.
*
* @return The current pitch angle in degrees.
*/
double getPitchInDegrees(void);
/**
* Get the current yaw.
*
* @return The current yaw angle in radians.
*/
double getYaw(void);
/**
* Get the current yaw.
*
* @return The current yaw angle in degrees.
*/
double getYawInDegrees(void);
/**
* Reset the filter.
*/
void reset(void);
private:
int firstUpdate;
//Quaternion orientation of earth frame relative to auxiliary frame.
double AEq_1;
double AEq_2;
double AEq_3;
double AEq_4;
//Estimated orientation quaternion elements with initial conditions.
double SEq_1;
double SEq_2;
double SEq_3;
double SEq_4;
//Sampling period
double deltat;
//Gyroscope measurement error (in degrees per second).
double gyroMeasError;
//Compute beta (filter tuning constant..
double beta;
double phi;
double theta;
double psi;
};
#endif /* IMU_FILTER_H */

View File

@ -0,0 +1,30 @@
#include <QElapsedTimer>
#include "bs.h"
BS::BS():QThread(),MainWindow()
{
}
BS::~BS()
{
}
void BS::run()
{
f.start();
//QByteArray baa = MainWindow::getArray();
//cout<<baa.toStdString();
QThread::currentThread()->yieldCurrentThread();
while(flag){
if(serial->isReadable())
{
QThread::currentThread()->sleep(50);
}
}
flag=1;
}

View File

@ -0,0 +1,21 @@
#ifndef BS_H
#define BS_H
#include <QDebug>
#include <iostream>
#include <mainwindow.h>
#include <QtMath>
using namespace std;
//class MainWindow;
class BS : public QThread
{
public:
static bool flag;
BS();
~BS();
// friend void MainWindow::newData(double x,double y);
protected:
void run();
};
#endif // BS_H

View File

@ -0,0 +1,56 @@
#ifndef MACRODEFS_H
#define MACRODEFS_H
// CAN Frame Micro Defines
#define GYRO_X_Y 0x00000066
#define GYRO_Z_Temp 0x00000067
#define ACCEL_X_Y_Z 0x00000069
#define GYRO_FULL_32_BIT ((unsigned int)(0xFFFFFFFF))
#define ACCEL_FULL_16_BIT ((unsigned int)(0xFFFF))
#define GYRO_RATE_LSB 0.001
#define ACCEL_RATE_LSB 0.0001
#define TEMP_IMU_LSB 1
/* Blow macros are imported from http://mbed.org/cookbook/IMU and may not be used
*/
//Gravity at Earth's surface in m/s/s
#define g0 9.812865328
//Number of samples to average.
#define SAMPLES 4
//Number of samples to be averaged for a null bias calculation
//during calibration.
#define CALIBRATION_SAMPLES 128
//Convert from radians to degrees.
#define toDegrees(x) (x * 57.2957795)
//Convert from degrees to radians.
#define toRadians(x) (x * 0.01745329252)
//ITG-3200 sensitivity is 14.375 LSB/(degrees/sec).
#define GYROSCOPE_GAIN (1 / 14.375)
//Full scale resolution on the ADXL345 is 4mg/LSB.
#define ACCELEROMETER_GAIN (0.004 * g0)
//Sampling gyroscope at 200Hz.
#define GYRO_RATE 0.005
//Sampling accelerometer at 200Hz.
#define ACC_RATE 0.005
//Updating filter at 1/FILTER_RATE Hz.
#define FILTER_RATE 0.01
// Timer Interval, namely 1000*FILTER_RATE
#define TIMER_INTERVAL 10
// Sample Frames for Calibration
#define SAMPLE_FRAMES_FOR_CALIBRATION 10000
#endif // MACRODEFS_H

View File

@ -0,0 +1,20 @@
//#include "mainwindow.h"
#include <QApplication>
#include "bs.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
//BS t;
w.show();
int c=a.exec();
//qDebug()<<"close";
w.serial->disconnect();
w.serial->close();
//QThread::currentThread()->usleep(1);
//QThread::currentThread()->msleep(10);
return c;
}

View File

@ -0,0 +1,489 @@
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QKeyEvent"
#include "QDebug"
#include <QCoreApplication>
#include <QtCore/QCoreApplication>
//#include "bs.h"
int KP[44];double kp=3,ki=0,kd=0;int kp1=3,ki1=0,kd1=0;double pkp=0, pki = 0,pkd = 0;int pwm_left,pwm_right;
QString cmd("");
int a=0;
long t;
double xa=0,ya=0,za=0;
double xg=0,yg=0,zg=0;
double xxa,yya,zza;double kp2 = 10;
double ki2 = 0;
double kd2 = 0;
double g1;
double ra=0,rollg=0;const float alpha = 0.5;
QElapsedTimer f;
IMUfilter *imufilter;
QByteArray ba("");
int outMax = 255;
int outMin = -255;
float lastInput = 0;
double ITerm =0;
double Setpoint = 0;
double gg=0;
double Compute(double input)
{
double error = Setpoint - input;
ITerm+= (ki2 * error);
if(ITerm > outMax) ITerm= outMax;
else if(ITerm < outMin) ITerm= outMin;
double dInput = (input - lastInput);
double output = kp2 * error + ITerm + kd2 * dInput;
if(output > outMax) output = outMax;
else if(output < outMin) output = outMin;
lastInput = input;
return output;
}
char blankString[] = QT_TRANSLATE_NOOP("SettingsDialog", "N/A");
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
serial = new QSerialPort(this);
QSerialPortInfo info=QSerialPortInfo::availablePorts().at(0);
// Check info of the port
qDebug() << "Name : " << info.portName();
/*qDebug() << "Manufacturer: " << info.manufacturer(); //if showing manufacturer, means Qstring &name is good
qDebug() << "Busy: " << info.isBusy() << endl;
*/// Initialize Serial
serial->setPortName("COM6");
//serial->open(QIODevice::ReadWrite);
serial->setBaudRate(QSerialPort::Baud57600);
serial->setDataBits(QSerialPort::Data8);
serial->setParity(QSerialPort::NoParity);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
if(serial->open(QIODevice::ReadWrite));
/*QString description;
QString manufacturer;
QString serialNumber;int i=0;
/*foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) {
cout<<i++;
description = info.description();
manufacturer = info.manufacturer();
serialNumber = info.serialNumber();
qDebug() << info.portName()<<" "
<< (!description.isEmpty() ? description : blankString)<<" "
<< (!manufacturer.isEmpty() ? manufacturer : blankString)<<" "
<< (!serialNumber.isEmpty() ? serialNumber : blankString)<<" "
<< info.systemLocation()<<" "
<< (info.vendorIdentifier() ? QString::number(info.vendorIdentifier(), 16) : blankString)<<" "
<< (info.productIdentifier() ? QString::number(info.productIdentifier(), 16) : blankString)<<info.isBusy()<<" \n ";}*/
ui->textBrowser->setText("Key(s) Pressed:");
connect(ui->horizontalSlider,SIGNAL(valueChanged(int)),this,SLOT(value0(int)));
connect(ui->horizontalSlider_2,SIGNAL(valueChanged(int)),this,SLOT(value1(int)));
connect(ui->horizontalSlider_3,SIGNAL(valueChanged(int)),this,SLOT(value2(int)));
connect(ui->horizontalSlider_5,SIGNAL(valueChanged(int)),this,SLOT(value3(int)));
connect(ui->horizontalSlider_4,SIGNAL(valueChanged(int)),this,SLOT(value4(int)));
connect(ui->horizontalSlider_6,SIGNAL(valueChanged(int)),this,SLOT(value5(int)));
connect(ui->horizontalSlider_7,SIGNAL(valueChanged(int)),this,SLOT(value6(int)));
connect(ui->horizontalSlider_8,SIGNAL(valueChanged(int)),this,SLOT(value7(int)));
connect(ui->lineEdit,SIGNAL(returnPressed()),this,SLOT(value8()));
connect(ui->lineEdit_2,SIGNAL(returnPressed()),this,SLOT(value9()));
connect(ui->lineEdit_3,SIGNAL(returnPressed()),this,SLOT(value10()));
connect(ui->lineEdit_4,SIGNAL(returnPressed()),this,SLOT(value11()));
connect(ui->lineEdit_5,SIGNAL(returnPressed()),this,SLOT(value12()));
connect(ui->lineEdit_6,SIGNAL(returnPressed()),this,SLOT(value13()));
connect(ui->lineEdit_7,SIGNAL(returnPressed()),this,SLOT(value14()));
connect(ui->lineEdit_8,SIGNAL(returnPressed()),this,SLOT(value15()));
connect(ui->radioButton,SIGNAL(pressed()),this,SLOT(value16()));
connect(ui->radioButton_2,SIGNAL(pressed()),this,SLOT(value17()));
connect(ui->lineEdit_9,SIGNAL(returnPressed()),this,SLOT(value18()));
connect(ui->radioButton_3,SIGNAL(pressed()),this,SLOT(value19()));
//connect(serial, SIGNAL(readyRead()), this, SLOT(readData()));
timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(readData()));
timer->start(16);
for(int i=0;i<44;i++)
KP[i]=0;
// create graph and assign data to it:
ui->widget->legend->setVisible(true);
//ui->widget->addGraph()->setName("AccelAng");
ui->widget->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
//ui->widget->axisRect()->setRangeZoom(Qt::Horizontal | Qt::Vertical);
ui->widget->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget->axisRect()->setRangeZoomFactor(1.5);
ui->widget->addGraph()->setName("Theta");
ui->widget->addGraph()->setName("ThetaDot");
ui->widget->addGraph()->setName("Velocity");
ui->widget->addGraph()->setName("ThetaOffset");
ui->widget->addGraph()->setName("Displacement");
//ui->widget->graph(0)->setData(x, y);
ui->widget->xAxis->setLabel("Time(s)->");
ui->widget->yAxis->setLabel("Angle(°),Disp(m),Vel(m/s)");
ui->widget->graph(0)->setPen(QPen(Qt::red));
ui->widget->graph(1)->setPen(QPen(Qt::green));
ui->widget->graph(2)->setPen(QPen(Qt::blue));
ui->widget->graph(3)->setPen(QPen(Qt::black));
ui->widget->graph(4)->setPen(QPen(Qt::cyan));
ui->widget->xAxis->setRange(0,50);
ui->widget->yAxis->setRange(15,-15);
f.start();
//imufilter = new IMUfilter(0.015, 20);
}
MainWindow::~MainWindow()
{
timer->stop();
QFile file("C:/Users/yikes/Desktop/graph.jpg");
ui->widget->saveJpg( "C:/Users/yikes/Desktop/graph.jpg", 0, 0, 1.0, -1 );
delete ui;
}
void MainWindow::BlueP()
{
QString b("");
for(int i=0;i<44;i++)
if(KP[i]==1)b.append(i+47);
b.append("\n");
ba.clear();
ui->textBrowser->setText("Key(s) Pressed:"+b);
if(a==-1)
{
if(b.length()>1){
ba.append(b.toUtf8());
}
else
{
ba.append("stop\n");
}
}
else if(a==1){
QString s("");
/*s.append("l");
s.append(QString::number(pwm_left,'g',9));
s.append("\nr");
s.append(QString::number(pwm_right,'g',9));
s.append("\n");//only for pwm
*/
if(pkp!=kp){
s.append("p");pkp=kp;
s.append(QString::number(kp,'g',5));
s.append(",\n");
goto zz;
}
if(pki!=ki){
s.append("i");pki=ki;
s.append(QString::number(ki,'g',5));
s.append(",\n");
goto zz;
}
if(pkd!=kd){
s.append("d");pkd=kd;
s.append(QString::number(kd,'g',5));
s.append(",\n");
goto zz;
}
zz:
qDebug()<<s<<"123";
ba=s.toUtf8();
}
else if(a==0){
QString s("");
s.append(cmd);
s.append(",\n");
ba=s.toUtf8();
}
if (serial->isOpen() && serial->isWritable())
{
qDebug()<<ba;
serial->write(ba);
if (serial->bytesToWrite() > 0)
{
serial->flush();
serial->bytesWritten(ba.length());
}
}
else
{
cout<< "An error occured" << endl;
qDebug()<<a;
}
//QThread::currentThread()->msleep(1000);
}
void MainWindow::keyPressEvent(QKeyEvent * event)
{
int p=event->key();
if(p>46&&p<91){
KP[p-47]=1;
BlueP();
}
}
void MainWindow::keyReleaseEvent(QKeyEvent * event)
{
int r=event->key();
if(r>46&&r<91){
KP[r-47]=0;
BlueP();}
}
void MainWindow::value0(int k)
{
pwm_left=k-255;
ui->lineEdit->setText(QString::number(pwm_left));
BlueP();
}
void MainWindow::value1(int k)
{
pwm_right=k-255;
ui->lineEdit_2->setText(QString::number(pwm_right));
BlueP();
}
void MainWindow::value2(int k)
{
kp=k/10000000.0+kp1;
ui->lineEdit_3->setText(QString::number(kp,'g',9));
BlueP();
}
void MainWindow::value3(int k)
{
ki=k/10000000.0+ki1;
ui->lineEdit_5->setText(QString::number(ki,'g',9));
BlueP();
}
void MainWindow::value4(int k)
{
kd=k/10000000.0+kd1;
ui->lineEdit_4->setText(QString::number(kd,'g',9));
BlueP();
}
void MainWindow::value5(int k)
{
kp=kp-kp1+k;
kp1=k;
ui->lineEdit_8->setText(QString::number(kp1));
ui->lineEdit_3->setText(QString::number(kp,'g',9));
BlueP();
}
void MainWindow::value6(int k)
{
ki=ki-ki1+k;
ki1=k;
ui->lineEdit_7->setText(QString::number(ki1));
ui->lineEdit_5->setText(QString::number(ki,'g',9));
BlueP();
}
void MainWindow::value7(int k)
{
kd=kd-kd1+k;
kd1=k;
ui->lineEdit_6->setText(QString::number(kd1));
ui->lineEdit_4->setText(QString::number(kd,'g',9));
BlueP();
}
void MainWindow::value8()
{
QString s=ui->lineEdit->text();
pwm_left=s.toInt();
ui->horizontalSlider->setSliderPosition(pwm_left+255);
}
void MainWindow::value9()
{
QString s=ui->lineEdit_2->text();
pwm_right=s.toInt();
ui->horizontalSlider_2->setSliderPosition(pwm_right+255);
}
void MainWindow::value10()
{
QString s=ui->lineEdit_3->text();
kp=s.toDouble();
kp1=(int)kp;
ui->horizontalSlider_3->setSliderPosition((kp-kp1)*10000000);
ui->horizontalSlider_6->setSliderPosition(kp1);
}
void MainWindow::value11()
{
QString s=ui->lineEdit_4->text();
ki=s.toDouble();
ki1=(int)ki;
ui->horizontalSlider_4->setSliderPosition((ki-ki1)*10000000);
ui->horizontalSlider_8->setSliderPosition(ki1);
}
void MainWindow::value12()
{
QString s=ui->lineEdit_5->text();
kd=s.toDouble();
kd1=(int)kd;
ui->horizontalSlider_5->setSliderPosition((kd-kd1)*10000000);
ui->horizontalSlider_7->setSliderPosition(kd1);
}
void MainWindow::value13()
{
QString s=ui->lineEdit_6->text();
int k=s.toInt();
kd=kd-kd1+k;
kd1=k;
ui->horizontalSlider_8->setSliderPosition(kd1);
}
void MainWindow::value14()
{
QString s=ui->lineEdit_7->text();
int k=s.toInt();
ki=ki-ki1+k;
ki1=k;
ui->horizontalSlider_7->setSliderPosition(ki1);
}
void MainWindow::value15()
{
QString s=ui->lineEdit_8->text();
int k=s.toInt();
kp=kp-kp1+k;
kp1=k;
ui->horizontalSlider_6->setSliderPosition(kp1);
}
void MainWindow::value16()
{
a=1;//BlueP();
}
void MainWindow::value17()
{
a=-1;//BlueP();
}
void MainWindow::value18()
{
QString s=ui->lineEdit_9->text();
cmd = s;
ui->lineEdit_9->clear();BlueP();
}
void MainWindow::value19()
{
a=0;//BlueP();
}
void MainWindow::newData(double w, double x,double y,double z,double a,double t)
{
ui->widget->graph(0)->addData(t,w);
ui->widget->graph(1)->addData(t,x);
ui->widget->graph(2)->addData(t,y);
ui->widget->graph(3)->addData(t,z);
ui->widget->graph(4)->addData(t,a);
ui->widget->replot();
}
double zoff,xoff;volatile int ch=0;
double compAngleY=0;double gyroYangle;
void MainWindow::readData()
{
//timer->stop();
if(ch==1)return;
x:;
if(!(serial->bytesAvailable()>25))return;
ch=1;
double g=0,xs,ys,zs;
int i,j,k,l,m,n,o;
//QThread::currentThread()->sleep(10);
//while(serial->bytesAvailable()>2){
QThread::currentThread()->msleep(1);
char c[1];
while(1)
{
if(!(serial->bytesAvailable())){ch=0;return;}
serial->read(c,1);
if(c[0]=='a')
{
if(!(serial->bytesAvailable()>25))
QThread::currentThread()->msleep(1);
break;
}
}
QByteArray data = serial->readLine();
qDebug()<<data;
//if(data[0]!='a')goto x;
i = data.indexOf(',');
j = data.indexOf(',',i+1);
k = data.indexOf(',',j+1);
l = data.indexOf(',',k+1);
n = data.indexOf(',',l+1);
//o = data.indexOf(',',n+1);
//if(k==-1)goto x;
//if(j==-1)goto x;
//if(i==-1)goto x;
//m = data.indexOf(',',l+1);
//j = data.indexOf(' ',i+1);
//k = data.indexOf(' ',j+1);
//l = data.indexOf(' ',k+1);
m = data.indexOf('\n');
if(m==-1){ch=0;return;}
// qDebug()<<i<<j<<k<<l<<m;
//QThread::currentThread()->sleep(1);
xs=data.mid(0,i-1).toDouble();
xa=data.mid(i+1,j-i-1).toDouble();
//QThread::currentThread()->sleep(1);
ya=data.mid(j+1,k-j-1).toDouble();
za=data.mid(k+1,l-k-1).toDouble();
ys=data.mid(l+1,n-l-1).toDouble()/1000;
//g= data.mid(n+1,o-n-1).toDouble();
//double pitch = atan(-xs / sqrt(xa * xa + ya * ya)) * 57.2958;
//compAngleY = 0.93 * (compAngleY + za * 0.015) + 0.07 * pitch;
/*imufilter->updateFilter(za,ys,g,xs*10.0,xa*10.0,ya*10.0);
imufilter->computeEuler();
double temp = imufilter->getPitch()* 57.2958;;
*/
//gyroYangle += za * 0.015;
//if (gyroYangle < -180 || gyroYangle > 180)
// gyroYangle = compAngleY;
//zs=data.mid(l+1,m-l-1).toDouble();
/*if(data[1]=='1')
{
xa=data.mid(i+1,j-i-1).toDouble();
ya=data.mid(j+1,k-j-1).toDouble();
za=data.mid(k+1,data.length()-k-2).toDouble();
}
else
{
xg=data.mid(i+1,j-i-1).toDouble();
yg=data.mid(j+1,k-j-1).toDouble();
zg=data.mid(k+1,data.length()-k-1).toDouble();
}
rollg+=yg;
xxa = xa * alpha + (xxa * (1.0 - alpha));
zza = za * alpha + (zza * (1.0 - alpha));
ra= 0.98* (rollg) + ((qAtan2(-zza, xxa)*180.0))/(3.141592653);
//qDebug()<<f.elapsed();
int zzz = Compute(ra);*/
//qDebug()<<data;
//qDebug()<<(k+1)<<(l-k-1);
//if(t>40000){gg+=g*(t-f.elapsed())/1000;}
//xs=atan2(za,-ya)*57.2958;
//ra= 0.96* (ra+gg) + 0.04*xs;
//double angle = atan2(-za,xa);
//qDebug()<<i<<j<<k<<l<<m;
qDebug()<<xs<<xa<<ya<<f.elapsed();
//if(f.elapsed()>40000)
newData(xs,xa,ya,za,ys,(t=f.elapsed())/1000.0);
if(serial->bytesAvailable()>25) goto x;
else ch=0;
}
/*void MainWindow::mouseWheel()
{
//ui->widget->replot();
}
*/

View File

@ -0,0 +1,58 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <iostream>
#include <QThread>
#include <QtMath>
#include <QtSerialPort/QSerialPort>
#include <QtSerialPort/QSerialPortInfo>
#include "IMUFilter.h"
using namespace std;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
QSerialPort *serial;
QTimer *timer;
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
void keyPressEvent(QKeyEvent *);
void keyReleaseEvent(QKeyEvent *);
void BlueP();
protected:
void run();
void newData(double w, double x, double y, double z, double a, double t);
private slots:
void value0(int);
void value1(int);
void value2(int);
void value3(int);
void value4(int);
void value5(int);
void value6(int);
void value7(int);
void value8();
void value9();
void value10();
void value11();
void value12();
void value13();
void value14();
void value15();
void value16();
void value17();
void value18();
void value19();
void readData();
//void mouseWheel();
};
#endif // MAINWINDOW_H

View File

@ -0,0 +1,650 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1566</width>
<height>549</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralWidget">
<widget class="QFrame" name="frame">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>671</width>
<height>451</height>
</rect>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<widget class="QWidget" name="horizontalLayoutWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>671</width>
<height>121</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QVBoxLayout" name="verticalLayout_5">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QLabel" name="label">
<property name="minimumSize">
<size>
<width>0</width>
<height>75</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>PWM_Left</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QSlider" name="horizontalSlider">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>22</height>
</size>
</property>
<property name="maximum">
<number>510</number>
</property>
<property name="value">
<number>255</number>
</property>
<property name="sliderPosition">
<number>255</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>35</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>4</number>
</property>
<property name="clearButtonEnabled">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_6">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QLabel" name="label_2">
<property name="minimumSize">
<size>
<width>0</width>
<height>75</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>PWM_Right</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QSlider" name="horizontalSlider_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Maximum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>22</height>
</size>
</property>
<property name="maximum">
<number>510</number>
</property>
<property name="value">
<number>255</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>35</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>4</number>
</property>
<property name="clearButtonEnabled">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QWidget" name="verticalLayoutWidget">
<property name="geometry">
<rect>
<x>0</x>
<y>120</y>
<width>671</width>
<height>251</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<widget class="QLabel" name="label_4">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>KP</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="horizontalSlider_6">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_8">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>3</string>
</property>
<property name="maxLength">
<number>3</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<widget class="QSlider" name="horizontalSlider_3">
<property name="maximum">
<number>10000000</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="tickPosition">
<enum>QSlider::NoTicks</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_3">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>3.0</string>
</property>
<property name="maxLength">
<number>20</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_10">
<item>
<widget class="QLabel" name="label_5">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>KI</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="horizontalSlider_7">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_7">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>3</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<widget class="QSlider" name="horizontalSlider_5">
<property name="maximum">
<number>10000000</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_5">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>20</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_11">
<item>
<widget class="QLabel" name="label_3">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>KD</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="horizontalSlider_8">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="maximum">
<number>99</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_6">
<property name="maximumSize">
<size>
<width>50</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>3</number>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<widget class="QSlider" name="horizontalSlider_4">
<property name="maximum">
<number>10000000</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="lineEdit_4">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize">
<size>
<width>100</width>
<height>35</height>
</size>
</property>
<property name="text">
<string>0</string>
</property>
<property name="maxLength">
<number>20</number>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QTextBrowser" name="textBrowser">
<property name="geometry">
<rect>
<x>0</x>
<y>410</y>
<width>671</width>
<height>31</height>
</rect>
</property>
<property name="verticalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
<property name="horizontalScrollBarPolicy">
<enum>Qt::ScrollBarAlwaysOff</enum>
</property>
</widget>
<widget class="QWidget" name="horizontalLayoutWidget_2">
<property name="geometry">
<rect>
<x>0</x>
<y>360</y>
<width>671</width>
<height>41</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_12">
<item>
<widget class="QRadioButton" name="radioButton_3">
<property name="text">
<string>cmd Mode</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="radioButton">
<property name="contextMenuPolicy">
<enum>Qt::PreventContextMenu</enum>
</property>
<property name="text">
<string>PWM/ PID mode</string>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
<item>
<widget class="QRadioButton" name="radioButton_2">
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text">
<string>Key Mode</string>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
<widget class="QCustomPlot" name="widget" native="true">
<property name="geometry">
<rect>
<x>690</x>
<y>30</y>
<width>851</width>
<height>471</height>
</rect>
</property>
</widget>
<widget class="QLineEdit" name="lineEdit_9">
<property name="geometry">
<rect>
<x>0</x>
<y>450</y>
<width>671</width>
<height>31</height>
</rect>
</property>
</widget>
</widget>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1566</width>
<height>26</height>
</rect>
</property>
</widget>
<widget class="QToolBar" name="mainToolBar">
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
</attribute>
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
</widget>
<widget class="QStatusBar" name="statusBar"/>
</widget>
<layoutdefault spacing="6" margin="11"/>
<customwidgets>
<customwidget>
<class>QCustomPlot</class>
<extends>QWidget</extends>
<header>../../qcustomplot.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,346 @@
#############################################################################
# Makefile for building: BControl
# Generated by qmake (3.0) (Qt 5.4.1)
# Project: ..\BControl\BControl.pro
# Template: app
# Command: C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe -spec win32-g++ CONFIG+=debug -o Makefile ..\BControl\BControl.pro
#############################################################################
MAKEFILE = Makefile
first: debug
install: debug-install
uninstall: debug-uninstall
QMAKE = C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe
DEL_FILE = del
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
COPY = copy /y
COPY_FILE = $(COPY)
COPY_DIR = xcopy /s /q /y /i
INSTALL_FILE = $(COPY_FILE)
INSTALL_PROGRAM = $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = del
SYMLINK = copy /y
DEL_DIR = rmdir
MOVE = move
SUBTARGETS = \
debug \
release
debug: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-all: FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
release: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-all: FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall
Makefile: ../BControl/BControl.pro C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qdevice.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/device_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/common/shell-win32.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qconfig.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bootstrap_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_clucene_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designercomponents_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_platformsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmldevtools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickparticles_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_functions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resolve_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/rtti.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/precompile_header.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/warn_on.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resources.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/moc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/opengl.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/uic.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/windows.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/testcase_targets.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exceptions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/yacc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/lex.prf \
../BControl/BControl.pro \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/qtmaind.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Cored.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5PrintSupport.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Widgets.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Gui.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl
$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\BControl\BControl.pro
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qdevice.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\device_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\common\shell-win32.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qconfig.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bootstrap_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_clucene_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designercomponents_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_platformsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmldevtools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qtmultimediaquicktools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickparticles_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_functions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\win32-g++\qmake.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resolve_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\rtti.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\precompile_header.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\warn_on.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resources.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\moc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\opengl.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\uic.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\windows.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\testcase_targets.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exceptions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\yacc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\lex.prf:
..\BControl\BControl.pro:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/qtmaind.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Cored.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5PrintSupport.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Widgets.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Gui.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\BControl\BControl.pro
qmake_all: FORCE
make_first: debug-make_first release-make_first FORCE
all: debug-all release-all FORCE
clean: debug-clean release-clean FORCE
distclean: debug-distclean release-distclean FORCE
-$(DEL_FILE) Makefile
debug-mocclean:
$(MAKE) -f $(MAKEFILE).Debug mocclean
release-mocclean:
$(MAKE) -f $(MAKEFILE).Release mocclean
mocclean: debug-mocclean release-mocclean
debug-mocables:
$(MAKE) -f $(MAKEFILE).Debug mocables
release-mocables:
$(MAKE) -f $(MAKEFILE).Release mocables
mocables: debug-mocables release-mocables
check: first
FORCE:
$(MAKEFILE).Debug: Makefile
$(MAKEFILE).Release: Makefile

View File

@ -0,0 +1,193 @@
/****************************************************************************
** Meta object code from reading C++ file 'mainwindow.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.4.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../../BControl/mainwindow.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'mainwindow.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.4.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_MainWindow_t {
QByteArrayData data[23];
char stringdata[171];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MainWindow_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MainWindow_t qt_meta_stringdata_MainWindow = {
{
QT_MOC_LITERAL(0, 0, 10), // "MainWindow"
QT_MOC_LITERAL(1, 11, 6), // "value0"
QT_MOC_LITERAL(2, 18, 0), // ""
QT_MOC_LITERAL(3, 19, 6), // "value1"
QT_MOC_LITERAL(4, 26, 6), // "value2"
QT_MOC_LITERAL(5, 33, 6), // "value3"
QT_MOC_LITERAL(6, 40, 6), // "value4"
QT_MOC_LITERAL(7, 47, 6), // "value5"
QT_MOC_LITERAL(8, 54, 6), // "value6"
QT_MOC_LITERAL(9, 61, 6), // "value7"
QT_MOC_LITERAL(10, 68, 6), // "value8"
QT_MOC_LITERAL(11, 75, 6), // "value9"
QT_MOC_LITERAL(12, 82, 7), // "value10"
QT_MOC_LITERAL(13, 90, 7), // "value11"
QT_MOC_LITERAL(14, 98, 7), // "value12"
QT_MOC_LITERAL(15, 106, 7), // "value13"
QT_MOC_LITERAL(16, 114, 7), // "value14"
QT_MOC_LITERAL(17, 122, 7), // "value15"
QT_MOC_LITERAL(18, 130, 7), // "value16"
QT_MOC_LITERAL(19, 138, 7), // "value17"
QT_MOC_LITERAL(20, 146, 7), // "value18"
QT_MOC_LITERAL(21, 154, 7), // "value19"
QT_MOC_LITERAL(22, 162, 8) // "readData"
},
"MainWindow\0value0\0\0value1\0value2\0"
"value3\0value4\0value5\0value6\0value7\0"
"value8\0value9\0value10\0value11\0value12\0"
"value13\0value14\0value15\0value16\0value17\0"
"value18\0value19\0readData"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MainWindow[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
21, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 1, 119, 2, 0x08 /* Private */,
3, 1, 122, 2, 0x08 /* Private */,
4, 1, 125, 2, 0x08 /* Private */,
5, 1, 128, 2, 0x08 /* Private */,
6, 1, 131, 2, 0x08 /* Private */,
7, 1, 134, 2, 0x08 /* Private */,
8, 1, 137, 2, 0x08 /* Private */,
9, 1, 140, 2, 0x08 /* Private */,
10, 0, 143, 2, 0x08 /* Private */,
11, 0, 144, 2, 0x08 /* Private */,
12, 0, 145, 2, 0x08 /* Private */,
13, 0, 146, 2, 0x08 /* Private */,
14, 0, 147, 2, 0x08 /* Private */,
15, 0, 148, 2, 0x08 /* Private */,
16, 0, 149, 2, 0x08 /* Private */,
17, 0, 150, 2, 0x08 /* Private */,
18, 0, 151, 2, 0x08 /* Private */,
19, 0, 152, 2, 0x08 /* Private */,
20, 0, 153, 2, 0x08 /* Private */,
21, 0, 154, 2, 0x08 /* Private */,
22, 0, 155, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MainWindow *_t = static_cast<MainWindow *>(_o);
switch (_id) {
case 0: _t->value0((*reinterpret_cast< int(*)>(_a[1]))); break;
case 1: _t->value1((*reinterpret_cast< int(*)>(_a[1]))); break;
case 2: _t->value2((*reinterpret_cast< int(*)>(_a[1]))); break;
case 3: _t->value3((*reinterpret_cast< int(*)>(_a[1]))); break;
case 4: _t->value4((*reinterpret_cast< int(*)>(_a[1]))); break;
case 5: _t->value5((*reinterpret_cast< int(*)>(_a[1]))); break;
case 6: _t->value6((*reinterpret_cast< int(*)>(_a[1]))); break;
case 7: _t->value7((*reinterpret_cast< int(*)>(_a[1]))); break;
case 8: _t->value8(); break;
case 9: _t->value9(); break;
case 10: _t->value10(); break;
case 11: _t->value11(); break;
case 12: _t->value12(); break;
case 13: _t->value13(); break;
case 14: _t->value14(); break;
case 15: _t->value15(); break;
case 16: _t->value16(); break;
case 17: _t->value17(); break;
case 18: _t->value18(); break;
case 19: _t->value19(); break;
case 20: _t->readData(); break;
default: ;
}
}
}
const QMetaObject MainWindow::staticMetaObject = {
{ &QMainWindow::staticMetaObject, qt_meta_stringdata_MainWindow.data,
qt_meta_data_MainWindow, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
};
const QMetaObject *MainWindow::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MainWindow::qt_metacast(const char *_clname)
{
if (!_clname) return Q_NULLPTR;
if (!strcmp(_clname, qt_meta_stringdata_MainWindow.stringdata))
return static_cast<void*>(const_cast< MainWindow*>(this));
return QMainWindow::qt_metacast(_clname);
}
int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QMainWindow::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 21)
qt_static_metacall(this, _c, _id, _a);
_id -= 21;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 21)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 21;
}
return _id;
}
QT_END_MOC_NAMESPACE

View File

@ -0,0 +1,472 @@
/********************************************************************************
** Form generated from reading UI file 'mainwindow.ui'
**
** Created by: Qt User Interface Compiler version 5.4.1
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_MAINWINDOW_H
#define UI_MAINWINDOW_H
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QFrame>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QLineEdit>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QRadioButton>
#include <QtWidgets/QSlider>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QTextBrowser>
#include <QtWidgets/QToolBar>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
#include "qcustomplot.h"
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QWidget *centralWidget;
QFrame *frame;
QWidget *horizontalLayoutWidget;
QHBoxLayout *horizontalLayout;
QVBoxLayout *verticalLayout_5;
QHBoxLayout *horizontalLayout_3;
QLabel *label;
QHBoxLayout *horizontalLayout_2;
QSlider *horizontalSlider;
QLineEdit *lineEdit;
QVBoxLayout *verticalLayout_6;
QHBoxLayout *horizontalLayout_4;
QLabel *label_2;
QHBoxLayout *horizontalLayout_5;
QSlider *horizontalSlider_2;
QLineEdit *lineEdit_2;
QWidget *verticalLayoutWidget;
QVBoxLayout *verticalLayout;
QHBoxLayout *horizontalLayout_9;
QLabel *label_4;
QSlider *horizontalSlider_6;
QLineEdit *lineEdit_8;
QHBoxLayout *horizontalLayout_6;
QSlider *horizontalSlider_3;
QLineEdit *lineEdit_3;
QHBoxLayout *horizontalLayout_10;
QLabel *label_5;
QSlider *horizontalSlider_7;
QLineEdit *lineEdit_7;
QHBoxLayout *horizontalLayout_8;
QSlider *horizontalSlider_5;
QLineEdit *lineEdit_5;
QHBoxLayout *horizontalLayout_11;
QLabel *label_3;
QSlider *horizontalSlider_8;
QLineEdit *lineEdit_6;
QHBoxLayout *horizontalLayout_7;
QSlider *horizontalSlider_4;
QLineEdit *lineEdit_4;
QTextBrowser *textBrowser;
QWidget *horizontalLayoutWidget_2;
QHBoxLayout *horizontalLayout_12;
QRadioButton *radioButton_3;
QRadioButton *radioButton;
QRadioButton *radioButton_2;
QCustomPlot *widget;
QLineEdit *lineEdit_9;
QMenuBar *menuBar;
QToolBar *mainToolBar;
QStatusBar *statusBar;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QStringLiteral("MainWindow"));
MainWindow->resize(1566, 549);
centralWidget = new QWidget(MainWindow);
centralWidget->setObjectName(QStringLiteral("centralWidget"));
frame = new QFrame(centralWidget);
frame->setObjectName(QStringLiteral("frame"));
frame->setGeometry(QRect(0, 0, 671, 451));
frame->setFrameShape(QFrame::StyledPanel);
frame->setFrameShadow(QFrame::Raised);
horizontalLayoutWidget = new QWidget(frame);
horizontalLayoutWidget->setObjectName(QStringLiteral("horizontalLayoutWidget"));
horizontalLayoutWidget->setGeometry(QRect(0, 0, 671, 121));
horizontalLayout = new QHBoxLayout(horizontalLayoutWidget);
horizontalLayout->setSpacing(6);
horizontalLayout->setContentsMargins(11, 11, 11, 11);
horizontalLayout->setObjectName(QStringLiteral("horizontalLayout"));
horizontalLayout->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout->setContentsMargins(0, 0, 0, 0);
verticalLayout_5 = new QVBoxLayout();
verticalLayout_5->setSpacing(6);
verticalLayout_5->setObjectName(QStringLiteral("verticalLayout_5"));
verticalLayout_5->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout_3 = new QHBoxLayout();
horizontalLayout_3->setSpacing(6);
horizontalLayout_3->setObjectName(QStringLiteral("horizontalLayout_3"));
horizontalLayout_3->setSizeConstraint(QLayout::SetMinAndMaxSize);
label = new QLabel(horizontalLayoutWidget);
label->setObjectName(QStringLiteral("label"));
label->setMinimumSize(QSize(0, 75));
label->setMaximumSize(QSize(16777215, 75));
label->setAlignment(Qt::AlignCenter);
horizontalLayout_3->addWidget(label);
verticalLayout_5->addLayout(horizontalLayout_3);
horizontalLayout_2 = new QHBoxLayout();
horizontalLayout_2->setSpacing(6);
horizontalLayout_2->setObjectName(QStringLiteral("horizontalLayout_2"));
horizontalLayout_2->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalSlider = new QSlider(horizontalLayoutWidget);
horizontalSlider->setObjectName(QStringLiteral("horizontalSlider"));
QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(horizontalSlider->sizePolicy().hasHeightForWidth());
horizontalSlider->setSizePolicy(sizePolicy);
horizontalSlider->setMaximumSize(QSize(16777215, 22));
horizontalSlider->setMaximum(510);
horizontalSlider->setValue(255);
horizontalSlider->setSliderPosition(255);
horizontalSlider->setOrientation(Qt::Horizontal);
horizontalLayout_2->addWidget(horizontalSlider);
lineEdit = new QLineEdit(horizontalLayoutWidget);
lineEdit->setObjectName(QStringLiteral("lineEdit"));
QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Minimum);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(lineEdit->sizePolicy().hasHeightForWidth());
lineEdit->setSizePolicy(sizePolicy1);
lineEdit->setMaximumSize(QSize(35, 35));
lineEdit->setMaxLength(4);
lineEdit->setClearButtonEnabled(false);
horizontalLayout_2->addWidget(lineEdit);
verticalLayout_5->addLayout(horizontalLayout_2);
horizontalLayout->addLayout(verticalLayout_5);
verticalLayout_6 = new QVBoxLayout();
verticalLayout_6->setSpacing(6);
verticalLayout_6->setObjectName(QStringLiteral("verticalLayout_6"));
verticalLayout_6->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout_4 = new QHBoxLayout();
horizontalLayout_4->setSpacing(6);
horizontalLayout_4->setObjectName(QStringLiteral("horizontalLayout_4"));
horizontalLayout_4->setSizeConstraint(QLayout::SetMinAndMaxSize);
label_2 = new QLabel(horizontalLayoutWidget);
label_2->setObjectName(QStringLiteral("label_2"));
label_2->setMinimumSize(QSize(0, 75));
label_2->setMaximumSize(QSize(16777215, 75));
label_2->setAlignment(Qt::AlignCenter);
horizontalLayout_4->addWidget(label_2);
verticalLayout_6->addLayout(horizontalLayout_4);
horizontalLayout_5 = new QHBoxLayout();
horizontalLayout_5->setSpacing(6);
horizontalLayout_5->setObjectName(QStringLiteral("horizontalLayout_5"));
horizontalLayout_5->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalSlider_2 = new QSlider(horizontalLayoutWidget);
horizontalSlider_2->setObjectName(QStringLiteral("horizontalSlider_2"));
sizePolicy.setHeightForWidth(horizontalSlider_2->sizePolicy().hasHeightForWidth());
horizontalSlider_2->setSizePolicy(sizePolicy);
horizontalSlider_2->setMaximumSize(QSize(16777215, 22));
horizontalSlider_2->setMaximum(510);
horizontalSlider_2->setValue(255);
horizontalSlider_2->setOrientation(Qt::Horizontal);
horizontalLayout_5->addWidget(horizontalSlider_2);
lineEdit_2 = new QLineEdit(horizontalLayoutWidget);
lineEdit_2->setObjectName(QStringLiteral("lineEdit_2"));
sizePolicy1.setHeightForWidth(lineEdit_2->sizePolicy().hasHeightForWidth());
lineEdit_2->setSizePolicy(sizePolicy1);
lineEdit_2->setMaximumSize(QSize(35, 35));
lineEdit_2->setMaxLength(4);
lineEdit_2->setClearButtonEnabled(false);
horizontalLayout_5->addWidget(lineEdit_2);
verticalLayout_6->addLayout(horizontalLayout_5);
horizontalLayout->addLayout(verticalLayout_6);
verticalLayoutWidget = new QWidget(frame);
verticalLayoutWidget->setObjectName(QStringLiteral("verticalLayoutWidget"));
verticalLayoutWidget->setGeometry(QRect(0, 120, 671, 251));
verticalLayout = new QVBoxLayout(verticalLayoutWidget);
verticalLayout->setSpacing(6);
verticalLayout->setContentsMargins(11, 11, 11, 11);
verticalLayout->setObjectName(QStringLiteral("verticalLayout"));
verticalLayout->setContentsMargins(0, 0, 0, 0);
horizontalLayout_9 = new QHBoxLayout();
horizontalLayout_9->setSpacing(6);
horizontalLayout_9->setObjectName(QStringLiteral("horizontalLayout_9"));
label_4 = new QLabel(verticalLayoutWidget);
label_4->setObjectName(QStringLiteral("label_4"));
QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Minimum);
sizePolicy2.setHorizontalStretch(0);
sizePolicy2.setVerticalStretch(0);
sizePolicy2.setHeightForWidth(label_4->sizePolicy().hasHeightForWidth());
label_4->setSizePolicy(sizePolicy2);
label_4->setMaximumSize(QSize(16777215, 35));
label_4->setAlignment(Qt::AlignCenter);
horizontalLayout_9->addWidget(label_4);
horizontalSlider_6 = new QSlider(verticalLayoutWidget);
horizontalSlider_6->setObjectName(QStringLiteral("horizontalSlider_6"));
horizontalSlider_6->setMaximumSize(QSize(50, 16777215));
horizontalSlider_6->setMaximum(99);
horizontalSlider_6->setOrientation(Qt::Horizontal);
horizontalLayout_9->addWidget(horizontalSlider_6);
lineEdit_8 = new QLineEdit(verticalLayoutWidget);
lineEdit_8->setObjectName(QStringLiteral("lineEdit_8"));
lineEdit_8->setMaximumSize(QSize(50, 16777215));
lineEdit_8->setMaxLength(3);
horizontalLayout_9->addWidget(lineEdit_8);
verticalLayout->addLayout(horizontalLayout_9);
horizontalLayout_6 = new QHBoxLayout();
horizontalLayout_6->setSpacing(6);
horizontalLayout_6->setObjectName(QStringLiteral("horizontalLayout_6"));
horizontalSlider_3 = new QSlider(verticalLayoutWidget);
horizontalSlider_3->setObjectName(QStringLiteral("horizontalSlider_3"));
horizontalSlider_3->setMaximum(10000000);
horizontalSlider_3->setOrientation(Qt::Horizontal);
horizontalSlider_3->setTickPosition(QSlider::NoTicks);
horizontalLayout_6->addWidget(horizontalSlider_3);
lineEdit_3 = new QLineEdit(verticalLayoutWidget);
lineEdit_3->setObjectName(QStringLiteral("lineEdit_3"));
QSizePolicy sizePolicy3(QSizePolicy::Minimum, QSizePolicy::Fixed);
sizePolicy3.setHorizontalStretch(0);
sizePolicy3.setVerticalStretch(0);
sizePolicy3.setHeightForWidth(lineEdit_3->sizePolicy().hasHeightForWidth());
lineEdit_3->setSizePolicy(sizePolicy3);
lineEdit_3->setMaximumSize(QSize(100, 35));
lineEdit_3->setMaxLength(20);
horizontalLayout_6->addWidget(lineEdit_3);
verticalLayout->addLayout(horizontalLayout_6);
horizontalLayout_10 = new QHBoxLayout();
horizontalLayout_10->setSpacing(6);
horizontalLayout_10->setObjectName(QStringLiteral("horizontalLayout_10"));
label_5 = new QLabel(verticalLayoutWidget);
label_5->setObjectName(QStringLiteral("label_5"));
sizePolicy2.setHeightForWidth(label_5->sizePolicy().hasHeightForWidth());
label_5->setSizePolicy(sizePolicy2);
label_5->setMaximumSize(QSize(16777215, 35));
label_5->setAlignment(Qt::AlignCenter);
horizontalLayout_10->addWidget(label_5);
horizontalSlider_7 = new QSlider(verticalLayoutWidget);
horizontalSlider_7->setObjectName(QStringLiteral("horizontalSlider_7"));
horizontalSlider_7->setMaximumSize(QSize(50, 16777215));
horizontalSlider_7->setMaximum(99);
horizontalSlider_7->setOrientation(Qt::Horizontal);
horizontalLayout_10->addWidget(horizontalSlider_7);
lineEdit_7 = new QLineEdit(verticalLayoutWidget);
lineEdit_7->setObjectName(QStringLiteral("lineEdit_7"));
lineEdit_7->setMaximumSize(QSize(50, 16777215));
lineEdit_7->setMaxLength(3);
horizontalLayout_10->addWidget(lineEdit_7);
verticalLayout->addLayout(horizontalLayout_10);
horizontalLayout_8 = new QHBoxLayout();
horizontalLayout_8->setSpacing(6);
horizontalLayout_8->setObjectName(QStringLiteral("horizontalLayout_8"));
horizontalSlider_5 = new QSlider(verticalLayoutWidget);
horizontalSlider_5->setObjectName(QStringLiteral("horizontalSlider_5"));
horizontalSlider_5->setMaximum(10000000);
horizontalSlider_5->setOrientation(Qt::Horizontal);
horizontalLayout_8->addWidget(horizontalSlider_5);
lineEdit_5 = new QLineEdit(verticalLayoutWidget);
lineEdit_5->setObjectName(QStringLiteral("lineEdit_5"));
sizePolicy3.setHeightForWidth(lineEdit_5->sizePolicy().hasHeightForWidth());
lineEdit_5->setSizePolicy(sizePolicy3);
lineEdit_5->setMaximumSize(QSize(100, 35));
lineEdit_5->setMaxLength(20);
horizontalLayout_8->addWidget(lineEdit_5);
verticalLayout->addLayout(horizontalLayout_8);
horizontalLayout_11 = new QHBoxLayout();
horizontalLayout_11->setSpacing(6);
horizontalLayout_11->setObjectName(QStringLiteral("horizontalLayout_11"));
label_3 = new QLabel(verticalLayoutWidget);
label_3->setObjectName(QStringLiteral("label_3"));
sizePolicy2.setHeightForWidth(label_3->sizePolicy().hasHeightForWidth());
label_3->setSizePolicy(sizePolicy2);
label_3->setMaximumSize(QSize(16777215, 35));
label_3->setAlignment(Qt::AlignCenter);
horizontalLayout_11->addWidget(label_3);
horizontalSlider_8 = new QSlider(verticalLayoutWidget);
horizontalSlider_8->setObjectName(QStringLiteral("horizontalSlider_8"));
horizontalSlider_8->setMaximumSize(QSize(50, 16777215));
horizontalSlider_8->setMaximum(99);
horizontalSlider_8->setOrientation(Qt::Horizontal);
horizontalLayout_11->addWidget(horizontalSlider_8);
lineEdit_6 = new QLineEdit(verticalLayoutWidget);
lineEdit_6->setObjectName(QStringLiteral("lineEdit_6"));
lineEdit_6->setMaximumSize(QSize(50, 16777215));
lineEdit_6->setMaxLength(3);
horizontalLayout_11->addWidget(lineEdit_6);
verticalLayout->addLayout(horizontalLayout_11);
horizontalLayout_7 = new QHBoxLayout();
horizontalLayout_7->setSpacing(6);
horizontalLayout_7->setObjectName(QStringLiteral("horizontalLayout_7"));
horizontalSlider_4 = new QSlider(verticalLayoutWidget);
horizontalSlider_4->setObjectName(QStringLiteral("horizontalSlider_4"));
horizontalSlider_4->setMaximum(10000000);
horizontalSlider_4->setOrientation(Qt::Horizontal);
horizontalLayout_7->addWidget(horizontalSlider_4);
lineEdit_4 = new QLineEdit(verticalLayoutWidget);
lineEdit_4->setObjectName(QStringLiteral("lineEdit_4"));
sizePolicy3.setHeightForWidth(lineEdit_4->sizePolicy().hasHeightForWidth());
lineEdit_4->setSizePolicy(sizePolicy3);
lineEdit_4->setMaximumSize(QSize(100, 35));
lineEdit_4->setMaxLength(20);
horizontalLayout_7->addWidget(lineEdit_4);
verticalLayout->addLayout(horizontalLayout_7);
textBrowser = new QTextBrowser(frame);
textBrowser->setObjectName(QStringLiteral("textBrowser"));
textBrowser->setGeometry(QRect(0, 410, 671, 31));
textBrowser->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
textBrowser->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
horizontalLayoutWidget_2 = new QWidget(frame);
horizontalLayoutWidget_2->setObjectName(QStringLiteral("horizontalLayoutWidget_2"));
horizontalLayoutWidget_2->setGeometry(QRect(0, 360, 671, 41));
horizontalLayout_12 = new QHBoxLayout(horizontalLayoutWidget_2);
horizontalLayout_12->setSpacing(6);
horizontalLayout_12->setContentsMargins(11, 11, 11, 11);
horizontalLayout_12->setObjectName(QStringLiteral("horizontalLayout_12"));
horizontalLayout_12->setContentsMargins(0, 0, 0, 0);
radioButton_3 = new QRadioButton(horizontalLayoutWidget_2);
radioButton_3->setObjectName(QStringLiteral("radioButton_3"));
radioButton_3->setChecked(true);
horizontalLayout_12->addWidget(radioButton_3);
radioButton = new QRadioButton(horizontalLayoutWidget_2);
radioButton->setObjectName(QStringLiteral("radioButton"));
radioButton->setContextMenuPolicy(Qt::PreventContextMenu);
radioButton->setChecked(false);
horizontalLayout_12->addWidget(radioButton);
radioButton_2 = new QRadioButton(horizontalLayoutWidget_2);
radioButton_2->setObjectName(QStringLiteral("radioButton_2"));
radioButton_2->setLayoutDirection(Qt::LeftToRight);
radioButton_2->setChecked(false);
horizontalLayout_12->addWidget(radioButton_2);
widget = new QCustomPlot(centralWidget);
widget->setObjectName(QStringLiteral("widget"));
widget->setGeometry(QRect(690, 30, 851, 471));
lineEdit_9 = new QLineEdit(centralWidget);
lineEdit_9->setObjectName(QStringLiteral("lineEdit_9"));
lineEdit_9->setGeometry(QRect(0, 450, 671, 31));
MainWindow->setCentralWidget(centralWidget);
menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QStringLiteral("menuBar"));
menuBar->setGeometry(QRect(0, 0, 1566, 26));
MainWindow->setMenuBar(menuBar);
mainToolBar = new QToolBar(MainWindow);
mainToolBar->setObjectName(QStringLiteral("mainToolBar"));
MainWindow->addToolBar(Qt::TopToolBarArea, mainToolBar);
statusBar = new QStatusBar(MainWindow);
statusBar->setObjectName(QStringLiteral("statusBar"));
MainWindow->setStatusBar(statusBar);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0));
label->setText(QApplication::translate("MainWindow", "PWM_Left", 0));
lineEdit->setText(QApplication::translate("MainWindow", "0", 0));
label_2->setText(QApplication::translate("MainWindow", "PWM_Right", 0));
lineEdit_2->setText(QApplication::translate("MainWindow", "0", 0));
label_4->setText(QApplication::translate("MainWindow", "KP", 0));
lineEdit_8->setText(QApplication::translate("MainWindow", "3", 0));
lineEdit_3->setText(QApplication::translate("MainWindow", "3.0", 0));
label_5->setText(QApplication::translate("MainWindow", "KI", 0));
lineEdit_7->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_5->setText(QApplication::translate("MainWindow", "0", 0));
label_3->setText(QApplication::translate("MainWindow", "KD", 0));
lineEdit_6->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_4->setText(QApplication::translate("MainWindow", "0", 0));
radioButton_3->setText(QApplication::translate("MainWindow", "cmd Mode", 0));
radioButton->setText(QApplication::translate("MainWindow", "PWM/ PID mode", 0));
radioButton_2->setText(QApplication::translate("MainWindow", "Key Mode", 0));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINWINDOW_H

View File

@ -0,0 +1,27 @@
#-------------------------------------------------
#
# Project created by QtCreator 2016-06-20T21:38:18
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets printsupport
TARGET = BControl
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp \
IMUfilter.cpp \
qcustomplot.cpp
HEADERS += mainwindow.h \
macrodefs.h \
IMUfilter.h \
qcustomplot.h
FORMS += mainwindow.ui
QT += serialport

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2017-04-29T22:18:26. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{071d3636-4530-4e79-9e5c-eb70a03bf55f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">B</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">B2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/Qt/temp/B/B.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">B.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2016-09-04T21:43:37. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{5d2c2528-3a67-4b34-9757-af8305407b5f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BControl</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BControl/BControl.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BControl.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2016-08-24T10:24:50. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{e1fc7551-0b1d-48c2-8cf8-e6d502bbac8d}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-BControl-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">BControl</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/BControl/BControl.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">BControl.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

View File

@ -0,0 +1,247 @@
/**
* @author Aaron Berk
*
* @section LICENSE
*
* Copyright (c) 2010 ARM Limited
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* @section DESCRIPTION
*
* IMU orientation filter developed by Sebastian Madgwick.
*
* Find more details about his paper here:
*
* http://code.google.com/p/imumargalgorithm30042010sohm/
*/
/**
* Includes
*/
#include "IMUfilter.h"
IMUfilter::IMUfilter(double rate, double gyroscopeMeasurementError){
firstUpdate = 0;
//Quaternion orientation of earth frame relative to auxiliary frame.
AEq_1 = 1;
AEq_2 = 0;
AEq_3 = 0;
AEq_4 = 0;
//Estimated orientation quaternion elements with initial conditions.
SEq_1 = 1;
SEq_2 = 0;
SEq_3 = 0;
SEq_4 = 0;
//Sampling period (typical value is ~0.1s).
deltat = rate;
//Gyroscope measurement error (in degrees per second).
gyroMeasError = gyroscopeMeasurementError;
//Compute beta.
beta = sqrt(3.0 / 4.0) * (PI * (gyroMeasError / 180.0));
}
void IMUfilter::updateFilter(double w_x, double w_y, double w_z, double a_x, double a_y, double a_z) {
//Local system variables.
//Vector norm.
double norm;
//Quaternion rate from gyroscope elements.
double SEqDot_omega_1;
double SEqDot_omega_2;
double SEqDot_omega_3;
double SEqDot_omega_4;
//Objective function elements.
double f_1;
double f_2;
double f_3;
//Objective function Jacobian elements.
double J_11or24;
double J_12or23;
double J_13or22;
double J_14or21;
double J_32;
double J_33;
//Objective function gradient elements.
double nablaf_1;
double nablaf_2;
double nablaf_3;
double nablaf_4;
//Auxiliary variables to avoid reapeated calcualtions.
double halfSEq_1 = 0.5 * SEq_1;
double halfSEq_2 = 0.5 * SEq_2;
double halfSEq_3 = 0.5 * SEq_3;
double halfSEq_4 = 0.5 * SEq_4;
double twoSEq_1 = 2.0 * SEq_1;
double twoSEq_2 = 2.0 * SEq_2;
double twoSEq_3 = 2.0 * SEq_3;
//Compute the quaternion rate measured by gyroscopes.
SEqDot_omega_1 = -halfSEq_2 * w_x - halfSEq_3 * w_y - halfSEq_4 * w_z;
SEqDot_omega_2 = halfSEq_1 * w_x + halfSEq_3 * w_z - halfSEq_4 * w_y;
SEqDot_omega_3 = halfSEq_1 * w_y - halfSEq_2 * w_z + halfSEq_4 * w_x;
SEqDot_omega_4 = halfSEq_1 * w_z + halfSEq_2 * w_y - halfSEq_3 * w_x;
//Normalise the accelerometer measurement.
norm = sqrt(a_x * a_x + a_y * a_y + a_z * a_z);
a_x /= norm;
a_y /= norm;
a_z /= norm;
//Compute the objective function and Jacobian.
f_1 = twoSEq_2 * SEq_4 - twoSEq_1 * SEq_3 - a_x;
f_2 = twoSEq_1 * SEq_2 + twoSEq_3 * SEq_4 - a_y;
f_3 = 1.0 - twoSEq_2 * SEq_2 - twoSEq_3 * SEq_3 - a_z;
//J_11 negated in matrix multiplication.
J_11or24 = twoSEq_3;
J_12or23 = 2 * SEq_4;
//J_12 negated in matrix multiplication
J_13or22 = twoSEq_1;
J_14or21 = twoSEq_2;
//Negated in matrix multiplication.
J_32 = 2 * J_14or21;
//Negated in matrix multiplication.
J_33 = 2 * J_11or24;
//Compute the gradient (matrix multiplication).
nablaf_1 = J_14or21 * f_2 - J_11or24 * f_1;
nablaf_2 = J_12or23 * f_1 + J_13or22 * f_2 - J_32 * f_3;
nablaf_3 = J_12or23 * f_2 - J_33 * f_3 - J_13or22 * f_1;
nablaf_4 = J_14or21 * f_1 + J_11or24 * f_2;
//Normalise the gradient.
norm = sqrt(nablaf_1 * nablaf_1 + nablaf_2 * nablaf_2 + nablaf_3 * nablaf_3 + nablaf_4 * nablaf_4);
nablaf_1 /= norm;
nablaf_2 /= norm;
nablaf_3 /= norm;
nablaf_4 /= norm;
//Compute then integrate the estimated quaternion rate.
SEq_1 += (SEqDot_omega_1 - (beta * nablaf_1)) * deltat;
SEq_2 += (SEqDot_omega_2 - (beta * nablaf_2)) * deltat;
SEq_3 += (SEqDot_omega_3 - (beta * nablaf_3)) * deltat;
SEq_4 += (SEqDot_omega_4 - (beta * nablaf_4)) * deltat;
//Normalise quaternion
norm = sqrt(SEq_1 * SEq_1 + SEq_2 * SEq_2 + SEq_3 * SEq_3 + SEq_4 * SEq_4);
SEq_1 /= norm;
SEq_2 /= norm;
SEq_3 /= norm;
SEq_4 /= norm;
if (firstUpdate == 0) {
//Store orientation of auxiliary frame.
AEq_1 = SEq_1;
AEq_2 = SEq_2;
AEq_3 = SEq_3;
AEq_4 = SEq_4;
firstUpdate = 1;
}
}
void IMUfilter::computeEuler(void){
//Quaternion describing orientation of sensor relative to earth.
double ESq_1, ESq_2, ESq_3, ESq_4;
//Quaternion describing orientation of sensor relative to auxiliary frame.
double ASq_1, ASq_2, ASq_3, ASq_4;
//Compute the quaternion conjugate.
ESq_1 = SEq_1;
ESq_2 = -SEq_2;
ESq_3 = -SEq_3;
ESq_4 = -SEq_4;
//Compute the quaternion product.
ASq_1 = ESq_1 * AEq_1 - ESq_2 * AEq_2 - ESq_3 * AEq_3 - ESq_4 * AEq_4;
ASq_2 = ESq_1 * AEq_2 + ESq_2 * AEq_1 + ESq_3 * AEq_4 - ESq_4 * AEq_3;
ASq_3 = ESq_1 * AEq_3 - ESq_2 * AEq_4 + ESq_3 * AEq_1 + ESq_4 * AEq_2;
ASq_4 = ESq_1 * AEq_4 + ESq_2 * AEq_3 - ESq_3 * AEq_2 + ESq_4 * AEq_1;
//Compute the Euler angles from the quaternion.
phi = atan2(2 * ASq_3 * ASq_4 - 2 * ASq_1 * ASq_2, 2 * ASq_1 * ASq_1 + 2 * ASq_4 * ASq_4 - 1);
theta = asin(2 * ASq_2 * ASq_3 - 2 * ASq_1 * ASq_3);
psi = atan2(2 * ASq_2 * ASq_3 - 2 * ASq_1 * ASq_4, 2 * ASq_1 * ASq_1 + 2 * ASq_2 * ASq_2 - 1);
}
double IMUfilter::getRoll(void){
return phi;
}
double IMUfilter::getPitch(void){
return theta;
}
double IMUfilter::getYaw(void){
return psi;
}
// Degrees
double IMUfilter::getRollInDegrees(void){
return toDegrees(phi);
}
double IMUfilter::getPitchInDegrees(void){
return toDegrees(theta);
}
double IMUfilter::getYawInDegrees(void){
return toDegrees(psi);
}
void IMUfilter::reset(void) {
firstUpdate = 0;
//Quaternion orientation of earth frame relative to auxiliary frame.
AEq_1 = 1;
AEq_2 = 0;
AEq_3 = 0;
AEq_4 = 0;
//Estimated orientation quaternion elements with initial conditions.
SEq_1 = 1;
SEq_2 = 0;
SEq_3 = 0;
SEq_4 = 0;
}

View File

@ -0,0 +1,166 @@
/**
* @author Aaron Berk
*
* @section LICENSE
*
* Copyright (c) 2010 ARM Limited
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* @section DESCRIPTION
*
* IMU orientation filter developed by Sebastian Madgwick.
*
* Find more details about his paper here:
*
* http://code.google.com/p/imumargalgorithm30042010sohm/
*/
#ifndef IMU_FILTER_H
#define IMU_FILTER_H
/**
* Includes
*/
#include <math.h>
#include "macrodefs.h"
/**
* Defines
*/
#define PI 3.1415926536
/**
* IMU orientation filter.
*/
class IMUfilter {
public:
/**
* Constructor.
*
* Initializes filter variables.
*
* @param rate The rate at which the filter should be updated.
* @param gyroscopeMeasurementError The error of the gyroscope in degrees
* per second. This used to calculate a tuning constant for the filter.
* Try changing this value if there are jittery readings, or they change
* too much or too fast when rotating the IMU.
*/
IMUfilter(double rate, double gyroscopeMeasurementError);
/**
* Update the filter variables.
*
* @param w_x X-axis gyroscope reading in rad/s.
* @param w_y Y-axis gyroscope reading in rad/s.
* @param w_z Z-axis gyroscope reading in rad/s.
* @param a_x X-axis accelerometer reading in m/s/s.
* @param a_y Y-axis accelerometer reading in m/s/s.
* @param a_z Z-axis accelerometer reading in m/s/s.
*/
void updateFilter(double w_x, double w_y, double w_z,
double a_x, double a_y, double a_z);
/**
* Compute the Euler angles based on the current filter data.
*/
void computeEuler(void);
/**
* Get the current roll.
*
* @return The current roll angle in radians.
*/
double getRoll(void);
/**
* Get the current roll.
*
* @return The current roll angle in degrees.
*/
double getRollInDegrees(void);
/**
* Get the current pitch.
*
* @return The current pitch angle in radians.
*/
double getPitch(void);
/**
* Get the current pitch.
*
* @return The current pitch angle in degrees.
*/
double getPitchInDegrees(void);
/**
* Get the current yaw.
*
* @return The current yaw angle in radians.
*/
double getYaw(void);
/**
* Get the current yaw.
*
* @return The current yaw angle in degrees.
*/
double getYawInDegrees(void);
/**
* Reset the filter.
*/
void reset(void);
private:
int firstUpdate;
//Quaternion orientation of earth frame relative to auxiliary frame.
double AEq_1;
double AEq_2;
double AEq_3;
double AEq_4;
//Estimated orientation quaternion elements with initial conditions.
double SEq_1;
double SEq_2;
double SEq_3;
double SEq_4;
//Sampling period
double deltat;
//Gyroscope measurement error (in degrees per second).
double gyroMeasError;
//Compute beta (filter tuning constant..
double beta;
double phi;
double theta;
double psi;
};
#endif /* IMU_FILTER_H */

View File

@ -0,0 +1,30 @@
#include <QElapsedTimer>
#include "bs.h"
BS::BS():QThread(),MainWindow()
{
}
BS::~BS()
{
}
void BS::run()
{
f.start();
//QByteArray baa = MainWindow::getArray();
//cout<<baa.toStdString();
QThread::currentThread()->yieldCurrentThread();
while(flag){
if(serial->isReadable())
{
QThread::currentThread()->sleep(50);
}
}
flag=1;
}

View File

@ -0,0 +1,21 @@
#ifndef BS_H
#define BS_H
#include <QDebug>
#include <iostream>
#include <mainwindow.h>
#include <QtMath>
using namespace std;
//class MainWindow;
class BS : public QThread
{
public:
static bool flag;
BS();
~BS();
// friend void MainWindow::newData(double x,double y);
protected:
void run();
};
#endif // BS_H

View File

@ -0,0 +1,56 @@
#ifndef MACRODEFS_H
#define MACRODEFS_H
// CAN Frame Micro Defines
#define GYRO_X_Y 0x00000066
#define GYRO_Z_Temp 0x00000067
#define ACCEL_X_Y_Z 0x00000069
#define GYRO_FULL_32_BIT ((unsigned int)(0xFFFFFFFF))
#define ACCEL_FULL_16_BIT ((unsigned int)(0xFFFF))
#define GYRO_RATE_LSB 0.001
#define ACCEL_RATE_LSB 0.0001
#define TEMP_IMU_LSB 1
/* Blow macros are imported from http://mbed.org/cookbook/IMU and may not be used
*/
//Gravity at Earth's surface in m/s/s
#define g0 9.812865328
//Number of samples to average.
#define SAMPLES 4
//Number of samples to be averaged for a null bias calculation
//during calibration.
#define CALIBRATION_SAMPLES 128
//Convert from radians to degrees.
#define toDegrees(x) (x * 57.2957795)
//Convert from degrees to radians.
#define toRadians(x) (x * 0.01745329252)
//ITG-3200 sensitivity is 14.375 LSB/(degrees/sec).
#define GYROSCOPE_GAIN (1 / 14.375)
//Full scale resolution on the ADXL345 is 4mg/LSB.
#define ACCELEROMETER_GAIN (0.004 * g0)
//Sampling gyroscope at 200Hz.
#define GYRO_RATE 0.005
//Sampling accelerometer at 200Hz.
#define ACC_RATE 0.005
//Updating filter at 1/FILTER_RATE Hz.
#define FILTER_RATE 0.01
// Timer Interval, namely 1000*FILTER_RATE
#define TIMER_INTERVAL 10
// Sample Frames for Calibration
#define SAMPLE_FRAMES_FOR_CALIBRATION 10000
#endif // MACRODEFS_H

View File

@ -0,0 +1,20 @@
//#include "mainwindow.h"
#include <QApplication>
#include "bs.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
//BS t;
w.show();
int c=a.exec();
//qDebug()<<"close";
w.serial->disconnect();
w.serial->close();
//QThread::currentThread()->usleep(1);
//QThread::currentThread()->msleep(10);
return c;
}

View File

@ -0,0 +1,315 @@
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "QKeyEvent"
#include "QDebug"
#include <QCoreApplication>
#include <QtCore/QCoreApplication>
//#include "bs.h"
int KP[44];double kp=3,ki=0,kd=0;int kp1=3,ki1=0,kd1=0;double pkp=0, pki = 0,pkd = 0;int pwm_left,pwm_right;
QString cmd("");
int a=0;
long t;
double xa=0,ya=0,za=0;
double xg=0,yg=0,zg=0;
double xxa,yya,zza;double kp2 = 10;
double ki2 = 0;
double kd2 = 0;
double g1;
double ra=0,rollg=0;const float alpha = 0.5;
QElapsedTimer f;
IMUfilter *imufilter;
QByteArray ba("");
int outMax = 255;
int outMin = -255;
float lastInput = 0;
double ITerm =0;
double Setpoint = 0;
double gg=0;
char blankString[] = QT_TRANSLATE_NOOP("SettingsDialog", "N/A");
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
serial = new QSerialPort(this);
QSerialPortInfo info=QSerialPortInfo::availablePorts().at(0);
// Check info of the port
qDebug() << "Name : " << info.portName();
/*qDebug() << "Manufacturer: " << info.manufacturer(); //if showing manufacturer, means Qstring &name is good
qDebug() << "Busy: " << info.isBusy() << endl;
*/// Initialize Serial
serial->setPortName("COM8");
//serial->open(QIODevice::ReadWrite);
serial->setBaudRate(QSerialPort::Baud115200);
serial->setDataBits(QSerialPort::Data8);
serial->setParity(QSerialPort::NoParity);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
if(serial->open(QIODevice::ReadWrite));
/*QString description;
QString manufacturer;
QString serialNumber;int i=0;
/*foreach (const QSerialPortInfo &info, QSerialPortInfo::availablePorts()) {
cout<<i++;
description = info.description();
manufacturer = info.manufacturer();
serialNumber = info.serialNumber();
qDebug() << info.portName()<<" "
<< (!description.isEmpty() ? description : blankString)<<" "
<< (!manufacturer.isEmpty() ? manufacturer : blankString)<<" "
<< (!serialNumber.isEmpty() ? serialNumber : blankString)<<" "
<< info.systemLocation()<<" "
<< (info.vendorIdentifier() ? QString::number(info.vendorIdentifier(), 16) : blankString)<<" "
<< (info.productIdentifier() ? QString::number(info.productIdentifier(), 16) : blankString)<<info.isBusy()<<" \n ";}*/
timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(readData()));
timer->start(10);
// create graph and assign data to it:
ui->widget_1->legend->setVisible(true);
//ui->widget->addGraph()->setName("AccelAng");
ui->widget_1->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
//ui->widget->axisRect()->setRangeZoom(Qt::Horizontal | Qt::Vertical);
ui->widget_1->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget_1->axisRect()->setRangeZoomFactor(1.5);
ui->widget_2->legend->setVisible(true);
//ui->widget->addGraph()->setName("AccelAng");
ui->widget_2->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
//ui->widge->axisRect()->setRangeZoom(Qt::Horizontal | Qt::Vertical);
ui->widget_2->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget_2->axisRect()->setRangeZoomFactor(1.5);
ui->widget_3->legend->setVisible(true);
//ui->widget->addGraph()->setName("AccelAng");
ui->widget_3->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
//ui->widge->axisRect()->setRangeZoom(Qt::Horizontal | Qt::Vertical);
ui->widget_3->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget_3->axisRect()->setRangeZoomFactor(1.5);
ui->widget_4->legend->setVisible(true);
//ui->widge->addGraph()->setName("AccelAng");
ui->widget_4->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
//ui->widget->axisRect()->setRangeZoom(Qt::Horizontal | Qt::Vertical);
ui->widget_4->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget_4->axisRect()->setRangeZoomFactor(1.5);
ui->widget_5->legend->setVisible(true);
//ui->widget->addGraph()->setName("AccelAng");
ui->widget_5->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom);
//ui->widget->axisRect()->setRangeZoom(Qt::Horizontal | Qt::Vertical);
ui->widget_5->axisRect()->setRangeZoom(Qt::Horizontal);
ui->widget_5->axisRect()->setRangeZoomFactor(1.5);
ui->widget_1->addGraph()->setName("AccelAngle");
ui->widget_2->addGraph()->setName("GyroAngle");
ui->widget_3->addGraph()->setName("CompFilterAngle");
ui->widget_4->addGraph()->setName("KalmanFilterAngle");
ui->widget_5->addGraph()->setName("AccelAngle");
ui->widget_5->addGraph()->setName("GyroAngle");
ui->widget_5->addGraph()->setName("CompFilterAngle");
ui->widget_5->addGraph()->setName("KalmanFilterAngle");
//ui->widget->addGraph()->setName("Displacement");
//ui->widget->graph(0)->setData(x, y);
ui->widget_1->xAxis->setLabel("Time(s)->");
ui->widget_1->yAxis->setLabel("Angle(°)");
ui->widget_2->xAxis->setLabel("Time(s)->");
ui->widget_2->yAxis->setLabel("Angle(°)");
ui->widget_3->xAxis->setLabel("Time(s)->");
ui->widget_3->yAxis->setLabel("Angle(°)");
ui->widget_4->xAxis->setLabel("Time(s)->");
ui->widget_4->yAxis->setLabel("Angle(°)");
ui->widget_5->xAxis->setLabel("Time(s)->");
ui->widget_5->yAxis->setLabel("Angle(°)");
ui->widget_1->graph(0)->setPen(QPen(Qt::red));
ui->widget_2->graph(0)->setPen(QPen(Qt::green));
ui->widget_3->graph(0)->setPen(QPen(Qt::blue));
ui->widget_4->graph(0)->setPen(QPen(Qt::black));
ui->widget_5->graph(0)->setPen(QPen(Qt::red));
ui->widget_5->graph(1)->setPen(QPen(Qt::green));
ui->widget_5->graph(2)->setPen(QPen(Qt::blue));
ui->widget_5->graph(3)->setPen(QPen(Qt::black));
//ui->widget->graph(4)->setPen(QPen(Qt::cyan));
ui->widget_1->xAxis->setRange(0,20);
ui->widget_1->yAxis->setRange(20,-20);
ui->widget_2->xAxis->setRange(0,20);
ui->widget_2->yAxis->setRange(20,-20);
ui->widget_3->xAxis->setRange(0,20);
ui->widget_3->yAxis->setRange(20,-20);
ui->widget_4->xAxis->setRange(0,20);
ui->widget_4->yAxis->setRange(20,-20);
ui->widget_5->xAxis->setRange(0,20);
ui->widget_5->yAxis->setRange(20,-20);
//imufilter = new IMUfilter(0.015, 20);
}
MainWindow::~MainWindow()
{
timer->stop();
QFile file1("C:/Users/yikes/Desktop/graph1.jpg");
ui->widget_1->saveJpg( "C:/Users/yikes/Desktop/graph1.jpg", 0, 0, 1.0, -1 );
QFile file2("C:/Users/yikes/Desktop/graph2.jpg");
ui->widget_2->saveJpg( "C:/Users/yikes/Desktop/graph2.jpg", 0, 0, 1.0, -1 );
QFile file3("C:/Users/yikes/Desktop/graph3.jpg");
ui->widget_3->saveJpg( "C:/Users/yikes/Desktop/graph3.jpg", 0, 0, 1.0, -1 );
QFile file4("C:/Users/yikes/Desktop/graph4.jpg");
ui->widget_4->saveJpg( "C:/Users/yikes/Desktop/graph4.jpg", 0, 0, 1.0, -1 );
QFile file5("C:/Users/yikes/Desktop/graph5.jpg");
ui->widget_5->saveJpg( "C:/Users/yikes/Desktop/graph5.jpg", 0, 0, 1.0, -1 );
delete ui;
}
void MainWindow::newData_1(double w,double t)
{
ui->widget_1->graph(0)->addData(t,w);
ui->widget_5->graph(0)->addData(t,w);
ui->widget_1->replot();
ui->widget_5->replot();
}
void MainWindow::newData_2(double w,double t)
{
ui->widget_2->graph(0)->addData(t,w);
ui->widget_5->graph(1)->addData(t,w);
ui->widget_2->replot();
ui->widget_5->replot();
}
void MainWindow::newData_3(double w,double t)
{
ui->widget_3->graph(0)->addData(t,w);
ui->widget_5->graph(2)->addData(t,w);
ui->widget_3->replot();
ui->widget_5->replot();
}
void MainWindow::newData_4(double w,double t)
{
ui->widget_4->graph(0)->addData(t,w);
ui->widget_5->graph(3)->addData(t,w);
ui->widget_4->replot();
ui->widget_5->replot();
}
double zoff,xoff;volatile int ch=0;int aa=0;
double compAngleY=0;double gyroYangle;
void MainWindow::readData()
{
//timer->stop();
if(ch==1)return;
x:;
if(!(serial->bytesAvailable()>25))return;
ch=1;
double g=0,xs,ys,zs;
int i,j,k,l,m,n,o;
//QThread::currentThread()->sleep(10);
//while(serial->bytesAvailable()>2){
QThread::currentThread()->msleep(1);
char c[1];
while(1)
{
if(!(serial->bytesAvailable())){ch=0;return;}
serial->read(c,1);
if(c[0]=='a')
{
if(!(serial->bytesAvailable()>25))
QThread::currentThread()->msleep(1);
break;
}
}
QByteArray data = serial->readLine();
qDebug()<<data;
//if(data[0]!='a')goto x;
i = data.indexOf(',');
j = data.indexOf(',',i+1);
k = data.indexOf(',',j+1);
l = data.indexOf(',',k+1);
//n = data.indexOf(',',l+1);
//o = data.indexOf(',',n+1);
//if(k==-1)goto x;
//if(j==-1)goto x;
//if(i==-1)goto x;
//m = data.indexOf(',',l+1);
//j = data.indexOf(' ',i+1);
//k = data.indexOf(' ',j+1);
//l = data.indexOf(' ',k+1);
m = data.indexOf('\n');
if(m==-1){ch=0;return;}
// qDebug()<<i<<j<<k<<l<<m;
//QThread::currentThread()->sleep(1);
xs=data.mid(0,i-1).toDouble();
xa=data.mid(i+1,j-i-1).toDouble();
//QThread::currentThread()->sleep(1);
ya=data.mid(j+1,k-j-1).toDouble();
za=data.mid(k+1,l-k-1).toDouble();
//ys=data.mid(l+1,n-l-1).toDouble();
//g= data.mid(n+1,o-n-1).toDouble();
//double pitch = atan(-xs / sqrt(xa * xa + ya * ya)) * 57.2958;
//compAngleY = 0.93 * (compAngleY + za * 0.015) + 0.07 * pitch;
/*imufilter->updateFilter(za,ys,g,xs*10.0,xa*10.0,ya*10.0);
imufilter->computeEuler();
double temp = imufilter->getPitch()* 57.2958;;
*/
//gyroYangle += za * 0.015;
//if (gyroYangle < -180 || gyroYangle > 180)
// gyroYangle = compAngleY;
//zs=data.mid(l+1,m-l-1).toDouble();
/*if(data[1]=='1')
{
xa=data.mid(i+1,j-i-1).toDouble();
ya=data.mid(j+1,k-j-1).toDouble();
za=data.mid(k+1,data.length()-k-2).toDouble();
}
else
{
xg=data.mid(i+1,j-i-1).toDouble();
yg=data.mid(j+1,k-j-1).toDouble();
zg=data.mid(k+1,data.length()-k-1).toDouble();
}
rollg+=yg;
xxa = xa * alpha + (xxa * (1.0 - alpha));
zza = za * alpha + (zza * (1.0 - alpha));
ra= 0.98* (rollg) + ((qAtan2(-zza, xxa)*180.0))/(3.141592653);
//qDebug()<<f.elapsed();
int zzz = Compute(ra);*/
//qDebug()<<data;
//qDebug()<<(k+1)<<(l-k-1);
//if(t>40000){gg+=g*(t-f.elapsed())/1000;}
//xs=atan2(za,-ya)*57.2958;
//ra= 0.96* (ra+gg) + 0.04*xs;
//double angle = atan2(-za,xa);
//qDebug()<<i<<j<<k<<l<<m;
qDebug()<<xs<<xa<<ya<<za<<f.elapsed()<<endl;
//if(f.elapsed()>40000)
if(aa==0) f.start();aa=1;
t=f.elapsed();
newData_1(xs,t/1000.0);
newData_2(xa,t/1000.0);
newData_3(ya,t/1000.0);
newData_4(za,t/1000.0);
if(serial->bytesAvailable()>25) goto x;
else ch=0;
}
/*void MainWindow::mouseWheel()
{
//ui->widget->replot();
}
*/

View File

@ -0,0 +1,38 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <iostream>
#include <QThread>
#include <QtMath>
#include <QtSerialPort/QSerialPort>
#include <QtSerialPort/QSerialPortInfo>
#include "IMUFilter.h"
using namespace std;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
QSerialPort *serial;
QTimer *timer;
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
protected:
void run();
void newData_1(double w, double t);
void newData_2(double w, double t);
void newData_3(double w, double t);
void newData_4(double w, double t);
private slots:
void readData();
//void mouseWheel();
};
#endif // MAINWINDOW_H

View File

@ -0,0 +1,99 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1703</width>
<height>967</height>
</rect>
</property>
<property name="windowTitle">
<string>MainWindow</string>
</property>
<widget class="QWidget" name="centralWidget">
<widget class="QCustomPlot" name="widget_2" native="true">
<property name="geometry">
<rect>
<x>850</x>
<y>0</y>
<width>851</width>
<height>271</height>
</rect>
</property>
</widget>
<widget class="QCustomPlot" name="widget_1" native="true">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>851</width>
<height>271</height>
</rect>
</property>
</widget>
<widget class="QCustomPlot" name="widget_4" native="true">
<property name="geometry">
<rect>
<x>850</x>
<y>270</y>
<width>851</width>
<height>281</height>
</rect>
</property>
</widget>
<widget class="QCustomPlot" name="widget_3" native="true">
<property name="geometry">
<rect>
<x>0</x>
<y>270</y>
<width>851</width>
<height>281</height>
</rect>
</property>
</widget>
<widget class="QCustomPlot" name="widget_5" native="true">
<property name="geometry">
<rect>
<x>0</x>
<y>550</y>
<width>851</width>
<height>311</height>
</rect>
</property>
</widget>
</widget>
<widget class="QMenuBar" name="menuBar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1703</width>
<height>26</height>
</rect>
</property>
</widget>
<widget class="QToolBar" name="mainToolBar">
<attribute name="toolBarArea">
<enum>TopToolBarArea</enum>
</attribute>
<attribute name="toolBarBreak">
<bool>false</bool>
</attribute>
</widget>
<widget class="QStatusBar" name="statusBar"/>
</widget>
<layoutdefault spacing="6" margin="11"/>
<customwidgets>
<customwidget>
<class>QCustomPlot</class>
<extends>QWidget</extends>
<header>../../qcustomplot.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,346 @@
#############################################################################
# Makefile for building: BControl
# Generated by qmake (3.0) (Qt 5.4.1)
# Project: ..\BControl\BControl.pro
# Template: app
# Command: C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe -spec win32-g++ CONFIG+=debug -o Makefile ..\BControl\BControl.pro
#############################################################################
MAKEFILE = Makefile
first: debug
install: debug-install
uninstall: debug-uninstall
QMAKE = C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe
DEL_FILE = del
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
COPY = copy /y
COPY_FILE = $(COPY)
COPY_DIR = xcopy /s /q /y /i
INSTALL_FILE = $(COPY_FILE)
INSTALL_PROGRAM = $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = del
SYMLINK = copy /y
DEL_DIR = rmdir
MOVE = move
SUBTARGETS = \
debug \
release
debug: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-all: FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
release: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-all: FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall
Makefile: ../BControl/BControl.pro C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qdevice.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/device_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/common/shell-win32.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qconfig.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bootstrap_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_clucene_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designercomponents_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_platformsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmldevtools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickparticles_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_functions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resolve_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/rtti.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/precompile_header.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/warn_on.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resources.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/moc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/opengl.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/uic.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/windows.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/testcase_targets.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exceptions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/yacc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/lex.prf \
../BControl/BControl.pro \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/qtmaind.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Cored.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5PrintSupport.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Widgets.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Gui.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl
$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\BControl\BControl.pro
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qdevice.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\device_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\common\shell-win32.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qconfig.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bootstrap_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_clucene_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designercomponents_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_platformsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmldevtools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qtmultimediaquicktools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickparticles_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_functions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\win32-g++\qmake.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resolve_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\rtti.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\precompile_header.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\warn_on.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resources.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\moc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\opengl.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\uic.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\windows.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\testcase_targets.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exceptions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\yacc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\lex.prf:
..\BControl\BControl.pro:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/qtmaind.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Cored.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5PrintSupport.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Widgets.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Gui.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\BControl\BControl.pro
qmake_all: FORCE
make_first: debug-make_first release-make_first FORCE
all: debug-all release-all FORCE
clean: debug-clean release-clean FORCE
distclean: debug-distclean release-distclean FORCE
-$(DEL_FILE) Makefile
debug-mocclean:
$(MAKE) -f $(MAKEFILE).Debug mocclean
release-mocclean:
$(MAKE) -f $(MAKEFILE).Release mocclean
mocclean: debug-mocclean release-mocclean
debug-mocables:
$(MAKE) -f $(MAKEFILE).Debug mocables
release-mocables:
$(MAKE) -f $(MAKEFILE).Release mocables
mocables: debug-mocables release-mocables
check: first
FORCE:
$(MAKEFILE).Debug: Makefile
$(MAKEFILE).Release: Makefile

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,193 @@
/****************************************************************************
** Meta object code from reading C++ file 'mainwindow.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.4.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../../BControl/mainwindow.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'mainwindow.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.4.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_MainWindow_t {
QByteArrayData data[23];
char stringdata[171];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MainWindow_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MainWindow_t qt_meta_stringdata_MainWindow = {
{
QT_MOC_LITERAL(0, 0, 10), // "MainWindow"
QT_MOC_LITERAL(1, 11, 6), // "value0"
QT_MOC_LITERAL(2, 18, 0), // ""
QT_MOC_LITERAL(3, 19, 6), // "value1"
QT_MOC_LITERAL(4, 26, 6), // "value2"
QT_MOC_LITERAL(5, 33, 6), // "value3"
QT_MOC_LITERAL(6, 40, 6), // "value4"
QT_MOC_LITERAL(7, 47, 6), // "value5"
QT_MOC_LITERAL(8, 54, 6), // "value6"
QT_MOC_LITERAL(9, 61, 6), // "value7"
QT_MOC_LITERAL(10, 68, 6), // "value8"
QT_MOC_LITERAL(11, 75, 6), // "value9"
QT_MOC_LITERAL(12, 82, 7), // "value10"
QT_MOC_LITERAL(13, 90, 7), // "value11"
QT_MOC_LITERAL(14, 98, 7), // "value12"
QT_MOC_LITERAL(15, 106, 7), // "value13"
QT_MOC_LITERAL(16, 114, 7), // "value14"
QT_MOC_LITERAL(17, 122, 7), // "value15"
QT_MOC_LITERAL(18, 130, 7), // "value16"
QT_MOC_LITERAL(19, 138, 7), // "value17"
QT_MOC_LITERAL(20, 146, 7), // "value18"
QT_MOC_LITERAL(21, 154, 7), // "value19"
QT_MOC_LITERAL(22, 162, 8) // "readData"
},
"MainWindow\0value0\0\0value1\0value2\0"
"value3\0value4\0value5\0value6\0value7\0"
"value8\0value9\0value10\0value11\0value12\0"
"value13\0value14\0value15\0value16\0value17\0"
"value18\0value19\0readData"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MainWindow[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
21, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 1, 119, 2, 0x08 /* Private */,
3, 1, 122, 2, 0x08 /* Private */,
4, 1, 125, 2, 0x08 /* Private */,
5, 1, 128, 2, 0x08 /* Private */,
6, 1, 131, 2, 0x08 /* Private */,
7, 1, 134, 2, 0x08 /* Private */,
8, 1, 137, 2, 0x08 /* Private */,
9, 1, 140, 2, 0x08 /* Private */,
10, 0, 143, 2, 0x08 /* Private */,
11, 0, 144, 2, 0x08 /* Private */,
12, 0, 145, 2, 0x08 /* Private */,
13, 0, 146, 2, 0x08 /* Private */,
14, 0, 147, 2, 0x08 /* Private */,
15, 0, 148, 2, 0x08 /* Private */,
16, 0, 149, 2, 0x08 /* Private */,
17, 0, 150, 2, 0x08 /* Private */,
18, 0, 151, 2, 0x08 /* Private */,
19, 0, 152, 2, 0x08 /* Private */,
20, 0, 153, 2, 0x08 /* Private */,
21, 0, 154, 2, 0x08 /* Private */,
22, 0, 155, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void, QMetaType::Int, 2,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MainWindow *_t = static_cast<MainWindow *>(_o);
switch (_id) {
case 0: _t->value0((*reinterpret_cast< int(*)>(_a[1]))); break;
case 1: _t->value1((*reinterpret_cast< int(*)>(_a[1]))); break;
case 2: _t->value2((*reinterpret_cast< int(*)>(_a[1]))); break;
case 3: _t->value3((*reinterpret_cast< int(*)>(_a[1]))); break;
case 4: _t->value4((*reinterpret_cast< int(*)>(_a[1]))); break;
case 5: _t->value5((*reinterpret_cast< int(*)>(_a[1]))); break;
case 6: _t->value6((*reinterpret_cast< int(*)>(_a[1]))); break;
case 7: _t->value7((*reinterpret_cast< int(*)>(_a[1]))); break;
case 8: _t->value8(); break;
case 9: _t->value9(); break;
case 10: _t->value10(); break;
case 11: _t->value11(); break;
case 12: _t->value12(); break;
case 13: _t->value13(); break;
case 14: _t->value14(); break;
case 15: _t->value15(); break;
case 16: _t->value16(); break;
case 17: _t->value17(); break;
case 18: _t->value18(); break;
case 19: _t->value19(); break;
case 20: _t->readData(); break;
default: ;
}
}
}
const QMetaObject MainWindow::staticMetaObject = {
{ &QMainWindow::staticMetaObject, qt_meta_stringdata_MainWindow.data,
qt_meta_data_MainWindow, qt_static_metacall, Q_NULLPTR, Q_NULLPTR}
};
const QMetaObject *MainWindow::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MainWindow::qt_metacast(const char *_clname)
{
if (!_clname) return Q_NULLPTR;
if (!strcmp(_clname, qt_meta_stringdata_MainWindow.stringdata))
return static_cast<void*>(const_cast< MainWindow*>(this));
return QMainWindow::qt_metacast(_clname);
}
int MainWindow::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QMainWindow::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 21)
qt_static_metacall(this, _c, _id, _a);
_id -= 21;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 21)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 21;
}
return _id;
}
QT_END_MOC_NAMESPACE

View File

@ -0,0 +1,472 @@
/********************************************************************************
** Form generated from reading UI file 'mainwindow.ui'
**
** Created by: Qt User Interface Compiler version 5.4.1
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_MAINWINDOW_H
#define UI_MAINWINDOW_H
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QFrame>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QLineEdit>
#include <QtWidgets/QMainWindow>
#include <QtWidgets/QMenuBar>
#include <QtWidgets/QRadioButton>
#include <QtWidgets/QSlider>
#include <QtWidgets/QStatusBar>
#include <QtWidgets/QTextBrowser>
#include <QtWidgets/QToolBar>
#include <QtWidgets/QVBoxLayout>
#include <QtWidgets/QWidget>
#include "qcustomplot.h"
QT_BEGIN_NAMESPACE
class Ui_MainWindow
{
public:
QWidget *centralWidget;
QFrame *frame;
QWidget *horizontalLayoutWidget;
QHBoxLayout *horizontalLayout;
QVBoxLayout *verticalLayout_5;
QHBoxLayout *horizontalLayout_3;
QLabel *label;
QHBoxLayout *horizontalLayout_2;
QSlider *horizontalSlider;
QLineEdit *lineEdit;
QVBoxLayout *verticalLayout_6;
QHBoxLayout *horizontalLayout_4;
QLabel *label_2;
QHBoxLayout *horizontalLayout_5;
QSlider *horizontalSlider_2;
QLineEdit *lineEdit_2;
QWidget *verticalLayoutWidget;
QVBoxLayout *verticalLayout;
QHBoxLayout *horizontalLayout_9;
QLabel *label_4;
QSlider *horizontalSlider_6;
QLineEdit *lineEdit_8;
QHBoxLayout *horizontalLayout_6;
QSlider *horizontalSlider_3;
QLineEdit *lineEdit_3;
QHBoxLayout *horizontalLayout_10;
QLabel *label_5;
QSlider *horizontalSlider_7;
QLineEdit *lineEdit_7;
QHBoxLayout *horizontalLayout_8;
QSlider *horizontalSlider_5;
QLineEdit *lineEdit_5;
QHBoxLayout *horizontalLayout_11;
QLabel *label_3;
QSlider *horizontalSlider_8;
QLineEdit *lineEdit_6;
QHBoxLayout *horizontalLayout_7;
QSlider *horizontalSlider_4;
QLineEdit *lineEdit_4;
QTextBrowser *textBrowser;
QWidget *horizontalLayoutWidget_2;
QHBoxLayout *horizontalLayout_12;
QRadioButton *radioButton_3;
QRadioButton *radioButton;
QRadioButton *radioButton_2;
QCustomPlot *widget;
QLineEdit *lineEdit_9;
QMenuBar *menuBar;
QToolBar *mainToolBar;
QStatusBar *statusBar;
void setupUi(QMainWindow *MainWindow)
{
if (MainWindow->objectName().isEmpty())
MainWindow->setObjectName(QStringLiteral("MainWindow"));
MainWindow->resize(1566, 549);
centralWidget = new QWidget(MainWindow);
centralWidget->setObjectName(QStringLiteral("centralWidget"));
frame = new QFrame(centralWidget);
frame->setObjectName(QStringLiteral("frame"));
frame->setGeometry(QRect(0, 0, 671, 451));
frame->setFrameShape(QFrame::StyledPanel);
frame->setFrameShadow(QFrame::Raised);
horizontalLayoutWidget = new QWidget(frame);
horizontalLayoutWidget->setObjectName(QStringLiteral("horizontalLayoutWidget"));
horizontalLayoutWidget->setGeometry(QRect(0, 0, 671, 121));
horizontalLayout = new QHBoxLayout(horizontalLayoutWidget);
horizontalLayout->setSpacing(6);
horizontalLayout->setContentsMargins(11, 11, 11, 11);
horizontalLayout->setObjectName(QStringLiteral("horizontalLayout"));
horizontalLayout->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout->setContentsMargins(0, 0, 0, 0);
verticalLayout_5 = new QVBoxLayout();
verticalLayout_5->setSpacing(6);
verticalLayout_5->setObjectName(QStringLiteral("verticalLayout_5"));
verticalLayout_5->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout_3 = new QHBoxLayout();
horizontalLayout_3->setSpacing(6);
horizontalLayout_3->setObjectName(QStringLiteral("horizontalLayout_3"));
horizontalLayout_3->setSizeConstraint(QLayout::SetMinAndMaxSize);
label = new QLabel(horizontalLayoutWidget);
label->setObjectName(QStringLiteral("label"));
label->setMinimumSize(QSize(0, 75));
label->setMaximumSize(QSize(16777215, 75));
label->setAlignment(Qt::AlignCenter);
horizontalLayout_3->addWidget(label);
verticalLayout_5->addLayout(horizontalLayout_3);
horizontalLayout_2 = new QHBoxLayout();
horizontalLayout_2->setSpacing(6);
horizontalLayout_2->setObjectName(QStringLiteral("horizontalLayout_2"));
horizontalLayout_2->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalSlider = new QSlider(horizontalLayoutWidget);
horizontalSlider->setObjectName(QStringLiteral("horizontalSlider"));
QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum);
sizePolicy.setHorizontalStretch(0);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(horizontalSlider->sizePolicy().hasHeightForWidth());
horizontalSlider->setSizePolicy(sizePolicy);
horizontalSlider->setMaximumSize(QSize(16777215, 22));
horizontalSlider->setMaximum(510);
horizontalSlider->setValue(255);
horizontalSlider->setSliderPosition(255);
horizontalSlider->setOrientation(Qt::Horizontal);
horizontalLayout_2->addWidget(horizontalSlider);
lineEdit = new QLineEdit(horizontalLayoutWidget);
lineEdit->setObjectName(QStringLiteral("lineEdit"));
QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Minimum);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(0);
sizePolicy1.setHeightForWidth(lineEdit->sizePolicy().hasHeightForWidth());
lineEdit->setSizePolicy(sizePolicy1);
lineEdit->setMaximumSize(QSize(35, 35));
lineEdit->setMaxLength(4);
lineEdit->setClearButtonEnabled(false);
horizontalLayout_2->addWidget(lineEdit);
verticalLayout_5->addLayout(horizontalLayout_2);
horizontalLayout->addLayout(verticalLayout_5);
verticalLayout_6 = new QVBoxLayout();
verticalLayout_6->setSpacing(6);
verticalLayout_6->setObjectName(QStringLiteral("verticalLayout_6"));
verticalLayout_6->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalLayout_4 = new QHBoxLayout();
horizontalLayout_4->setSpacing(6);
horizontalLayout_4->setObjectName(QStringLiteral("horizontalLayout_4"));
horizontalLayout_4->setSizeConstraint(QLayout::SetMinAndMaxSize);
label_2 = new QLabel(horizontalLayoutWidget);
label_2->setObjectName(QStringLiteral("label_2"));
label_2->setMinimumSize(QSize(0, 75));
label_2->setMaximumSize(QSize(16777215, 75));
label_2->setAlignment(Qt::AlignCenter);
horizontalLayout_4->addWidget(label_2);
verticalLayout_6->addLayout(horizontalLayout_4);
horizontalLayout_5 = new QHBoxLayout();
horizontalLayout_5->setSpacing(6);
horizontalLayout_5->setObjectName(QStringLiteral("horizontalLayout_5"));
horizontalLayout_5->setSizeConstraint(QLayout::SetMinAndMaxSize);
horizontalSlider_2 = new QSlider(horizontalLayoutWidget);
horizontalSlider_2->setObjectName(QStringLiteral("horizontalSlider_2"));
sizePolicy.setHeightForWidth(horizontalSlider_2->sizePolicy().hasHeightForWidth());
horizontalSlider_2->setSizePolicy(sizePolicy);
horizontalSlider_2->setMaximumSize(QSize(16777215, 22));
horizontalSlider_2->setMaximum(510);
horizontalSlider_2->setValue(255);
horizontalSlider_2->setOrientation(Qt::Horizontal);
horizontalLayout_5->addWidget(horizontalSlider_2);
lineEdit_2 = new QLineEdit(horizontalLayoutWidget);
lineEdit_2->setObjectName(QStringLiteral("lineEdit_2"));
sizePolicy1.setHeightForWidth(lineEdit_2->sizePolicy().hasHeightForWidth());
lineEdit_2->setSizePolicy(sizePolicy1);
lineEdit_2->setMaximumSize(QSize(35, 35));
lineEdit_2->setMaxLength(4);
lineEdit_2->setClearButtonEnabled(false);
horizontalLayout_5->addWidget(lineEdit_2);
verticalLayout_6->addLayout(horizontalLayout_5);
horizontalLayout->addLayout(verticalLayout_6);
verticalLayoutWidget = new QWidget(frame);
verticalLayoutWidget->setObjectName(QStringLiteral("verticalLayoutWidget"));
verticalLayoutWidget->setGeometry(QRect(0, 120, 671, 251));
verticalLayout = new QVBoxLayout(verticalLayoutWidget);
verticalLayout->setSpacing(6);
verticalLayout->setContentsMargins(11, 11, 11, 11);
verticalLayout->setObjectName(QStringLiteral("verticalLayout"));
verticalLayout->setContentsMargins(0, 0, 0, 0);
horizontalLayout_9 = new QHBoxLayout();
horizontalLayout_9->setSpacing(6);
horizontalLayout_9->setObjectName(QStringLiteral("horizontalLayout_9"));
label_4 = new QLabel(verticalLayoutWidget);
label_4->setObjectName(QStringLiteral("label_4"));
QSizePolicy sizePolicy2(QSizePolicy::Preferred, QSizePolicy::Minimum);
sizePolicy2.setHorizontalStretch(0);
sizePolicy2.setVerticalStretch(0);
sizePolicy2.setHeightForWidth(label_4->sizePolicy().hasHeightForWidth());
label_4->setSizePolicy(sizePolicy2);
label_4->setMaximumSize(QSize(16777215, 35));
label_4->setAlignment(Qt::AlignCenter);
horizontalLayout_9->addWidget(label_4);
horizontalSlider_6 = new QSlider(verticalLayoutWidget);
horizontalSlider_6->setObjectName(QStringLiteral("horizontalSlider_6"));
horizontalSlider_6->setMaximumSize(QSize(50, 16777215));
horizontalSlider_6->setMaximum(99);
horizontalSlider_6->setOrientation(Qt::Horizontal);
horizontalLayout_9->addWidget(horizontalSlider_6);
lineEdit_8 = new QLineEdit(verticalLayoutWidget);
lineEdit_8->setObjectName(QStringLiteral("lineEdit_8"));
lineEdit_8->setMaximumSize(QSize(50, 16777215));
lineEdit_8->setMaxLength(3);
horizontalLayout_9->addWidget(lineEdit_8);
verticalLayout->addLayout(horizontalLayout_9);
horizontalLayout_6 = new QHBoxLayout();
horizontalLayout_6->setSpacing(6);
horizontalLayout_6->setObjectName(QStringLiteral("horizontalLayout_6"));
horizontalSlider_3 = new QSlider(verticalLayoutWidget);
horizontalSlider_3->setObjectName(QStringLiteral("horizontalSlider_3"));
horizontalSlider_3->setMaximum(10000000);
horizontalSlider_3->setOrientation(Qt::Horizontal);
horizontalSlider_3->setTickPosition(QSlider::NoTicks);
horizontalLayout_6->addWidget(horizontalSlider_3);
lineEdit_3 = new QLineEdit(verticalLayoutWidget);
lineEdit_3->setObjectName(QStringLiteral("lineEdit_3"));
QSizePolicy sizePolicy3(QSizePolicy::Minimum, QSizePolicy::Fixed);
sizePolicy3.setHorizontalStretch(0);
sizePolicy3.setVerticalStretch(0);
sizePolicy3.setHeightForWidth(lineEdit_3->sizePolicy().hasHeightForWidth());
lineEdit_3->setSizePolicy(sizePolicy3);
lineEdit_3->setMaximumSize(QSize(100, 35));
lineEdit_3->setMaxLength(20);
horizontalLayout_6->addWidget(lineEdit_3);
verticalLayout->addLayout(horizontalLayout_6);
horizontalLayout_10 = new QHBoxLayout();
horizontalLayout_10->setSpacing(6);
horizontalLayout_10->setObjectName(QStringLiteral("horizontalLayout_10"));
label_5 = new QLabel(verticalLayoutWidget);
label_5->setObjectName(QStringLiteral("label_5"));
sizePolicy2.setHeightForWidth(label_5->sizePolicy().hasHeightForWidth());
label_5->setSizePolicy(sizePolicy2);
label_5->setMaximumSize(QSize(16777215, 35));
label_5->setAlignment(Qt::AlignCenter);
horizontalLayout_10->addWidget(label_5);
horizontalSlider_7 = new QSlider(verticalLayoutWidget);
horizontalSlider_7->setObjectName(QStringLiteral("horizontalSlider_7"));
horizontalSlider_7->setMaximumSize(QSize(50, 16777215));
horizontalSlider_7->setMaximum(99);
horizontalSlider_7->setOrientation(Qt::Horizontal);
horizontalLayout_10->addWidget(horizontalSlider_7);
lineEdit_7 = new QLineEdit(verticalLayoutWidget);
lineEdit_7->setObjectName(QStringLiteral("lineEdit_7"));
lineEdit_7->setMaximumSize(QSize(50, 16777215));
lineEdit_7->setMaxLength(3);
horizontalLayout_10->addWidget(lineEdit_7);
verticalLayout->addLayout(horizontalLayout_10);
horizontalLayout_8 = new QHBoxLayout();
horizontalLayout_8->setSpacing(6);
horizontalLayout_8->setObjectName(QStringLiteral("horizontalLayout_8"));
horizontalSlider_5 = new QSlider(verticalLayoutWidget);
horizontalSlider_5->setObjectName(QStringLiteral("horizontalSlider_5"));
horizontalSlider_5->setMaximum(10000000);
horizontalSlider_5->setOrientation(Qt::Horizontal);
horizontalLayout_8->addWidget(horizontalSlider_5);
lineEdit_5 = new QLineEdit(verticalLayoutWidget);
lineEdit_5->setObjectName(QStringLiteral("lineEdit_5"));
sizePolicy3.setHeightForWidth(lineEdit_5->sizePolicy().hasHeightForWidth());
lineEdit_5->setSizePolicy(sizePolicy3);
lineEdit_5->setMaximumSize(QSize(100, 35));
lineEdit_5->setMaxLength(20);
horizontalLayout_8->addWidget(lineEdit_5);
verticalLayout->addLayout(horizontalLayout_8);
horizontalLayout_11 = new QHBoxLayout();
horizontalLayout_11->setSpacing(6);
horizontalLayout_11->setObjectName(QStringLiteral("horizontalLayout_11"));
label_3 = new QLabel(verticalLayoutWidget);
label_3->setObjectName(QStringLiteral("label_3"));
sizePolicy2.setHeightForWidth(label_3->sizePolicy().hasHeightForWidth());
label_3->setSizePolicy(sizePolicy2);
label_3->setMaximumSize(QSize(16777215, 35));
label_3->setAlignment(Qt::AlignCenter);
horizontalLayout_11->addWidget(label_3);
horizontalSlider_8 = new QSlider(verticalLayoutWidget);
horizontalSlider_8->setObjectName(QStringLiteral("horizontalSlider_8"));
horizontalSlider_8->setMaximumSize(QSize(50, 16777215));
horizontalSlider_8->setMaximum(99);
horizontalSlider_8->setOrientation(Qt::Horizontal);
horizontalLayout_11->addWidget(horizontalSlider_8);
lineEdit_6 = new QLineEdit(verticalLayoutWidget);
lineEdit_6->setObjectName(QStringLiteral("lineEdit_6"));
lineEdit_6->setMaximumSize(QSize(50, 16777215));
lineEdit_6->setMaxLength(3);
horizontalLayout_11->addWidget(lineEdit_6);
verticalLayout->addLayout(horizontalLayout_11);
horizontalLayout_7 = new QHBoxLayout();
horizontalLayout_7->setSpacing(6);
horizontalLayout_7->setObjectName(QStringLiteral("horizontalLayout_7"));
horizontalSlider_4 = new QSlider(verticalLayoutWidget);
horizontalSlider_4->setObjectName(QStringLiteral("horizontalSlider_4"));
horizontalSlider_4->setMaximum(10000000);
horizontalSlider_4->setOrientation(Qt::Horizontal);
horizontalLayout_7->addWidget(horizontalSlider_4);
lineEdit_4 = new QLineEdit(verticalLayoutWidget);
lineEdit_4->setObjectName(QStringLiteral("lineEdit_4"));
sizePolicy3.setHeightForWidth(lineEdit_4->sizePolicy().hasHeightForWidth());
lineEdit_4->setSizePolicy(sizePolicy3);
lineEdit_4->setMaximumSize(QSize(100, 35));
lineEdit_4->setMaxLength(20);
horizontalLayout_7->addWidget(lineEdit_4);
verticalLayout->addLayout(horizontalLayout_7);
textBrowser = new QTextBrowser(frame);
textBrowser->setObjectName(QStringLiteral("textBrowser"));
textBrowser->setGeometry(QRect(0, 410, 671, 31));
textBrowser->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
textBrowser->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
horizontalLayoutWidget_2 = new QWidget(frame);
horizontalLayoutWidget_2->setObjectName(QStringLiteral("horizontalLayoutWidget_2"));
horizontalLayoutWidget_2->setGeometry(QRect(0, 360, 671, 41));
horizontalLayout_12 = new QHBoxLayout(horizontalLayoutWidget_2);
horizontalLayout_12->setSpacing(6);
horizontalLayout_12->setContentsMargins(11, 11, 11, 11);
horizontalLayout_12->setObjectName(QStringLiteral("horizontalLayout_12"));
horizontalLayout_12->setContentsMargins(0, 0, 0, 0);
radioButton_3 = new QRadioButton(horizontalLayoutWidget_2);
radioButton_3->setObjectName(QStringLiteral("radioButton_3"));
radioButton_3->setChecked(true);
horizontalLayout_12->addWidget(radioButton_3);
radioButton = new QRadioButton(horizontalLayoutWidget_2);
radioButton->setObjectName(QStringLiteral("radioButton"));
radioButton->setContextMenuPolicy(Qt::PreventContextMenu);
radioButton->setChecked(false);
horizontalLayout_12->addWidget(radioButton);
radioButton_2 = new QRadioButton(horizontalLayoutWidget_2);
radioButton_2->setObjectName(QStringLiteral("radioButton_2"));
radioButton_2->setLayoutDirection(Qt::LeftToRight);
radioButton_2->setChecked(false);
horizontalLayout_12->addWidget(radioButton_2);
widget = new QCustomPlot(centralWidget);
widget->setObjectName(QStringLiteral("widget"));
widget->setGeometry(QRect(690, 30, 851, 471));
lineEdit_9 = new QLineEdit(centralWidget);
lineEdit_9->setObjectName(QStringLiteral("lineEdit_9"));
lineEdit_9->setGeometry(QRect(0, 450, 671, 31));
MainWindow->setCentralWidget(centralWidget);
menuBar = new QMenuBar(MainWindow);
menuBar->setObjectName(QStringLiteral("menuBar"));
menuBar->setGeometry(QRect(0, 0, 1566, 26));
MainWindow->setMenuBar(menuBar);
mainToolBar = new QToolBar(MainWindow);
mainToolBar->setObjectName(QStringLiteral("mainToolBar"));
MainWindow->addToolBar(Qt::TopToolBarArea, mainToolBar);
statusBar = new QStatusBar(MainWindow);
statusBar->setObjectName(QStringLiteral("statusBar"));
MainWindow->setStatusBar(statusBar);
retranslateUi(MainWindow);
QMetaObject::connectSlotsByName(MainWindow);
} // setupUi
void retranslateUi(QMainWindow *MainWindow)
{
MainWindow->setWindowTitle(QApplication::translate("MainWindow", "MainWindow", 0));
label->setText(QApplication::translate("MainWindow", "PWM_Left", 0));
lineEdit->setText(QApplication::translate("MainWindow", "0", 0));
label_2->setText(QApplication::translate("MainWindow", "PWM_Right", 0));
lineEdit_2->setText(QApplication::translate("MainWindow", "0", 0));
label_4->setText(QApplication::translate("MainWindow", "KP", 0));
lineEdit_8->setText(QApplication::translate("MainWindow", "3", 0));
lineEdit_3->setText(QApplication::translate("MainWindow", "3.0", 0));
label_5->setText(QApplication::translate("MainWindow", "KI", 0));
lineEdit_7->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_5->setText(QApplication::translate("MainWindow", "0", 0));
label_3->setText(QApplication::translate("MainWindow", "KD", 0));
lineEdit_6->setText(QApplication::translate("MainWindow", "0", 0));
lineEdit_4->setText(QApplication::translate("MainWindow", "0", 0));
radioButton_3->setText(QApplication::translate("MainWindow", "cmd Mode", 0));
radioButton->setText(QApplication::translate("MainWindow", "PWM/ PID mode", 0));
radioButton_2->setText(QApplication::translate("MainWindow", "Key Mode", 0));
} // retranslateUi
};
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINWINDOW_H

View File

@ -0,0 +1,332 @@
#############################################################################
# Makefile for building: mindwave
# Generated by qmake (3.0) (Qt 5.4.1)
# Project: ..\mindwave\mindwave.pro
# Template: app
# Command: C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe -spec win32-g++ CONFIG+=debug -o Makefile ..\mindwave\mindwave.pro
#############################################################################
MAKEFILE = Makefile
first: debug
install: debug-install
uninstall: debug-uninstall
QMAKE = C:\Qt\Qt5.4.1\5.4\mingw491_32\bin\qmake.exe
DEL_FILE = del
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
COPY = copy /y
COPY_FILE = $(COPY)
COPY_DIR = xcopy /s /q /y /i
INSTALL_FILE = $(COPY_FILE)
INSTALL_PROGRAM = $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = del
SYMLINK = copy /y
DEL_DIR = rmdir
MOVE = move
SUBTARGETS = \
debug \
release
debug: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-all: FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
release: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: FORCE
$(MAKE) -f $(MAKEFILE).Release
release-all: FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall
Makefile: ../mindwave/mindwave.pro C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qdevice.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/device_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/common/shell-win32.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/qconfig.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axbase_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axcontainer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_axserver_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bluetooth_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_bootstrap_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_clucene_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_concurrent_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_core_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_dbus_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_declarative_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designer_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_designercomponents_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_enginio_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_gui_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_help_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_location_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimedia_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_network_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_nfc_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_opengl_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_openglextensions_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_platformsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_positioning_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_printsupport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmldevtools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qmltest_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quick_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickparticles_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_quickwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_script_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_scripttools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sensors_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_serialport_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_sql_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_svg_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_testlib_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_uitools_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webchannel_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkit_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_websockets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_webview_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_widgets_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_winextras_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xml_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_functions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/qt_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/win32-g++/qmake.conf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/spec_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/default_pre.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resolve_config.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exclusive_builds_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/default_post.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/console.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/win32/rtti.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/precompile_header.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/warn_on.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/qt.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/resources.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/moc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/testcase_targets.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/exceptions.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/yacc.prf \
C:/Qt/Qt5.4.1/5.4/mingw491_32/mkspecs/features/lex.prf \
../mindwave/mindwave.pro \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl \
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl
$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\mindwave\mindwave.pro
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qdevice.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\device_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\common\shell-win32.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\qconfig.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axbase_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axcontainer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_axserver_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bluetooth_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_bootstrap_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_clucene_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_concurrent_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_core_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_dbus_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_declarative_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designer_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_designercomponents_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_enginio_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_gui_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_help_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_location_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimedia_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_multimediawidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_network_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_nfc_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_opengl_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_openglextensions_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_platformsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_positioning_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_printsupport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmldevtools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qmltest_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_qtmultimediaquicktools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quick_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickparticles_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_quickwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_script_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_scripttools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sensors_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_serialport_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_sql_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_svg_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_testlib_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_uitools_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webchannel_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkit_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webkitwidgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_websockets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_webview_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_widgets_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_winextras_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xml_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\modules\qt_lib_xmlpatterns_private.pri:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_functions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\qt_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\win32-g++\qmake.conf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\spec_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\default_pre.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resolve_config.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exclusive_builds_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\default_post.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\console.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\win32\rtti.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\precompile_header.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\warn_on.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\qt.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\resources.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\moc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\testcase_targets.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\exceptions.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\yacc.prf:
C:\Qt\Qt5.4.1\5.4\mingw491_32\mkspecs\features\lex.prf:
..\mindwave\mindwave.pro:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5SerialPort.prl:
C:/Qt/Qt5.4.1/5.4/mingw491_32/lib/Qt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec win32-g++ CONFIG+=debug -o Makefile ..\mindwave\mindwave.pro
qmake_all: FORCE
make_first: debug-make_first release-make_first FORCE
all: debug-all release-all FORCE
clean: debug-clean release-clean FORCE
distclean: debug-distclean release-distclean FORCE
-$(DEL_FILE) Makefile
debug-mocclean:
$(MAKE) -f $(MAKEFILE).Debug mocclean
release-mocclean:
$(MAKE) -f $(MAKEFILE).Release mocclean
mocclean: debug-mocclean release-mocclean
debug-mocables:
$(MAKE) -f $(MAKEFILE).Debug mocables
release-mocables:
$(MAKE) -f $(MAKEFILE).Release mocables
mocables: debug-mocables release-mocables
check: first
FORCE:
$(MAKEFILE).Debug: Makefile
$(MAKEFILE).Release: Makefile

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,99 @@
#include<Loop.h>
#include <QtSerialPort/QSerialPortInfo>
bool Loop::flag=1;
Loop::Loop():QThread(){
char a = '\0';
data = &a;
serial = new QSerialPort(this);
serial->setPortName("COM5");
serial->setBaudRate(QSerialPort::Baud57600);
serial->setDataBits(QSerialPort::Data8);
serial->setParity(QSerialPort::NoParity);
serial->setStopBits(QSerialPort::OneStop);
serial->setFlowControl(QSerialPort::NoFlowControl);
QSerialPortInfo info=QSerialPortInfo::availablePorts().at(4);
qDebug()<<info.portName();
if(serial->open(QIODevice::ReadWrite));
this->flag = 1;
generatedChecksum = 0;
checksum = 0;
payloadLength = 0;
payloadData[64] = {0};
poorQuality = 0;
attention = 0;
meditation = 0;
lastReceivedPacket = 0;
bigPacket = false;
}
Loop::~Loop(){flag = 0;}
int Loop::ReadOneByte(){
while(!serial->bytesAvailable()){QThread::yieldCurrentThread();}
serial->read(data,1);
return (int)data[0];
}
void Loop::run(){
serial->isOpen();
while(flag){
x:
if(ReadOneByte() == 170)
{
qDebug()<<"op";
if(ReadOneByte() == 170)
{
payloadLength = ReadOneByte();
if(payloadLength > 169) //Payload length can not be greater than 169
goto x;
generatedChecksum = 0;
for(int i = 0; i < payloadLength; i++)
{
payloadData[i] = ReadOneByte(); //Read payload into memory
generatedChecksum += payloadData[i];
}
checksum = ReadOneByte(); //Read checksum byte from stream
generatedChecksum = 255 - generatedChecksum; //Take one's compliment of generated checksum
if(checksum == generatedChecksum)
{
poorQuality = 200;
attention = 0;
meditation = 0;
for(int i = 0; i < payloadLength; i++)
{ // Parse the payload
switch (payloadData[i])
{
case 2:
i++;
poorQuality = payloadData[i];
bigPacket = true;
break;
case 4:
i++;
attention = payloadData[i];
break;
case 5:
i++;
meditation = payloadData[i];
break;
case 0x80:
i = i + 3;
break;
case 0x83:
i = i + 25;
break;
default:
break;
} // switch
} // for loop
}
}
qDebug()<<payloadData;
}
}
}

View File

@ -0,0 +1,32 @@
#ifndef LOOP
#define LOOP
#endif // LOOP
#include <iostream>
#include <QThread>
#include <QtSerialPort/QSerialPort>
#include "QDebug"
class Loop:public QThread{
public:
Loop();
~Loop();
static bool flag;
private:
QSerialPort *serial;
char *data;
int generatedChecksum;
int checksum;
int payloadLength;
int payloadData[64];
int poorQuality;
int attention;
int meditation;
long lastReceivedPacket;
bool bigPacket;
int ReadOneByte();
protected:
void run();
};

View File

@ -0,0 +1,11 @@
#include <QCoreApplication>
#include<Loop.h>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
Loop b;
b.start();
int c = a.exec();
b.flag = 0;b.disconnect();
return c;
}

View File

@ -0,0 +1,24 @@
#-------------------------------------------------
#
# Project created by QtCreator 2017-01-04T12:59:34
#
#-------------------------------------------------
QT += core
QT -= gui
TARGET = mindwave
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp \
Loop.cpp
QT += serialport
HEADERS += \
Loop.h

View File

@ -0,0 +1,257 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.3.1, 2017-01-04T14:51:14. -->
<qtcreator>
<data>
<variable>EnvironmentId</variable>
<value type="QByteArray">{071d3636-4530-4e79-9e5c-eb70a03bf55f}</value>
</data>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.4.1 MinGW 32bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.54.win32_mingw491_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-mindwave-Desktop_Qt_5_4_1_MinGW_32bit-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/yikes/OneDrive/Documents/build-mindwave-Desktop_Qt_5_4_1_MinGW_32bit-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">mindwave</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/yikes/OneDrive/Documents/mindwave/mindwave.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">mindwave.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">18</value>
</data>
<data>
<variable>Version</variable>
<value type="int">18</value>
</data>
</qtcreator>

2
README.md Normal file
View File

@ -0,0 +1,2 @@
# Qt-Advent
These are highly application specific, you might want to edit them slightly before using.