initial
This commit is contained in:
commit
5d3ed2294f
48
DataService.pro
Normal file
48
DataService.pro
Normal file
@ -0,0 +1,48 @@
|
||||
#-------------------------------------------------
|
||||
#
|
||||
# Project created by QtCreator 2018-08-29T14:47:02
|
||||
#
|
||||
#-------------------------------------------------
|
||||
|
||||
QT += core gui charts
|
||||
|
||||
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
|
||||
|
||||
TARGET = DataService
|
||||
TEMPLATE = app
|
||||
|
||||
# The following define makes your compiler emit warnings if you use
|
||||
# any feature of Qt which has been marked as deprecated (the exact warnings
|
||||
# depend on your compiler). Please consult the documentation of the
|
||||
# deprecated API in order to know how to port your code away from it.
|
||||
DEFINES += QT_DEPRECATED_WARNINGS
|
||||
|
||||
# You can also make your code fail to compile if you use deprecated APIs.
|
||||
# In order to do so, uncomment the following line.
|
||||
# You can also select to disable deprecated APIs only up to a certain version of Qt.
|
||||
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
|
||||
|
||||
|
||||
SOURCES += \
|
||||
main.cpp \
|
||||
mainwindow.cpp \
|
||||
dataservice.cpp \
|
||||
dataqueue.cpp \
|
||||
dataloader.cpp \
|
||||
dataresult1d.cpp \
|
||||
datarequest.cpp \
|
||||
converttoseries.cpp
|
||||
|
||||
HEADERS += \
|
||||
mainwindow.h \
|
||||
dataservice.h \
|
||||
dataqueue.h \
|
||||
dataloader.h \
|
||||
dataresult1d.h \
|
||||
datarequest.h \
|
||||
converttoseries.h
|
||||
|
||||
FORMS += \
|
||||
mainwindow.ui
|
||||
|
||||
unix|win32: LIBS += -lnix
|
336
DataService.pro.user
Normal file
336
DataService.pro.user
Normal file
@ -0,0 +1,336 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 4.6.2, 2018-08-29T14:49:31. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
<value type="QByteArray">{8b523b8d-f5ce-4be4-a9bd-780a0aec766f}</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.SmartSelectionChanging">true</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</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{d7263c99-5355-4486-be71-56523c5d259f}</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">/home/grewe/zwischenlager/event_queue/build-DataService-Desktop-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">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.SeparateDebugInfo">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="QString">-w</value>
|
||||
<value type="QString">-r</value>
|
||||
</valuelist>
|
||||
<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="QString">-w</value>
|
||||
<value type="QString">-r</value>
|
||||
</valuelist>
|
||||
<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">Debug</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">/home/grewe/zwischenlager/event_queue/build-DataService-Desktop-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="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
|
||||
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
|
||||
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">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="QString">-w</value>
|
||||
<value type="QString">-r</value>
|
||||
</valuelist>
|
||||
<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="QString">-w</value>
|
||||
<value type="QString">-r</value>
|
||||
</valuelist>
|
||||
<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">Release</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>
|
||||
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
|
||||
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/grewe/zwischenlager/event_queue/build-DataService-Desktop-Profile</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">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.SeparateDebugInfo">true</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="QString">-w</value>
|
||||
<value type="QString">-r</value>
|
||||
</valuelist>
|
||||
<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="QString">-w</value>
|
||||
<value type="QString">-r</value>
|
||||
</valuelist>
|
||||
<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">Profile</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Profile</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">3</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 Configuration</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">
|
||||
<value type="bool" key="Analyzer.QmlProfiler.AggregateTraces">false</value>
|
||||
<value type="bool" key="Analyzer.QmlProfiler.FlushEnabled">false</value>
|
||||
<value type="uint" key="Analyzer.QmlProfiler.FlushInterval">1000</value>
|
||||
<value type="QString" key="Analyzer.QmlProfiler.LastTraceFile"></value>
|
||||
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
|
||||
<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">DataService</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/grewe/zwischenlager/event_queue/DataService/DataService.pro</value>
|
||||
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
|
||||
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
|
||||
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">DataService.pro</value>
|
||||
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
|
||||
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
|
||||
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory.default">/home/grewe/zwischenlager/event_queue/build-DataService-Desktop-Debug</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>
|
26
converttoseries.cpp
Normal file
26
converttoseries.cpp
Normal file
@ -0,0 +1,26 @@
|
||||
#include "converttoseries.h"
|
||||
using namespace QtCharts;
|
||||
|
||||
ConvertToSeries::ConvertToSeries(QObject *parent) : QObject(parent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void ConvertToSeries::run() {
|
||||
mutex.lock();
|
||||
if (dataPresent) {
|
||||
for (size_t i = 0; i < data.xdata.size(); ++i) {
|
||||
this->series->append(data.xdata[i], data.ydata[i]);
|
||||
}
|
||||
emit dataConverted(series, QString::fromStdString(data.entityId));
|
||||
}
|
||||
mutex.unlock();
|
||||
}
|
||||
|
||||
void ConvertToSeries::setData(QLineSeries *series, const DataResult1D &data) {
|
||||
mutex.lock();
|
||||
this->series = series;
|
||||
this->data = data;
|
||||
this->dataPresent = true;
|
||||
mutex.unlock();
|
||||
}
|
33
converttoseries.h
Normal file
33
converttoseries.h
Normal file
@ -0,0 +1,33 @@
|
||||
#ifndef CONVERTTOSERIES_H
|
||||
#define CONVERTTOSERIES_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QRunnable>
|
||||
#include <QMutex>
|
||||
#include <QLineSeries>
|
||||
#include "dataresult1d.h"
|
||||
|
||||
using namespace QtCharts;
|
||||
|
||||
class ConvertToSeries : public QObject, public QRunnable {
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit ConvertToSeries(QObject *parent = nullptr);
|
||||
|
||||
private:
|
||||
QMutex mutex;
|
||||
bool dataPresent = false;
|
||||
DataResult1D data;
|
||||
QLineSeries *series;
|
||||
|
||||
void run() override;
|
||||
|
||||
public:
|
||||
void setData(QLineSeries *series, const DataResult1D &data);
|
||||
|
||||
signals:
|
||||
void dataConverted(QLineSeries *series, QString entityId);
|
||||
|
||||
};
|
||||
|
||||
#endif // CONVERTTOSERIES_H
|
16
dataloader.cpp
Normal file
16
dataloader.cpp
Normal file
@ -0,0 +1,16 @@
|
||||
#include "dataloader.h"
|
||||
#include <iostream>
|
||||
|
||||
DataLoader::DataLoader()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
DataResult1D DataLoader::doLoad(const DataRequest &request) {
|
||||
std::vector<double> x, y;
|
||||
x = request.array.getDimension(1).asSampledDimension().axis(request.count[0], request.start[0]);
|
||||
request.array.getData(y, request.count, request.start);
|
||||
|
||||
DataResult1D res(request.id, request.array.id(), x, y);
|
||||
return res;
|
||||
}
|
20
dataloader.h
Normal file
20
dataloader.h
Normal file
@ -0,0 +1,20 @@
|
||||
#ifndef DATALOADER_H
|
||||
#define DATALOADER_H
|
||||
|
||||
#include <QObject>
|
||||
#include "datarequest.h"
|
||||
#include "dataresult1d.h"
|
||||
|
||||
class DataLoader : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
DataLoader();
|
||||
|
||||
public slots:
|
||||
DataResult1D doLoad(const DataRequest &request);
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif // DATALOADER_H
|
54
dataqueue.cpp
Normal file
54
dataqueue.cpp
Normal file
@ -0,0 +1,54 @@
|
||||
#include "dataqueue.h"
|
||||
|
||||
|
||||
DataQueue::DataQueue(QObject *parent) :
|
||||
QThread(parent), stopped(false)
|
||||
{}
|
||||
|
||||
|
||||
DataQueue::~DataQueue(){
|
||||
}
|
||||
|
||||
void DataQueue::run() {
|
||||
mutex.lock();
|
||||
bool stop = stopped || (requestQueue.size() == 0);
|
||||
mutex.unlock();
|
||||
while (!stop) {
|
||||
mutex.lock();
|
||||
if (requestQueue.size() > 0) {
|
||||
DataResult1D data = loader->doLoad(requestQueue.front());
|
||||
resultMap.insert(std::pair<std::string, DataResult1D>(data.id, data));
|
||||
emit resultReady(QString::fromStdString(data.id));
|
||||
requestQueue.pop();
|
||||
stop = requestQueue.size() == 0 || stopped;
|
||||
}
|
||||
mutex.unlock();
|
||||
}
|
||||
}
|
||||
|
||||
void DataQueue::requestData(const nix::DataArray &array, const nix::NDSize &count, const nix::NDSize &offset, std::string &requestId) {
|
||||
requestId = nix::util::createId();
|
||||
DataRequest dr(requestId, array, count, offset);
|
||||
mutex.lock();
|
||||
requestQueue.push(dr);
|
||||
mutex.unlock();
|
||||
start();
|
||||
}
|
||||
|
||||
void DataQueue::stop() {
|
||||
mutex.lock();
|
||||
stopped = true;
|
||||
mutex.unlock();
|
||||
}
|
||||
|
||||
DataResult1D DataQueue::getData(QString requestId) {
|
||||
DataResult1D ret;
|
||||
mutex.lock();
|
||||
std::map<std::string, DataResult1D>::iterator it = resultMap.find(requestId.toStdString());
|
||||
if (it != resultMap.end()) {
|
||||
ret = it->second;
|
||||
resultMap.erase(it);
|
||||
}
|
||||
mutex.unlock();
|
||||
return ret;
|
||||
}
|
42
dataqueue.h
Normal file
42
dataqueue.h
Normal file
@ -0,0 +1,42 @@
|
||||
#ifndef DATAQUEUE_H
|
||||
#define DATAQUEUE_H
|
||||
|
||||
#include <QObject>
|
||||
#include <QThread>
|
||||
#include <QMutex>
|
||||
#include <QWaitCondition>
|
||||
#include <queue>
|
||||
#include <iostream>
|
||||
#include <nix.hpp>
|
||||
|
||||
#include "dataloader.h"
|
||||
#include "dataresult1d.h"
|
||||
#include "datarequest.h"
|
||||
|
||||
class DataQueue : public QThread
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
DataQueue(QObject *parent = 0);
|
||||
~DataQueue();
|
||||
|
||||
void run() override;
|
||||
void stop();
|
||||
DataResult1D getData(QString requestId);
|
||||
|
||||
signals:
|
||||
void resultReady(QString requestId);
|
||||
|
||||
public slots:
|
||||
void requestData(const nix::DataArray &array, const nix::NDSize &count, const nix::NDSize &offset, std::string &requestId);
|
||||
|
||||
|
||||
private:
|
||||
std::queue<DataRequest> requestQueue;
|
||||
std::map<std::string, DataResult1D> resultMap;
|
||||
QMutex mutex;
|
||||
DataLoader *loader;
|
||||
bool stopped;
|
||||
};
|
||||
|
||||
#endif // DATAQUEUE_H
|
5
datarequest.cpp
Normal file
5
datarequest.cpp
Normal file
@ -0,0 +1,5 @@
|
||||
#include "datarequest.h"
|
||||
|
||||
DataRequest::DataRequest(const std::string &requestId, const nix::DataArray &array, const nix::NDSize &count, const nix::NDSize &start)
|
||||
: id(requestId), array(array), count(count), start(start)
|
||||
{}
|
16
datarequest.h
Normal file
16
datarequest.h
Normal file
@ -0,0 +1,16 @@
|
||||
#ifndef DATAREQUEST_H
|
||||
#define DATAREQUEST_H
|
||||
|
||||
#include <nix.hpp>
|
||||
|
||||
class DataRequest
|
||||
{
|
||||
public:
|
||||
DataRequest(const std::string &requestId, const nix::DataArray &array, const nix::NDSize &count, const nix::NDSize &start);
|
||||
|
||||
std::string id;
|
||||
nix::DataArray array;
|
||||
nix::NDSize count, start;
|
||||
};
|
||||
|
||||
#endif // DATAREQUEST_H
|
6
dataresult1d.cpp
Normal file
6
dataresult1d.cpp
Normal file
@ -0,0 +1,6 @@
|
||||
#include "dataresult1d.h"
|
||||
|
||||
DataResult1D::DataResult1D(const std::string &request_id, const std::string &entityId, const std::vector<double> &x, const std::vector<double> &y)
|
||||
: id(request_id), entityId(entityId), xdata(x), ydata(y)
|
||||
{}
|
||||
|
18
dataresult1d.h
Normal file
18
dataresult1d.h
Normal file
@ -0,0 +1,18 @@
|
||||
#ifndef DATARESULT1D_H
|
||||
#define DATARESULT1D_H
|
||||
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
|
||||
class DataResult1D
|
||||
{
|
||||
public:
|
||||
DataResult1D(){};
|
||||
DataResult1D(const std::string &request_id, const std::string &entityId, const std::vector<double> &x, const std::vector<double> &y);
|
||||
|
||||
std::string id, entityId;
|
||||
std::vector<double> xdata;
|
||||
std::vector<double> ydata;
|
||||
};
|
||||
|
||||
#endif // DATARESULT1D_H
|
20
dataservice.cpp
Normal file
20
dataservice.cpp
Normal file
@ -0,0 +1,20 @@
|
||||
#include "dataservice.h"
|
||||
|
||||
|
||||
DataService::DataService(QObject *parent):
|
||||
QObject(parent)
|
||||
{}
|
||||
|
||||
|
||||
void DataService::doWork( ) {
|
||||
QString result;
|
||||
size_t count = 0;
|
||||
for (size_t i = 1; i < 100000000; ++i){
|
||||
count++;
|
||||
}
|
||||
|
||||
/* ... here is the expensive or blocking operation ... */
|
||||
emit resultReady();
|
||||
}
|
||||
|
||||
|
19
dataservice.h
Normal file
19
dataservice.h
Normal file
@ -0,0 +1,19 @@
|
||||
#ifndef DATASERVICE_H
|
||||
#define DATASERVICE_H
|
||||
|
||||
#include <QObject>
|
||||
|
||||
class DataService : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit DataService(QObject *parent = nullptr);
|
||||
|
||||
signals:
|
||||
void resultReady();
|
||||
|
||||
public slots:
|
||||
void doWork();
|
||||
};
|
||||
|
||||
#endif // DATASERVICE_H
|
13
main.cpp
Normal file
13
main.cpp
Normal file
@ -0,0 +1,13 @@
|
||||
#include "mainwindow.h"
|
||||
#include <QApplication>
|
||||
#include "dataresult1d.h"
|
||||
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
QApplication a(argc, argv);
|
||||
MainWindow w;
|
||||
w.show();
|
||||
|
||||
return a.exec();
|
||||
}
|
107
mainwindow.cpp
Normal file
107
mainwindow.cpp
Normal file
@ -0,0 +1,107 @@
|
||||
#include "mainwindow.h"
|
||||
#include "ui_mainwindow.h"
|
||||
#include "converttoseries.h"
|
||||
#include <iostream>
|
||||
|
||||
using namespace QtCharts;
|
||||
|
||||
MainWindow::MainWindow(QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
ui(new Ui::MainWindow)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
/*
|
||||
dataService = new DataService();
|
||||
dataService->moveToThread(&dataServiceThread);
|
||||
connect(&dataServiceThread, &QThread::finished, dataService, &QObject::deleteLater);
|
||||
connect(ui->goBtn, SIGNAL(clicked(bool)), dataService, SLOT(doWork()));
|
||||
connect(dataService, SIGNAL(resultReady()), this, SLOT(handleResult()));
|
||||
dataServiceThread.start();
|
||||
*/
|
||||
connect(&dataQueue, SIGNAL(resultReady(QString)), this, SLOT(dataReady(QString)));
|
||||
//connect(&dataQueue, SIGNAL(finished()), &dataQueue, SLOT(deleteLater()));
|
||||
DataLoader *loader = new DataLoader();
|
||||
loader->moveToThread(&dataQueue);
|
||||
dataQueue.start();
|
||||
|
||||
connect(ui->requestDataBtn, SIGNAL(clicked(bool)), this, SLOT(requestData()));
|
||||
file = nix::File::open("/home/grewe/zwischenlager/2017-08-17-af-invivo-1/2017-08-17-af-invivo-1.nix",
|
||||
nix::FileMode::ReadOnly);
|
||||
|
||||
//file = nix::File::open("/Users/jan/zwischenlager/threading_test/event_queue/DataService/data/2017-08-17-af-invivo-1.nix",
|
||||
// nix::FileMode::ReadOnly);
|
||||
nix::Block b = file.getBlock(0);
|
||||
this->voltage = b.getDataArray("V-1");
|
||||
this->eod = b.getDataArray("EOD");
|
||||
|
||||
voltageChart = new QChart();
|
||||
voltageChart->legend()->hide();
|
||||
//voltageChart->createDefaultAxes();
|
||||
|
||||
eodChart = new QChart();
|
||||
eodChart->legend()->hide();
|
||||
//eodChart->createDefaultAxes();
|
||||
|
||||
|
||||
chartMap.insert(std::pair<std::string, QChart*>(voltage.id(), voltageChart));
|
||||
chartMap.insert(std::pair<std::string, QChart*>(eod.id(), eodChart));
|
||||
|
||||
voltageChart->setTitle(QString::fromStdString(this->voltage.name()));
|
||||
eodChart->setTitle(QString::fromStdString(this->eod.name()));
|
||||
QMargins margins = voltageChart->margins();
|
||||
int marg1 = margins.left();
|
||||
margins.setLeft(marg1 * 4);
|
||||
eodChart->setMargins(margins);
|
||||
voltageView = new QtCharts::QChartView(voltageChart);
|
||||
eodView = new QtCharts::QChartView(eodChart);
|
||||
|
||||
voltageView->setRenderHint(QPainter::Antialiasing);
|
||||
eodView->setRenderHint(QPainter::Antialiasing);
|
||||
ui->vbox->addWidget(voltageView);
|
||||
ui->vbox->addWidget(eodView);
|
||||
}
|
||||
|
||||
|
||||
MainWindow::~MainWindow() {
|
||||
if (file) {
|
||||
file.close();
|
||||
}
|
||||
//dataServiceThread.quit();
|
||||
//dataServiceThread.wait();
|
||||
dataQueue.stop();
|
||||
dataQueue.quit();
|
||||
dataQueue.wait();
|
||||
delete ui;
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::dataReady(QString requestId) {
|
||||
DataResult1D data = dataQueue.getData(requestId);
|
||||
if (data.id.empty()) {
|
||||
return;
|
||||
}
|
||||
ConvertToSeries *task = new ConvertToSeries();
|
||||
QLineSeries *series = new QLineSeries();
|
||||
task->setData(series, data);
|
||||
connect(task, SIGNAL(dataConverted(QLineSeries*,QString)), this, SLOT(dataConverted(QLineSeries*,QString)));
|
||||
QThreadPool::globalInstance()->start(task);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::dataConverted(QLineSeries *series, QString entityId) {
|
||||
QPen pen = series->pen();
|
||||
pen.setWidth(1);
|
||||
series->setPen(pen);
|
||||
chartMap[entityId.toStdString()]->addSeries(series);
|
||||
}
|
||||
|
||||
|
||||
void MainWindow::requestData() {
|
||||
if (voltage && eod) {
|
||||
nix::NDSize count(1, 10000);
|
||||
nix::NDSize start(1, 0);
|
||||
std::string vId, eodId;
|
||||
dataQueue.requestData(voltage, count, start, vId);
|
||||
dataQueue.requestData(eod, count, start, eodId);
|
||||
}
|
||||
}
|
46
mainwindow.h
Normal file
46
mainwindow.h
Normal file
@ -0,0 +1,46 @@
|
||||
#ifndef MAINWINDOW_H
|
||||
#define MAINWINDOW_H
|
||||
|
||||
#include <QMainWindow>
|
||||
//#include <QThread>
|
||||
#include <QtCharts>
|
||||
#include <nix.hpp>
|
||||
|
||||
#include "dataservice.h"
|
||||
#include "dataqueue.h"
|
||||
#include "dataresult1d.h"
|
||||
|
||||
Q_DECLARE_METATYPE(DataResult1D)
|
||||
|
||||
namespace Ui {
|
||||
class MainWindow;
|
||||
}
|
||||
|
||||
class MainWindow : public QMainWindow
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit MainWindow(QWidget *parent = 0);
|
||||
~MainWindow();
|
||||
|
||||
public slots:
|
||||
void requestData();
|
||||
void dataReady(QString requestId);
|
||||
void dataConverted(QLineSeries *series, QString entityId);
|
||||
|
||||
private:
|
||||
Ui::MainWindow *ui;
|
||||
//QThread dataServiceThread;
|
||||
//DataService *dataService;
|
||||
DataQueue dataQueue;
|
||||
nix::DataArray voltage, eod;
|
||||
nix::File file;
|
||||
QtCharts::QChartView *voltageView;
|
||||
QtCharts::QChartView *eodView;
|
||||
QtCharts::QChart *voltageChart;
|
||||
QtCharts::QChart *eodChart;
|
||||
std::map<std::string, QtCharts::QChart*> chartMap;
|
||||
};
|
||||
|
||||
#endif // MAINWINDOW_H
|
57
mainwindow.ui
Normal file
57
mainwindow.ui
Normal file
@ -0,0 +1,57 @@
|
||||
<?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>400</width>
|
||||
<height>300</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
<string>MainWindow</string>
|
||||
</property>
|
||||
<widget class="QWidget" name="centralWidget">
|
||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="vbox">
|
||||
<property name="rightMargin">
|
||||
<number>2</number>
|
||||
</property>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QPushButton" name="requestDataBtn">
|
||||
<property name="text">
|
||||
<string>request data</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QMenuBar" name="menuBar">
|
||||
<property name="geometry">
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>400</width>
|
||||
<height>28</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"/>
|
||||
<resources/>
|
||||
<connections/>
|
||||
</ui>
|
Loading…
Reference in New Issue
Block a user