Compare commits

...

10 Commits

Author SHA1 Message Date
JF
1b1f2fed8f Ajout des stations de la phase 2 2023-09-20 09:32:59 -04:00
JF
a493a5054e Backup connecteurs_BAK.png 2020-04-30 12:34:09 -04:00
JF
d27459602d Développement et correction de bugs.
V1.2
2019-12-06 12:25:23 -05:00
JF
90f0f33252 V1.0. Premier release 2019-05-14 11:47:17 -04:00
JF
8342f88720 Dev 2019-05-13 11:49:37 -04:00
JF
ca1fd2a4aa gitgnore 2019-05-13 08:37:52 -04:00
JF
f5b3b61ce5 gitignore 2019-05-13 08:35:56 -04:00
JF
110f96c536 Dev 2019-05-10 17:11:48 -04:00
JF
2423aa27c3 Dev 2019-05-10 16:47:43 -04:00
JF
d2a37c3b5f Dev 2019-05-08 14:17:31 -04:00
58 changed files with 3848 additions and 781 deletions

3
.gitignore vendored
View File

@ -3,3 +3,6 @@ release
/OutilModbus.pro.user /OutilModbus.pro.user
/object_script.OutilModbus.Debug /object_script.OutilModbus.Debug
/object_script.OutilModbus.Release /object_script.OutilModbus.Release
/%SystemDrive%
/CableTestBench.pro.user
/Rapports

View File

@ -33,7 +33,12 @@ SOURCES += \
Sources/CableTestEngine.cpp \ Sources/CableTestEngine.cpp \
Sources/OptionsPage.cpp \ Sources/OptionsPage.cpp \
Sources/CableTestBenchDefs.cpp \ Sources/CableTestBenchDefs.cpp \
Sources/IOModulesInterface.cpp Sources/IOModulesInterface.cpp \
Sources/InputConnector.cpp \
Sources/OutputConnector.cpp \
Sources/CableParametersData.cpp \
Sources/AutomatedTestReport.cpp \
Sources/TestBenchSettings.cpp
HEADERS += \ HEADERS += \
Sources/MainWindow.h \ Sources/MainWindow.h \
@ -53,7 +58,13 @@ HEADERS += \
Sources/TestReport.h \ Sources/TestReport.h \
Sources/CableTestEngine.h \ Sources/CableTestEngine.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/IOModulesInterface.h Sources/IOModulesInterface.h \
Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestBenchVersion.h \
Sources/CableParametersData.h \
Sources/AutomatedTestReport.h \
Sources/TestBenchSettings.h
FORMS += \ FORMS += \
Sources/CMainPage.ui \ Sources/CMainPage.ui \

View File

@ -1,239 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by Qt Creator 2.6.2, 2019-05-03T13:46:28. -->
<qtcreator>
<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="QString" 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="QString" 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="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</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">Qt 4.8.3</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Qt 4.8.3</value>
<value type="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">{962e6995-bc73-45ee-a3d6-d72a1ed3b9df}</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">
<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="QByteArray" 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>
</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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<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="QByteArray" 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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<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="QByteArray" 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">true</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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">C:/ZoneTest/CableTestBench</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<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="QByteArray" 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>
</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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<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="QByteArray" 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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<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="QByteArray" 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">true</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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">C:/ZoneTest/CableTestBench</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="QByteArray" 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="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.Project.UseGlobal">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.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<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="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">CableTestBench</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QByteArray" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/ZoneTest/CableTestBench/CableTestBench.pro</value>
<value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">CableTestBench.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">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.EnvironmentId</variable>
<value type="QString">{e7f062a5-06e1-4f66-ab2c-67d14d6f866a}</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">12</value>
</data>
</qtcreator>

BIN
Cablotron.csf Normal file

Binary file not shown.

View File

@ -1,14 +1,14 @@
############################################################################# #############################################################################
# Makefile for building: CableTestBench # Makefile for building: CableTestBench
# Generated by qmake (2.01a) (Qt 4.8.1) on: Fri May 3 13:12:37 2019 # Generated by qmake (2.01a) (Qt 4.8.1) on: Thu Sep 19 06:47:00 2019
# Project: CableTestBench.pro # Project: CableTestBench.pro
# Template: app # Template: app
# Command: c:\Qt\4.8.1\bin\qmake.exe -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile CableTestBench.pro # Command: c:\Qt\4.8.1\bin\qmake.exe -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=release -o Makefile CableTestBench.pro
############################################################################# #############################################################################
first: debug first: release
install: debug-install install: release-install
uninstall: debug-uninstall uninstall: release-uninstall
MAKEFILE = Makefile MAKEFILE = Makefile
QMAKE = c:\Qt\4.8.1\bin\qmake.exe QMAKE = c:\Qt\4.8.1\bin\qmake.exe
DEL_FILE = del DEL_FILE = del
@ -27,25 +27,9 @@ MOVE = move
CHK_DIR_EXISTS= if not exist CHK_DIR_EXISTS= if not exist
MKDIR = mkdir MKDIR = mkdir
SUBTARGETS = \ SUBTARGETS = \
debug \ release \
release debug
debug: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_default: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug first
debug-all: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
release: $(MAKEFILE).Release FORCE release: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release $(MAKE) -f $(MAKEFILE).Release
release-make_default: $(MAKEFILE).Release FORCE release-make_default: $(MAKEFILE).Release FORCE
@ -62,6 +46,22 @@ release-install: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release install $(MAKE) -f $(MAKEFILE).Release install
release-uninstall: $(MAKEFILE).Release FORCE release-uninstall: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall $(MAKE) -f $(MAKEFILE).Release uninstall
debug: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_default: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug first
debug-all: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall
Makefile: CableTestBench.pro ../../Qt/4.8.1/mkspecs/win32-g++/qmake.conf ../../Qt/4.8.1/mkspecs/qconfig.pri \ Makefile: CableTestBench.pro ../../Qt/4.8.1/mkspecs/win32-g++/qmake.conf ../../Qt/4.8.1/mkspecs/qconfig.pri \
../../Qt/4.8.1/mkspecs/modules/qt_webkit_version.pri \ ../../Qt/4.8.1/mkspecs/modules/qt_webkit_version.pri \
@ -70,11 +70,10 @@ Makefile: CableTestBench.pro ../../Qt/4.8.1/mkspecs/win32-g++/qmake.conf ../../
../../Qt/4.8.1/mkspecs/features/exclusive_builds.prf \ ../../Qt/4.8.1/mkspecs/features/exclusive_builds.prf \
../../Qt/4.8.1/mkspecs/features/default_pre.prf \ ../../Qt/4.8.1/mkspecs/features/default_pre.prf \
../../Qt/4.8.1/mkspecs/features/win32/default_pre.prf \ ../../Qt/4.8.1/mkspecs/features/win32/default_pre.prf \
../../Qt/4.8.1/mkspecs/features/debug.prf \ ../../Qt/4.8.1/mkspecs/features/release.prf \
../../Qt/4.8.1/mkspecs/features/debug_and_release.prf \ ../../Qt/4.8.1/mkspecs/features/debug_and_release.prf \
../../Qt/4.8.1/mkspecs/features/default_post.prf \ ../../Qt/4.8.1/mkspecs/features/default_post.prf \
../../Qt/4.8.1/mkspecs/features/win32/default_post.prf \ ../../Qt/4.8.1/mkspecs/features/win32/default_post.prf \
../../Qt/4.8.1/mkspecs/features/declarative_debug.prf \
../../Qt/4.8.1/mkspecs/features/win32/rtti.prf \ ../../Qt/4.8.1/mkspecs/features/win32/rtti.prf \
../../Qt/4.8.1/mkspecs/features/win32/exceptions.prf \ ../../Qt/4.8.1/mkspecs/features/win32/exceptions.prf \
../../Qt/4.8.1/mkspecs/features/win32/stl.prf \ ../../Qt/4.8.1/mkspecs/features/win32/stl.prf \
@ -89,8 +88,8 @@ Makefile: CableTestBench.pro ../../Qt/4.8.1/mkspecs/win32-g++/qmake.conf ../../
../../Qt/4.8.1/mkspecs/features/yacc.prf \ ../../Qt/4.8.1/mkspecs/features/yacc.prf \
../../Qt/4.8.1/mkspecs/features/lex.prf \ ../../Qt/4.8.1/mkspecs/features/lex.prf \
../../Qt/4.8.1/mkspecs/features/include_source_dir.prf \ ../../Qt/4.8.1/mkspecs/features/include_source_dir.prf \
c:/Qt/4.8.1/lib/qtmaind.prl c:/Qt/4.8.1/lib/qtmain.prl
$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile CableTestBench.pro $(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=release -o Makefile CableTestBench.pro
..\..\Qt\4.8.1\mkspecs\qconfig.pri: ..\..\Qt\4.8.1\mkspecs\qconfig.pri:
..\..\Qt\4.8.1\mkspecs\modules\qt_webkit_version.pri: ..\..\Qt\4.8.1\mkspecs\modules\qt_webkit_version.pri:
..\..\Qt\4.8.1\mkspecs\features\qt_functions.prf: ..\..\Qt\4.8.1\mkspecs\features\qt_functions.prf:
@ -98,11 +97,10 @@ Makefile: CableTestBench.pro ../../Qt/4.8.1/mkspecs/win32-g++/qmake.conf ../../
..\..\Qt\4.8.1\mkspecs\features\exclusive_builds.prf: ..\..\Qt\4.8.1\mkspecs\features\exclusive_builds.prf:
..\..\Qt\4.8.1\mkspecs\features\default_pre.prf: ..\..\Qt\4.8.1\mkspecs\features\default_pre.prf:
..\..\Qt\4.8.1\mkspecs\features\win32\default_pre.prf: ..\..\Qt\4.8.1\mkspecs\features\win32\default_pre.prf:
..\..\Qt\4.8.1\mkspecs\features\debug.prf: ..\..\Qt\4.8.1\mkspecs\features\release.prf:
..\..\Qt\4.8.1\mkspecs\features\debug_and_release.prf: ..\..\Qt\4.8.1\mkspecs\features\debug_and_release.prf:
..\..\Qt\4.8.1\mkspecs\features\default_post.prf: ..\..\Qt\4.8.1\mkspecs\features\default_post.prf:
..\..\Qt\4.8.1\mkspecs\features\win32\default_post.prf: ..\..\Qt\4.8.1\mkspecs\features\win32\default_post.prf:
..\..\Qt\4.8.1\mkspecs\features\declarative_debug.prf:
..\..\Qt\4.8.1\mkspecs\features\win32\rtti.prf: ..\..\Qt\4.8.1\mkspecs\features\win32\rtti.prf:
..\..\Qt\4.8.1\mkspecs\features\win32\exceptions.prf: ..\..\Qt\4.8.1\mkspecs\features\win32\exceptions.prf:
..\..\Qt\4.8.1\mkspecs\features\win32\stl.prf: ..\..\Qt\4.8.1\mkspecs\features\win32\stl.prf:
@ -117,33 +115,33 @@ Makefile: CableTestBench.pro ../../Qt/4.8.1/mkspecs/win32-g++/qmake.conf ../../
..\..\Qt\4.8.1\mkspecs\features\yacc.prf: ..\..\Qt\4.8.1\mkspecs\features\yacc.prf:
..\..\Qt\4.8.1\mkspecs\features\lex.prf: ..\..\Qt\4.8.1\mkspecs\features\lex.prf:
..\..\Qt\4.8.1\mkspecs\features\include_source_dir.prf: ..\..\Qt\4.8.1\mkspecs\features\include_source_dir.prf:
c:\Qt\4.8.1\lib\qtmaind.prl: c:\Qt\4.8.1\lib\qtmain.prl:
qmake: qmake_all FORCE qmake: qmake_all FORCE
@$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile CableTestBench.pro @$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=release -o Makefile CableTestBench.pro
qmake_all: FORCE qmake_all: FORCE
make_default: debug-make_default release-make_default FORCE make_default: release-make_default debug-make_default FORCE
make_first: debug-make_first release-make_first FORCE make_first: release-make_first debug-make_first FORCE
all: debug-all release-all FORCE all: release-all debug-all FORCE
clean: debug-clean release-clean FORCE clean: release-clean debug-clean FORCE
distclean: debug-distclean release-distclean FORCE distclean: release-distclean debug-distclean FORCE
-$(DEL_FILE) Makefile -$(DEL_FILE) Makefile
check: first check: first
debug-mocclean: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocclean
release-mocclean: $(MAKEFILE).Release release-mocclean: $(MAKEFILE).Release
$(MAKE) -f $(MAKEFILE).Release mocclean $(MAKE) -f $(MAKEFILE).Release mocclean
mocclean: debug-mocclean release-mocclean debug-mocclean: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocclean
mocclean: release-mocclean debug-mocclean
debug-mocables: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocables
release-mocables: $(MAKEFILE).Release release-mocables: $(MAKEFILE).Release
$(MAKE) -f $(MAKEFILE).Release mocables $(MAKE) -f $(MAKEFILE).Release mocables
mocables: debug-mocables release-mocables debug-mocables: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocables
mocables: release-mocables debug-mocables
FORCE: FORCE:
$(MAKEFILE).Debug: Makefile
$(MAKEFILE).Release: Makefile $(MAKEFILE).Release: Makefile
$(MAKEFILE).Debug: Makefile

View File

@ -1,6 +1,6 @@
############################################################################# #############################################################################
# Makefile for building: CableTestBench # Makefile for building: CableTestBench
# Generated by qmake (2.01a) (Qt 4.8.1) on: Fri May 3 13:12:37 2019 # Generated by qmake (2.01a) (Qt 4.8.1) on: Thu Sep 19 06:47:00 2019
# Project: CableTestBench.pro # Project: CableTestBench.pro
# Template: app # Template: app
############################################################################# #############################################################################
@ -58,7 +58,12 @@ SOURCES = Sources\MainWindow.cpp \
Sources\CableTestEngine.cpp \ Sources\CableTestEngine.cpp \
Sources\OptionsPage.cpp \ Sources\OptionsPage.cpp \
Sources\CableTestBenchDefs.cpp \ Sources\CableTestBenchDefs.cpp \
Sources\IOModulesInterface.cpp debug\moc_MainWindow.cpp \ Sources\IOModulesInterface.cpp \
Sources\InputConnector.cpp \
Sources\OutputConnector.cpp \
Sources\CableParametersData.cpp \
Sources\AutomatedTestReport.cpp \
Sources\TestBenchSettings.cpp debug\moc_MainWindow.cpp \
debug\moc_MainPage.cpp \ debug\moc_MainPage.cpp \
debug\moc_CableTestBench.cpp \ debug\moc_CableTestBench.cpp \
debug\moc_VisualInspectionPage.cpp \ debug\moc_VisualInspectionPage.cpp \
@ -67,7 +72,11 @@ SOURCES = Sources\MainWindow.cpp \
debug\moc_ConnectorClickZoneWidget.cpp \ debug\moc_ConnectorClickZoneWidget.cpp \
debug\moc_ONOFFStatusWidget.cpp \ debug\moc_ONOFFStatusWidget.cpp \
debug\moc_ConnectorTestVisualizationWidget.cpp \ debug\moc_ConnectorTestVisualizationWidget.cpp \
debug\moc_OptionsPage.cpp debug\moc_TestReport.cpp \
debug\moc_CableTestEngine.cpp \
debug\moc_OptionsPage.cpp \
debug\moc_IOModulesInterface.cpp \
debug\moc_AutomatedTestReport.cpp
OBJECTS = debug/MainWindow.o \ OBJECTS = debug/MainWindow.o \
debug/main.o \ debug/main.o \
debug/MainPage.o \ debug/MainPage.o \
@ -86,6 +95,11 @@ OBJECTS = debug/MainWindow.o \
debug/OptionsPage.o \ debug/OptionsPage.o \
debug/CableTestBenchDefs.o \ debug/CableTestBenchDefs.o \
debug/IOModulesInterface.o \ debug/IOModulesInterface.o \
debug/InputConnector.o \
debug/OutputConnector.o \
debug/CableParametersData.o \
debug/AutomatedTestReport.o \
debug/TestBenchSettings.o \
debug/moc_MainWindow.o \ debug/moc_MainWindow.o \
debug/moc_MainPage.o \ debug/moc_MainPage.o \
debug/moc_CableTestBench.o \ debug/moc_CableTestBench.o \
@ -95,7 +109,11 @@ OBJECTS = debug/MainWindow.o \
debug/moc_ConnectorClickZoneWidget.o \ debug/moc_ConnectorClickZoneWidget.o \
debug/moc_ONOFFStatusWidget.o \ debug/moc_ONOFFStatusWidget.o \
debug/moc_ConnectorTestVisualizationWidget.o \ debug/moc_ConnectorTestVisualizationWidget.o \
debug/moc_OptionsPage.o debug/moc_TestReport.o \
debug/moc_CableTestEngine.o \
debug/moc_OptionsPage.o \
debug/moc_IOModulesInterface.o \
debug/moc_AutomatedTestReport.o
DIST = DIST =
QMAKE_TARGET = CableTestBench QMAKE_TARGET = CableTestBench
DESTDIR = debug\ #avoid trailing-slash linebreak DESTDIR = debug\ #avoid trailing-slash linebreak
@ -127,13 +145,13 @@ $(DESTDIR_TARGET): ui_CMainPage.h ui_VisualInspectionPage.h ui_CableTestPage.h u
$(LINK) $(LFLAGS) -o $(DESTDIR_TARGET) object_script.CableTestBench.Debug $(LIBS) $(LINK) $(LFLAGS) -o $(DESTDIR_TARGET) object_script.CableTestBench.Debug $(LIBS)
qmake: FORCE qmake: FORCE
@$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile.Debug CableTestBench.pro @$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=release -o Makefile.Debug CableTestBench.pro
dist: dist:
$(ZIP) CableTestBench.zip $(SOURCES) $(DIST) CableTestBench.pro ..\..\Qt\4.8.1\mkspecs\qconfig.pri ..\..\Qt\4.8.1\mkspecs\modules\qt_webkit_version.pri ..\..\Qt\4.8.1\mkspecs\features\qt_functions.prf ..\..\Qt\4.8.1\mkspecs\features\qt_config.prf ..\..\Qt\4.8.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.8.1\mkspecs\features\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\debug.prf ..\..\Qt\4.8.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.8.1\mkspecs\features\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\build_pass.prf ..\..\Qt\4.8.1\mkspecs\features\declarative_debug.prf ..\..\Qt\4.8.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.8.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.8.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.8.1\mkspecs\features\shared.prf ..\..\Qt\4.8.1\mkspecs\features\warn_on.prf ..\..\Qt\4.8.1\mkspecs\features\qt.prf ..\..\Qt\4.8.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.8.1\mkspecs\features\moc.prf ..\..\Qt\4.8.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.8.1\mkspecs\features\resources.prf ..\..\Qt\4.8.1\mkspecs\features\uic.prf ..\..\Qt\4.8.1\mkspecs\features\yacc.prf ..\..\Qt\4.8.1\mkspecs\features\lex.prf ..\..\Qt\4.8.1\mkspecs\features\include_source_dir.prf c:\Qt\4.8.1\lib\qtmaind.prl HEADERS RESOURCES IMAGES SOURCES OBJECTIVE_SOURCES FORMS YACCSOURCES YACCSOURCES LEXSOURCES $(ZIP) CableTestBench.zip $(SOURCES) $(DIST) CableTestBench.pro ..\..\Qt\4.8.1\mkspecs\qconfig.pri ..\..\Qt\4.8.1\mkspecs\modules\qt_webkit_version.pri ..\..\Qt\4.8.1\mkspecs\features\qt_functions.prf ..\..\Qt\4.8.1\mkspecs\features\qt_config.prf ..\..\Qt\4.8.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.8.1\mkspecs\features\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\debug.prf ..\..\Qt\4.8.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.8.1\mkspecs\features\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\build_pass.prf ..\..\Qt\4.8.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.8.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.8.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.8.1\mkspecs\features\shared.prf ..\..\Qt\4.8.1\mkspecs\features\warn_on.prf ..\..\Qt\4.8.1\mkspecs\features\qt.prf ..\..\Qt\4.8.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.8.1\mkspecs\features\moc.prf ..\..\Qt\4.8.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.8.1\mkspecs\features\resources.prf ..\..\Qt\4.8.1\mkspecs\features\uic.prf ..\..\Qt\4.8.1\mkspecs\features\yacc.prf ..\..\Qt\4.8.1\mkspecs\features\lex.prf ..\..\Qt\4.8.1\mkspecs\features\include_source_dir.prf c:\Qt\4.8.1\lib\qtmaind.prl HEADERS RESOURCES IMAGES SOURCES OBJECTIVE_SOURCES FORMS YACCSOURCES YACCSOURCES LEXSOURCES
clean: compiler_clean clean: compiler_clean
-$(DEL_FILE) debug\MainWindow.o debug\main.o debug\MainPage.o debug\CableTestBench.o debug\VisualInspectionPage.o debug\ConnectorSelectWidget.o debug\CableTestPage.o debug\ConnectorClickZoneWidget.o debug\ONOFFStatusWidget.o debug\ConnectorTestVisualizationWidget.o debug\Connector.o debug\Cable.o debug\VisualInspectionResult.o debug\TestReport.o debug\CableTestEngine.o debug\OptionsPage.o debug\CableTestBenchDefs.o debug\IOModulesInterface.o debug\moc_MainWindow.o debug\moc_MainPage.o debug\moc_CableTestBench.o debug\moc_VisualInspectionPage.o debug\moc_ConnectorSelectWidget.o debug\moc_CableTestPage.o debug\moc_ConnectorClickZoneWidget.o debug\moc_ONOFFStatusWidget.o debug\moc_ConnectorTestVisualizationWidget.o debug\moc_OptionsPage.o -$(DEL_FILE) debug\MainWindow.o debug\main.o debug\MainPage.o debug\CableTestBench.o debug\VisualInspectionPage.o debug\ConnectorSelectWidget.o debug\CableTestPage.o debug\ConnectorClickZoneWidget.o debug\ONOFFStatusWidget.o debug\ConnectorTestVisualizationWidget.o debug\Connector.o debug\Cable.o debug\VisualInspectionResult.o debug\TestReport.o debug\CableTestEngine.o debug\OptionsPage.o debug\CableTestBenchDefs.o debug\IOModulesInterface.o debug\InputConnector.o debug\OutputConnector.o debug\CableParametersData.o debug\AutomatedTestReport.o debug\TestBenchSettings.o debug\moc_MainWindow.o debug\moc_MainPage.o debug\moc_CableTestBench.o debug\moc_VisualInspectionPage.o debug\moc_ConnectorSelectWidget.o debug\moc_CableTestPage.o debug\moc_ConnectorClickZoneWidget.o debug\moc_ONOFFStatusWidget.o debug\moc_ConnectorTestVisualizationWidget.o debug\moc_TestReport.o debug\moc_CableTestEngine.o debug\moc_OptionsPage.o debug\moc_IOModulesInterface.o debug\moc_AutomatedTestReport.o
distclean: clean distclean: clean
-$(DEL_FILE) $(DESTDIR_TARGET) -$(DEL_FILE) $(DESTDIR_TARGET)
@ -145,9 +163,9 @@ mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all mocables: compiler_moc_header_make_all compiler_moc_source_make_all
compiler_moc_header_make_all: debug/moc_MainWindow.cpp debug/moc_MainPage.cpp debug/moc_CableTestBench.cpp debug/moc_VisualInspectionPage.cpp debug/moc_ConnectorSelectWidget.cpp debug/moc_CableTestPage.cpp debug/moc_ConnectorClickZoneWidget.cpp debug/moc_ONOFFStatusWidget.cpp debug/moc_ConnectorTestVisualizationWidget.cpp debug/moc_OptionsPage.cpp compiler_moc_header_make_all: debug/moc_MainWindow.cpp debug/moc_MainPage.cpp debug/moc_CableTestBench.cpp debug/moc_VisualInspectionPage.cpp debug/moc_ConnectorSelectWidget.cpp debug/moc_CableTestPage.cpp debug/moc_ConnectorClickZoneWidget.cpp debug/moc_ONOFFStatusWidget.cpp debug/moc_ConnectorTestVisualizationWidget.cpp debug/moc_TestReport.cpp debug/moc_CableTestEngine.cpp debug/moc_OptionsPage.cpp debug/moc_IOModulesInterface.cpp debug/moc_AutomatedTestReport.cpp
compiler_moc_header_clean: compiler_moc_header_clean:
-$(DEL_FILE) debug\moc_MainWindow.cpp debug\moc_MainPage.cpp debug\moc_CableTestBench.cpp debug\moc_VisualInspectionPage.cpp debug\moc_ConnectorSelectWidget.cpp debug\moc_CableTestPage.cpp debug\moc_ConnectorClickZoneWidget.cpp debug\moc_ONOFFStatusWidget.cpp debug\moc_ConnectorTestVisualizationWidget.cpp debug\moc_OptionsPage.cpp -$(DEL_FILE) debug\moc_MainWindow.cpp debug\moc_MainPage.cpp debug\moc_CableTestBench.cpp debug\moc_VisualInspectionPage.cpp debug\moc_ConnectorSelectWidget.cpp debug\moc_CableTestPage.cpp debug\moc_ConnectorClickZoneWidget.cpp debug\moc_ONOFFStatusWidget.cpp debug\moc_ConnectorTestVisualizationWidget.cpp debug\moc_TestReport.cpp debug\moc_CableTestEngine.cpp debug\moc_OptionsPage.cpp debug\moc_IOModulesInterface.cpp debug\moc_AutomatedTestReport.cpp
debug/moc_MainWindow.cpp: Sources/MainPage.h \ debug/moc_MainWindow.cpp: Sources/MainPage.h \
Sources/VisualInspectionPage.h \ Sources/VisualInspectionPage.h \
Sources/VisualInspectionResult.h \ Sources/VisualInspectionResult.h \
@ -155,6 +173,7 @@ debug/moc_MainWindow.cpp: Sources/MainPage.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/MainWindow.h Sources/MainWindow.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\MainWindow.h -o debug\moc_MainWindow.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\MainWindow.h -o debug\moc_MainWindow.cpp
@ -169,9 +188,17 @@ debug/moc_CableTestBench.cpp: Sources/MainWindow.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \ Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h \
Sources/CableTestBench.h Sources/CableTestBench.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\CableTestBench.h -o debug\moc_CableTestBench.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\CableTestBench.h -o debug\moc_CableTestBench.cpp
@ -198,9 +225,39 @@ debug/moc_ConnectorTestVisualizationWidget.cpp: Sources/Widgets/ONOFFStatusWidge
Sources/Widgets/ConnectorTestVisualizationWidget.h Sources/Widgets/ConnectorTestVisualizationWidget.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\Widgets\ConnectorTestVisualizationWidget.h -o debug\moc_ConnectorTestVisualizationWidget.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\Widgets\ConnectorTestVisualizationWidget.h -o debug\moc_ConnectorTestVisualizationWidget.cpp
debug/moc_OptionsPage.cpp: Sources/OptionsPage.h debug/moc_TestReport.cpp: Sources/GlobalDefine.h \
Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/TestReport.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\TestReport.h -o debug\moc_TestReport.cpp
debug/moc_CableTestEngine.cpp: Sources/Cable.h \
Sources/CableTestBenchDefs.h \
Sources/InputConnector.h \
Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/OutputConnector.h \
Sources/GlobalDefine.h \
Sources/TestReport.h \
Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\CableTestEngine.h -o debug\moc_CableTestEngine.cpp
debug/moc_OptionsPage.cpp: Sources/TestBenchSettings.h \
Sources/OptionsPage.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\OptionsPage.h -o debug\moc_OptionsPage.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\OptionsPage.h -o debug\moc_OptionsPage.cpp
debug/moc_IOModulesInterface.cpp: Sources/IOModulesInterface.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\IOModulesInterface.h -o debug\moc_IOModulesInterface.cpp
debug/moc_AutomatedTestReport.cpp: Sources/AutomatedTestReport.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\AutomatedTestReport.h -o debug\moc_AutomatedTestReport.cpp
compiler_rcc_make_all: compiler_rcc_make_all:
compiler_rcc_clean: compiler_rcc_clean:
compiler_image_collection_make_all: qmake_image_collection.cpp compiler_image_collection_make_all: qmake_image_collection.cpp
@ -243,10 +300,18 @@ debug/MainWindow.o: Sources/MainWindow.cpp Sources/MainWindow.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/CableTestBench.h \ Sources/CableTestBench.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\MainWindow.o Sources\MainWindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\MainWindow.o Sources\MainWindow.cpp
debug/main.o: Sources/main.cpp Sources/CableTestBench.h \ debug/main.o: Sources/main.cpp Sources/CableTestBench.h \
@ -258,9 +323,17 @@ debug/main.o: Sources/main.cpp Sources/CableTestBench.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\main.o Sources\main.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\main.o Sources\main.cpp
debug/MainPage.o: Sources/MainPage.cpp Sources/MainPage.h \ debug/MainPage.o: Sources/MainPage.cpp Sources/MainPage.h \
@ -276,9 +349,17 @@ debug/CableTestBench.o: Sources/CableTestBench.cpp Sources/CableTestBench.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestBench.o Sources\CableTestBench.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestBench.o Sources\CableTestBench.cpp
debug/VisualInspectionPage.o: Sources/VisualInspectionPage.cpp Sources/VisualInspectionPage.h \ debug/VisualInspectionPage.o: Sources/VisualInspectionPage.cpp Sources/VisualInspectionPage.h \
@ -291,9 +372,17 @@ debug/VisualInspectionPage.o: Sources/VisualInspectionPage.cpp Sources/VisualIns
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\VisualInspectionPage.o Sources\VisualInspectionPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\VisualInspectionPage.o Sources\VisualInspectionPage.cpp
debug/ConnectorSelectWidget.o: Sources/Widgets/ConnectorSelectWidget.cpp Sources/Widgets/ConnectorSelectWidget.h \ debug/ConnectorSelectWidget.o: Sources/Widgets/ConnectorSelectWidget.cpp Sources/Widgets/ConnectorSelectWidget.h \
@ -310,9 +399,17 @@ debug/CableTestPage.o: Sources/CableTestPage.cpp Sources/CableTestPage.h \
Sources/VisualInspectionResult.h \ Sources/VisualInspectionResult.h \
Sources/GlobalDefine.h \ Sources/GlobalDefine.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestPage.o Sources\CableTestPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestPage.o Sources\CableTestPage.cpp
debug/ConnectorClickZoneWidget.o: Sources/Widgets/ConnectorClickZoneWidget.cpp Sources/Widgets/ConnectorClickZoneWidget.h debug/ConnectorClickZoneWidget.o: Sources/Widgets/ConnectorClickZoneWidget.cpp Sources/Widgets/ConnectorClickZoneWidget.h
@ -327,12 +424,16 @@ debug/ConnectorTestVisualizationWidget.o: Sources/Widgets/ConnectorTestVisualiza
debug/Connector.o: Sources/Connector.cpp Sources/Connector.h \ debug/Connector.o: Sources/Connector.cpp Sources/Connector.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/IOModulesInterface.h \
Sources/GlobalDefine.h Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\Connector.o Sources\Connector.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\Connector.o Sources\Connector.cpp
debug/Cable.o: Sources/Cable.cpp Sources/Cable.h \ debug/Cable.o: Sources/Cable.cpp Sources/Cable.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/InputConnector.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/OutputConnector.h \
Sources/GlobalDefine.h Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\Cable.o Sources\Cable.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\Cable.o Sources\Cable.cpp
@ -342,26 +443,90 @@ debug/VisualInspectionResult.o: Sources/VisualInspectionResult.cpp Sources/Visua
debug/TestReport.o: Sources/TestReport.cpp Sources/TestReport.h \ debug/TestReport.o: Sources/TestReport.cpp Sources/TestReport.h \
Sources/GlobalDefine.h \ Sources/GlobalDefine.h \
Sources/VisualInspectionResult.h Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/TestBenchSettings.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\TestReport.o Sources\TestReport.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\TestReport.o Sources\TestReport.cpp
debug/CableTestEngine.o: Sources/CableTestEngine.cpp Sources/CableTestEngine.h \ debug/CableTestEngine.o: Sources/CableTestEngine.cpp Sources/CableTestEngine.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/InputConnector.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/GlobalDefine.h Sources/IOModulesInterface.h \
Sources/OutputConnector.h \
Sources/GlobalDefine.h \
Sources/TestReport.h \
Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestBench.h \
Sources/MainWindow.h \
Sources/MainPage.h \
Sources/VisualInspectionPage.h \
Sources/CableTestPage.h \
Sources/OptionsPage.h \
Sources/TestBenchSettings.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestEngine.o Sources\CableTestEngine.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestEngine.o Sources\CableTestEngine.cpp
debug/OptionsPage.o: Sources/OptionsPage.cpp Sources/OptionsPage.h \ debug/OptionsPage.o: Sources/OptionsPage.cpp Sources/OptionsPage.h \
ui_OptionsPage.h Sources/TestBenchSettings.h \
ui_OptionsPage.h \
Sources/GlobalDefine.h \
Sources/CableTestBench.h \
Sources/MainWindow.h \
Sources/MainPage.h \
Sources/VisualInspectionPage.h \
Sources/VisualInspectionResult.h \
Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \
Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \
Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\OptionsPage.o Sources\OptionsPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\OptionsPage.o Sources\OptionsPage.cpp
debug/CableTestBenchDefs.o: Sources/CableTestBenchDefs.cpp Sources/CableTestBenchDefs.h debug/CableTestBenchDefs.o: Sources/CableTestBenchDefs.cpp Sources/CableTestBenchDefs.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestBenchDefs.o Sources\CableTestBenchDefs.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableTestBenchDefs.o Sources\CableTestBenchDefs.cpp
debug/IOModulesInterface.o: Sources/IOModulesInterface.cpp Sources/IOModulesInterface.h debug/IOModulesInterface.o: Sources/IOModulesInterface.cpp Sources/IOModulesInterface.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\IOModulesInterface.o Sources\IOModulesInterface.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\IOModulesInterface.o Sources\IOModulesInterface.cpp
debug/InputConnector.o: Sources/InputConnector.cpp Sources/InputConnector.h \
Sources/Connector.h \
Sources/CableTestBenchDefs.h \
Sources/IOModulesInterface.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\InputConnector.o Sources\InputConnector.cpp
debug/OutputConnector.o: Sources/OutputConnector.cpp Sources/OutputConnector.h \
Sources/Connector.h \
Sources/CableTestBenchDefs.h \
Sources/IOModulesInterface.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\OutputConnector.o Sources\OutputConnector.cpp
debug/CableParametersData.o: Sources/CableParametersData.cpp Sources/CableParametersData.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\CableParametersData.o Sources\CableParametersData.cpp
debug/AutomatedTestReport.o: Sources/AutomatedTestReport.cpp Sources/AutomatedTestReport.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\AutomatedTestReport.o Sources\AutomatedTestReport.cpp
debug/TestBenchSettings.o: Sources/TestBenchSettings.cpp Sources/TestBenchSettings.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\TestBenchSettings.o Sources\TestBenchSettings.cpp
debug/moc_MainWindow.o: debug/moc_MainWindow.cpp debug/moc_MainWindow.o: debug/moc_MainWindow.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_MainWindow.o debug\moc_MainWindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_MainWindow.o debug\moc_MainWindow.cpp
@ -389,9 +554,21 @@ debug/moc_ONOFFStatusWidget.o: debug/moc_ONOFFStatusWidget.cpp
debug/moc_ConnectorTestVisualizationWidget.o: debug/moc_ConnectorTestVisualizationWidget.cpp debug/moc_ConnectorTestVisualizationWidget.o: debug/moc_ConnectorTestVisualizationWidget.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_ConnectorTestVisualizationWidget.o debug\moc_ConnectorTestVisualizationWidget.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_ConnectorTestVisualizationWidget.o debug\moc_ConnectorTestVisualizationWidget.cpp
debug/moc_TestReport.o: debug/moc_TestReport.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_TestReport.o debug\moc_TestReport.cpp
debug/moc_CableTestEngine.o: debug/moc_CableTestEngine.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_CableTestEngine.o debug\moc_CableTestEngine.cpp
debug/moc_OptionsPage.o: debug/moc_OptionsPage.cpp debug/moc_OptionsPage.o: debug/moc_OptionsPage.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_OptionsPage.o debug\moc_OptionsPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_OptionsPage.o debug\moc_OptionsPage.cpp
debug/moc_IOModulesInterface.o: debug/moc_IOModulesInterface.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_IOModulesInterface.o debug\moc_IOModulesInterface.cpp
debug/moc_AutomatedTestReport.o: debug/moc_AutomatedTestReport.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o debug\moc_AutomatedTestReport.o debug\moc_AutomatedTestReport.cpp
####### Install ####### Install
install: FORCE install: FORCE

View File

@ -1,6 +1,6 @@
############################################################################# #############################################################################
# Makefile for building: CableTestBench # Makefile for building: CableTestBench
# Generated by qmake (2.01a) (Qt 4.8.1) on: Fri May 3 13:12:37 2019 # Generated by qmake (2.01a) (Qt 4.8.1) on: Thu Sep 19 06:47:00 2019
# Project: CableTestBench.pro # Project: CableTestBench.pro
# Template: app # Template: app
############################################################################# #############################################################################
@ -58,7 +58,12 @@ SOURCES = Sources\MainWindow.cpp \
Sources\CableTestEngine.cpp \ Sources\CableTestEngine.cpp \
Sources\OptionsPage.cpp \ Sources\OptionsPage.cpp \
Sources\CableTestBenchDefs.cpp \ Sources\CableTestBenchDefs.cpp \
Sources\IOModulesInterface.cpp release\moc_MainWindow.cpp \ Sources\IOModulesInterface.cpp \
Sources\InputConnector.cpp \
Sources\OutputConnector.cpp \
Sources\CableParametersData.cpp \
Sources\AutomatedTestReport.cpp \
Sources\TestBenchSettings.cpp release\moc_MainWindow.cpp \
release\moc_MainPage.cpp \ release\moc_MainPage.cpp \
release\moc_CableTestBench.cpp \ release\moc_CableTestBench.cpp \
release\moc_VisualInspectionPage.cpp \ release\moc_VisualInspectionPage.cpp \
@ -67,7 +72,11 @@ SOURCES = Sources\MainWindow.cpp \
release\moc_ConnectorClickZoneWidget.cpp \ release\moc_ConnectorClickZoneWidget.cpp \
release\moc_ONOFFStatusWidget.cpp \ release\moc_ONOFFStatusWidget.cpp \
release\moc_ConnectorTestVisualizationWidget.cpp \ release\moc_ConnectorTestVisualizationWidget.cpp \
release\moc_OptionsPage.cpp release\moc_TestReport.cpp \
release\moc_CableTestEngine.cpp \
release\moc_OptionsPage.cpp \
release\moc_IOModulesInterface.cpp \
release\moc_AutomatedTestReport.cpp
OBJECTS = release/MainWindow.o \ OBJECTS = release/MainWindow.o \
release/main.o \ release/main.o \
release/MainPage.o \ release/MainPage.o \
@ -86,6 +95,11 @@ OBJECTS = release/MainWindow.o \
release/OptionsPage.o \ release/OptionsPage.o \
release/CableTestBenchDefs.o \ release/CableTestBenchDefs.o \
release/IOModulesInterface.o \ release/IOModulesInterface.o \
release/InputConnector.o \
release/OutputConnector.o \
release/CableParametersData.o \
release/AutomatedTestReport.o \
release/TestBenchSettings.o \
release/moc_MainWindow.o \ release/moc_MainWindow.o \
release/moc_MainPage.o \ release/moc_MainPage.o \
release/moc_CableTestBench.o \ release/moc_CableTestBench.o \
@ -95,7 +109,11 @@ OBJECTS = release/MainWindow.o \
release/moc_ConnectorClickZoneWidget.o \ release/moc_ConnectorClickZoneWidget.o \
release/moc_ONOFFStatusWidget.o \ release/moc_ONOFFStatusWidget.o \
release/moc_ConnectorTestVisualizationWidget.o \ release/moc_ConnectorTestVisualizationWidget.o \
release/moc_OptionsPage.o release/moc_TestReport.o \
release/moc_CableTestEngine.o \
release/moc_OptionsPage.o \
release/moc_IOModulesInterface.o \
release/moc_AutomatedTestReport.o
DIST = DIST =
QMAKE_TARGET = CableTestBench QMAKE_TARGET = CableTestBench
DESTDIR = release\ #avoid trailing-slash linebreak DESTDIR = release\ #avoid trailing-slash linebreak
@ -127,13 +145,13 @@ $(DESTDIR_TARGET): ui_CMainPage.h ui_VisualInspectionPage.h ui_CableTestPage.h u
$(LINK) $(LFLAGS) -o $(DESTDIR_TARGET) object_script.CableTestBench.Release $(LIBS) $(LINK) $(LFLAGS) -o $(DESTDIR_TARGET) object_script.CableTestBench.Release $(LIBS)
qmake: FORCE qmake: FORCE
@$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=declarative_debug -o Makefile.Release CableTestBench.pro @$(QMAKE) -spec ..\..\Qt\4.8.1\mkspecs\win32-g++ CONFIG+=release -o Makefile.Release CableTestBench.pro
dist: dist:
$(ZIP) CableTestBench.zip $(SOURCES) $(DIST) CableTestBench.pro ..\..\Qt\4.8.1\mkspecs\qconfig.pri ..\..\Qt\4.8.1\mkspecs\modules\qt_webkit_version.pri ..\..\Qt\4.8.1\mkspecs\features\qt_functions.prf ..\..\Qt\4.8.1\mkspecs\features\qt_config.prf ..\..\Qt\4.8.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.8.1\mkspecs\features\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\release.prf ..\..\Qt\4.8.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.8.1\mkspecs\features\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\build_pass.prf ..\..\Qt\4.8.1\mkspecs\features\declarative_debug.prf ..\..\Qt\4.8.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.8.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.8.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.8.1\mkspecs\features\shared.prf ..\..\Qt\4.8.1\mkspecs\features\warn_on.prf ..\..\Qt\4.8.1\mkspecs\features\qt.prf ..\..\Qt\4.8.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.8.1\mkspecs\features\moc.prf ..\..\Qt\4.8.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.8.1\mkspecs\features\resources.prf ..\..\Qt\4.8.1\mkspecs\features\uic.prf ..\..\Qt\4.8.1\mkspecs\features\yacc.prf ..\..\Qt\4.8.1\mkspecs\features\lex.prf ..\..\Qt\4.8.1\mkspecs\features\include_source_dir.prf c:\Qt\4.8.1\lib\qtmain.prl HEADERS RESOURCES IMAGES SOURCES OBJECTIVE_SOURCES FORMS YACCSOURCES YACCSOURCES LEXSOURCES $(ZIP) CableTestBench.zip $(SOURCES) $(DIST) CableTestBench.pro ..\..\Qt\4.8.1\mkspecs\qconfig.pri ..\..\Qt\4.8.1\mkspecs\modules\qt_webkit_version.pri ..\..\Qt\4.8.1\mkspecs\features\qt_functions.prf ..\..\Qt\4.8.1\mkspecs\features\qt_config.prf ..\..\Qt\4.8.1\mkspecs\features\exclusive_builds.prf ..\..\Qt\4.8.1\mkspecs\features\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_pre.prf ..\..\Qt\4.8.1\mkspecs\features\release.prf ..\..\Qt\4.8.1\mkspecs\features\debug_and_release.prf ..\..\Qt\4.8.1\mkspecs\features\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\win32\default_post.prf ..\..\Qt\4.8.1\mkspecs\features\build_pass.prf ..\..\Qt\4.8.1\mkspecs\features\win32\rtti.prf ..\..\Qt\4.8.1\mkspecs\features\win32\exceptions.prf ..\..\Qt\4.8.1\mkspecs\features\win32\stl.prf ..\..\Qt\4.8.1\mkspecs\features\shared.prf ..\..\Qt\4.8.1\mkspecs\features\warn_on.prf ..\..\Qt\4.8.1\mkspecs\features\qt.prf ..\..\Qt\4.8.1\mkspecs\features\win32\thread.prf ..\..\Qt\4.8.1\mkspecs\features\moc.prf ..\..\Qt\4.8.1\mkspecs\features\win32\windows.prf ..\..\Qt\4.8.1\mkspecs\features\resources.prf ..\..\Qt\4.8.1\mkspecs\features\uic.prf ..\..\Qt\4.8.1\mkspecs\features\yacc.prf ..\..\Qt\4.8.1\mkspecs\features\lex.prf ..\..\Qt\4.8.1\mkspecs\features\include_source_dir.prf c:\Qt\4.8.1\lib\qtmain.prl HEADERS RESOURCES IMAGES SOURCES OBJECTIVE_SOURCES FORMS YACCSOURCES YACCSOURCES LEXSOURCES
clean: compiler_clean clean: compiler_clean
-$(DEL_FILE) release\MainWindow.o release\main.o release\MainPage.o release\CableTestBench.o release\VisualInspectionPage.o release\ConnectorSelectWidget.o release\CableTestPage.o release\ConnectorClickZoneWidget.o release\ONOFFStatusWidget.o release\ConnectorTestVisualizationWidget.o release\Connector.o release\Cable.o release\VisualInspectionResult.o release\TestReport.o release\CableTestEngine.o release\OptionsPage.o release\CableTestBenchDefs.o release\IOModulesInterface.o release\moc_MainWindow.o release\moc_MainPage.o release\moc_CableTestBench.o release\moc_VisualInspectionPage.o release\moc_ConnectorSelectWidget.o release\moc_CableTestPage.o release\moc_ConnectorClickZoneWidget.o release\moc_ONOFFStatusWidget.o release\moc_ConnectorTestVisualizationWidget.o release\moc_OptionsPage.o -$(DEL_FILE) release\MainWindow.o release\main.o release\MainPage.o release\CableTestBench.o release\VisualInspectionPage.o release\ConnectorSelectWidget.o release\CableTestPage.o release\ConnectorClickZoneWidget.o release\ONOFFStatusWidget.o release\ConnectorTestVisualizationWidget.o release\Connector.o release\Cable.o release\VisualInspectionResult.o release\TestReport.o release\CableTestEngine.o release\OptionsPage.o release\CableTestBenchDefs.o release\IOModulesInterface.o release\InputConnector.o release\OutputConnector.o release\CableParametersData.o release\AutomatedTestReport.o release\TestBenchSettings.o release\moc_MainWindow.o release\moc_MainPage.o release\moc_CableTestBench.o release\moc_VisualInspectionPage.o release\moc_ConnectorSelectWidget.o release\moc_CableTestPage.o release\moc_ConnectorClickZoneWidget.o release\moc_ONOFFStatusWidget.o release\moc_ConnectorTestVisualizationWidget.o release\moc_TestReport.o release\moc_CableTestEngine.o release\moc_OptionsPage.o release\moc_IOModulesInterface.o release\moc_AutomatedTestReport.o
distclean: clean distclean: clean
-$(DEL_FILE) $(DESTDIR_TARGET) -$(DEL_FILE) $(DESTDIR_TARGET)
@ -145,9 +163,9 @@ mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all mocables: compiler_moc_header_make_all compiler_moc_source_make_all
compiler_moc_header_make_all: release/moc_MainWindow.cpp release/moc_MainPage.cpp release/moc_CableTestBench.cpp release/moc_VisualInspectionPage.cpp release/moc_ConnectorSelectWidget.cpp release/moc_CableTestPage.cpp release/moc_ConnectorClickZoneWidget.cpp release/moc_ONOFFStatusWidget.cpp release/moc_ConnectorTestVisualizationWidget.cpp release/moc_OptionsPage.cpp compiler_moc_header_make_all: release/moc_MainWindow.cpp release/moc_MainPage.cpp release/moc_CableTestBench.cpp release/moc_VisualInspectionPage.cpp release/moc_ConnectorSelectWidget.cpp release/moc_CableTestPage.cpp release/moc_ConnectorClickZoneWidget.cpp release/moc_ONOFFStatusWidget.cpp release/moc_ConnectorTestVisualizationWidget.cpp release/moc_TestReport.cpp release/moc_CableTestEngine.cpp release/moc_OptionsPage.cpp release/moc_IOModulesInterface.cpp release/moc_AutomatedTestReport.cpp
compiler_moc_header_clean: compiler_moc_header_clean:
-$(DEL_FILE) release\moc_MainWindow.cpp release\moc_MainPage.cpp release\moc_CableTestBench.cpp release\moc_VisualInspectionPage.cpp release\moc_ConnectorSelectWidget.cpp release\moc_CableTestPage.cpp release\moc_ConnectorClickZoneWidget.cpp release\moc_ONOFFStatusWidget.cpp release\moc_ConnectorTestVisualizationWidget.cpp release\moc_OptionsPage.cpp -$(DEL_FILE) release\moc_MainWindow.cpp release\moc_MainPage.cpp release\moc_CableTestBench.cpp release\moc_VisualInspectionPage.cpp release\moc_ConnectorSelectWidget.cpp release\moc_CableTestPage.cpp release\moc_ConnectorClickZoneWidget.cpp release\moc_ONOFFStatusWidget.cpp release\moc_ConnectorTestVisualizationWidget.cpp release\moc_TestReport.cpp release\moc_CableTestEngine.cpp release\moc_OptionsPage.cpp release\moc_IOModulesInterface.cpp release\moc_AutomatedTestReport.cpp
release/moc_MainWindow.cpp: Sources/MainPage.h \ release/moc_MainWindow.cpp: Sources/MainPage.h \
Sources/VisualInspectionPage.h \ Sources/VisualInspectionPage.h \
Sources/VisualInspectionResult.h \ Sources/VisualInspectionResult.h \
@ -155,6 +173,7 @@ release/moc_MainWindow.cpp: Sources/MainPage.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/MainWindow.h Sources/MainWindow.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\MainWindow.h -o release\moc_MainWindow.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\MainWindow.h -o release\moc_MainWindow.cpp
@ -169,9 +188,17 @@ release/moc_CableTestBench.cpp: Sources/MainWindow.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \ Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h \
Sources/CableTestBench.h Sources/CableTestBench.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\CableTestBench.h -o release\moc_CableTestBench.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\CableTestBench.h -o release\moc_CableTestBench.cpp
@ -198,9 +225,39 @@ release/moc_ConnectorTestVisualizationWidget.cpp: Sources/Widgets/ONOFFStatusWid
Sources/Widgets/ConnectorTestVisualizationWidget.h Sources/Widgets/ConnectorTestVisualizationWidget.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\Widgets\ConnectorTestVisualizationWidget.h -o release\moc_ConnectorTestVisualizationWidget.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\Widgets\ConnectorTestVisualizationWidget.h -o release\moc_ConnectorTestVisualizationWidget.cpp
release/moc_OptionsPage.cpp: Sources/OptionsPage.h release/moc_TestReport.cpp: Sources/GlobalDefine.h \
Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/TestReport.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\TestReport.h -o release\moc_TestReport.cpp
release/moc_CableTestEngine.cpp: Sources/Cable.h \
Sources/CableTestBenchDefs.h \
Sources/InputConnector.h \
Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/OutputConnector.h \
Sources/GlobalDefine.h \
Sources/TestReport.h \
Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\CableTestEngine.h -o release\moc_CableTestEngine.cpp
release/moc_OptionsPage.cpp: Sources/TestBenchSettings.h \
Sources/OptionsPage.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\OptionsPage.h -o release\moc_OptionsPage.cpp C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\OptionsPage.h -o release\moc_OptionsPage.cpp
release/moc_IOModulesInterface.cpp: Sources/IOModulesInterface.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\IOModulesInterface.h -o release\moc_IOModulesInterface.cpp
release/moc_AutomatedTestReport.cpp: Sources/AutomatedTestReport.h
C:\Qt\4.8.1\bin\moc.exe $(DEFINES) $(INCPATH) -D__GNUC__ -DWIN32 Sources\AutomatedTestReport.h -o release\moc_AutomatedTestReport.cpp
compiler_rcc_make_all: compiler_rcc_make_all:
compiler_rcc_clean: compiler_rcc_clean:
compiler_image_collection_make_all: qmake_image_collection.cpp compiler_image_collection_make_all: qmake_image_collection.cpp
@ -243,10 +300,18 @@ release/MainWindow.o: Sources/MainWindow.cpp Sources/MainWindow.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/CableTestBench.h \ Sources/CableTestBench.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\MainWindow.o Sources\MainWindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\MainWindow.o Sources\MainWindow.cpp
release/main.o: Sources/main.cpp Sources/CableTestBench.h \ release/main.o: Sources/main.cpp Sources/CableTestBench.h \
@ -258,9 +323,17 @@ release/main.o: Sources/main.cpp Sources/CableTestBench.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\main.o Sources\main.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\main.o Sources\main.cpp
release/MainPage.o: Sources/MainPage.cpp Sources/MainPage.h \ release/MainPage.o: Sources/MainPage.cpp Sources/MainPage.h \
@ -276,9 +349,17 @@ release/CableTestBench.o: Sources/CableTestBench.cpp Sources/CableTestBench.h \
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestBench.o Sources\CableTestBench.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestBench.o Sources\CableTestBench.cpp
release/VisualInspectionPage.o: Sources/VisualInspectionPage.cpp Sources/VisualInspectionPage.h \ release/VisualInspectionPage.o: Sources/VisualInspectionPage.cpp Sources/VisualInspectionPage.h \
@ -291,9 +372,17 @@ release/VisualInspectionPage.o: Sources/VisualInspectionPage.cpp Sources/VisualI
Sources/CableTestPage.h \ Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\VisualInspectionPage.o Sources\VisualInspectionPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\VisualInspectionPage.o Sources\VisualInspectionPage.cpp
release/ConnectorSelectWidget.o: Sources/Widgets/ConnectorSelectWidget.cpp Sources/Widgets/ConnectorSelectWidget.h \ release/ConnectorSelectWidget.o: Sources/Widgets/ConnectorSelectWidget.cpp Sources/Widgets/ConnectorSelectWidget.h \
@ -310,9 +399,17 @@ release/CableTestPage.o: Sources/CableTestPage.cpp Sources/CableTestPage.h \
Sources/VisualInspectionResult.h \ Sources/VisualInspectionResult.h \
Sources/GlobalDefine.h \ Sources/GlobalDefine.h \
Sources/OptionsPage.h \ Sources/OptionsPage.h \
Sources/TestBenchSettings.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/TestReport.h Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestPage.o Sources\CableTestPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestPage.o Sources\CableTestPage.cpp
release/ConnectorClickZoneWidget.o: Sources/Widgets/ConnectorClickZoneWidget.cpp Sources/Widgets/ConnectorClickZoneWidget.h release/ConnectorClickZoneWidget.o: Sources/Widgets/ConnectorClickZoneWidget.cpp Sources/Widgets/ConnectorClickZoneWidget.h
@ -327,12 +424,16 @@ release/ConnectorTestVisualizationWidget.o: Sources/Widgets/ConnectorTestVisuali
release/Connector.o: Sources/Connector.cpp Sources/Connector.h \ release/Connector.o: Sources/Connector.cpp Sources/Connector.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/IOModulesInterface.h \
Sources/GlobalDefine.h Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\Connector.o Sources\Connector.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\Connector.o Sources\Connector.cpp
release/Cable.o: Sources/Cable.cpp Sources/Cable.h \ release/Cable.o: Sources/Cable.cpp Sources/Cable.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/InputConnector.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/OutputConnector.h \
Sources/GlobalDefine.h Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\Cable.o Sources\Cable.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\Cable.o Sources\Cable.cpp
@ -342,26 +443,90 @@ release/VisualInspectionResult.o: Sources/VisualInspectionResult.cpp Sources/Vis
release/TestReport.o: Sources/TestReport.cpp Sources/TestReport.h \ release/TestReport.o: Sources/TestReport.cpp Sources/TestReport.h \
Sources/GlobalDefine.h \ Sources/GlobalDefine.h \
Sources/VisualInspectionResult.h Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/TestBenchSettings.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\TestReport.o Sources\TestReport.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\TestReport.o Sources\TestReport.cpp
release/CableTestEngine.o: Sources/CableTestEngine.cpp Sources/CableTestEngine.h \ release/CableTestEngine.o: Sources/CableTestEngine.cpp Sources/CableTestEngine.h \
Sources/Cable.h \ Sources/Cable.h \
Sources/CableTestBenchDefs.h \ Sources/CableTestBenchDefs.h \
Sources/InputConnector.h \
Sources/Connector.h \ Sources/Connector.h \
Sources/GlobalDefine.h Sources/IOModulesInterface.h \
Sources/OutputConnector.h \
Sources/GlobalDefine.h \
Sources/TestReport.h \
Sources/VisualInspectionResult.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestBench.h \
Sources/MainWindow.h \
Sources/MainPage.h \
Sources/VisualInspectionPage.h \
Sources/CableTestPage.h \
Sources/OptionsPage.h \
Sources/TestBenchSettings.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestEngine.o Sources\CableTestEngine.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestEngine.o Sources\CableTestEngine.cpp
release/OptionsPage.o: Sources/OptionsPage.cpp Sources/OptionsPage.h \ release/OptionsPage.o: Sources/OptionsPage.cpp Sources/OptionsPage.h \
ui_OptionsPage.h Sources/TestBenchSettings.h \
ui_OptionsPage.h \
Sources/GlobalDefine.h \
Sources/CableTestBench.h \
Sources/MainWindow.h \
Sources/MainPage.h \
Sources/VisualInspectionPage.h \
Sources/VisualInspectionResult.h \
Sources/CableTestPage.h \
Sources/CableTestBenchDefs.h \
Sources/Connector.h \
Sources/IOModulesInterface.h \
Sources/Cable.h \
Sources/InputConnector.h \
Sources/OutputConnector.h \
Sources/TestReport.h \
Sources/CableParametersData.h \
Sources/TestBenchVersion.h \
Sources/AutomatedTestReport.h \
Sources/CableTestEngine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\OptionsPage.o Sources\OptionsPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\OptionsPage.o Sources\OptionsPage.cpp
release/CableTestBenchDefs.o: Sources/CableTestBenchDefs.cpp Sources/CableTestBenchDefs.h release/CableTestBenchDefs.o: Sources/CableTestBenchDefs.cpp Sources/CableTestBenchDefs.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestBenchDefs.o Sources\CableTestBenchDefs.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableTestBenchDefs.o Sources\CableTestBenchDefs.cpp
release/IOModulesInterface.o: Sources/IOModulesInterface.cpp Sources/IOModulesInterface.h release/IOModulesInterface.o: Sources/IOModulesInterface.cpp Sources/IOModulesInterface.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\IOModulesInterface.o Sources\IOModulesInterface.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\IOModulesInterface.o Sources\IOModulesInterface.cpp
release/InputConnector.o: Sources/InputConnector.cpp Sources/InputConnector.h \
Sources/Connector.h \
Sources/CableTestBenchDefs.h \
Sources/IOModulesInterface.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\InputConnector.o Sources\InputConnector.cpp
release/OutputConnector.o: Sources/OutputConnector.cpp Sources/OutputConnector.h \
Sources/Connector.h \
Sources/CableTestBenchDefs.h \
Sources/IOModulesInterface.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\OutputConnector.o Sources\OutputConnector.cpp
release/CableParametersData.o: Sources/CableParametersData.cpp Sources/CableParametersData.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\CableParametersData.o Sources\CableParametersData.cpp
release/AutomatedTestReport.o: Sources/AutomatedTestReport.cpp Sources/AutomatedTestReport.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\AutomatedTestReport.o Sources\AutomatedTestReport.cpp
release/TestBenchSettings.o: Sources/TestBenchSettings.cpp Sources/TestBenchSettings.h \
Sources/GlobalDefine.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\TestBenchSettings.o Sources\TestBenchSettings.cpp
release/moc_MainWindow.o: release/moc_MainWindow.cpp release/moc_MainWindow.o: release/moc_MainWindow.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_MainWindow.o release\moc_MainWindow.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_MainWindow.o release\moc_MainWindow.cpp
@ -389,9 +554,21 @@ release/moc_ONOFFStatusWidget.o: release/moc_ONOFFStatusWidget.cpp
release/moc_ConnectorTestVisualizationWidget.o: release/moc_ConnectorTestVisualizationWidget.cpp release/moc_ConnectorTestVisualizationWidget.o: release/moc_ConnectorTestVisualizationWidget.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_ConnectorTestVisualizationWidget.o release\moc_ConnectorTestVisualizationWidget.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_ConnectorTestVisualizationWidget.o release\moc_ConnectorTestVisualizationWidget.cpp
release/moc_TestReport.o: release/moc_TestReport.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_TestReport.o release\moc_TestReport.cpp
release/moc_CableTestEngine.o: release/moc_CableTestEngine.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_CableTestEngine.o release\moc_CableTestEngine.cpp
release/moc_OptionsPage.o: release/moc_OptionsPage.cpp release/moc_OptionsPage.o: release/moc_OptionsPage.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_OptionsPage.o release\moc_OptionsPage.cpp $(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_OptionsPage.o release\moc_OptionsPage.cpp
release/moc_IOModulesInterface.o: release/moc_IOModulesInterface.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_IOModulesInterface.o release\moc_IOModulesInterface.cpp
release/moc_AutomatedTestReport.o: release/moc_AutomatedTestReport.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o release\moc_AutomatedTestReport.o release\moc_AutomatedTestReport.cpp
####### Install ####### Install
install: FORCE install: FORCE

View File

@ -0,0 +1,293 @@
#include "AutomatedTestReport.h"
#include "GlobalDefine.h"
CAutomatedTestReport::CAutomatedTestReport(QObject *parent) :
QObject(parent)
{
}
int CAutomatedTestReport::ClearAutomatedTestReport()
{
mTestPinsResult.clear();
mPinCount = 0;
mPreTestResult = AUTO_TEST_RESULT_UNKNOWN;
return RET_OK;
}
int CAutomatedTestReport::SetPinCount(int Pincount)
{
mPinCount = Pincount;
mTestPinsResult.clear();
for(int i = 0; i < Pincount; i++)
{
mTestPinsResult.append(CPinTestResult(i+1));
}
return RET_OK;
}
int CAutomatedTestReport::SetPinResult(int PinNumber, bool ContinuityPassed, bool IsolationPassed)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mIsolationTestPass = IsolationPassed;
mTestPinsResult[ZeroBasedPinIndex].mContinuityTestPass = ContinuityPassed;
return RET_OK;
}
int CAutomatedTestReport::SetPinTestAllPassed(int PinNumber)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mIsolationTestPass = true;
mTestPinsResult[ZeroBasedPinIndex].mContinuityTestPass = true;
mTestPinsResult[ZeroBasedPinIndex].mPinAssignationTestPass = true;
return RET_OK;
}
int CAutomatedTestReport::SetPinContinuityResult(int PinNumber,bool ContinuityPassed)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mContinuityTestPass = ContinuityPassed;
return RET_OK;
}
int CAutomatedTestReport::SetPinIsolationResult(int PinNumber, bool IsolationPassed)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mIsolationTestPass = IsolationPassed;
return RET_OK;
}
int CAutomatedTestReport::SetPinConcordanceTestResult(int PinNumber, bool AssignationTestPassed, int WrongPinNbr)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mPinAssignationTestPass = AssignationTestPassed;
if(AssignationTestPassed == false)
{
mTestPinsResult[ZeroBasedPinIndex].mWrongAssignationPinNbr = WrongPinNbr;
}
return RET_OK;
}
int CAutomatedTestReport::SetPinSecondTestResult(int PinNumber, bool SecondTestPassed)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mSecondTestPass = SecondTestPassed;
return RET_OK;
}
int CAutomatedTestReport::AddShortedPinToPinTest(int PinNumber, int ShortedPinNumber)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return RET_ERROR;
}
mTestPinsResult[ZeroBasedPinIndex].mShortedPinsList.append(ShortedPinNumber);
return RET_OK;
}
int CAutomatedTestReport::SetPreTestResult(bool PreTestPassed)
{
mPreTestResult = PreTestPassed;
return RET_OK;
}
CPinTestResult::CPinTestResult(int PinNumber)
{
mPinNumber = PinNumber;
mContinuityTestPass = AUTO_TEST_RESULT_UNKNOWN;
mIsolationTestPass = AUTO_TEST_RESULT_UNKNOWN;
mPinAssignationTestPass = AUTO_TEST_RESULT_UNKNOWN;
mSecondTestPass = AUTO_TEST_RESULT_UNKNOWN;
mShortedPinsList.clear();
mWrongAssignationPinNbr = 0;
}
CPinTestResult::~CPinTestResult()
{
mShortedPinsList.clear();
}
bool CPinTestResult::IsPinTestSuccess()
{
if(mPinNumber > 0 &&
mContinuityTestPass == AUTO_TEST_SUCCESS &&
mIsolationTestPass == AUTO_TEST_SUCCESS &&
mPinAssignationTestPass == AUTO_TEST_SUCCESS &&
mSecondTestPass != AUTO_TEST_FAILED)
{
return true;
}
return false;
}
QString CAutomatedTestReport::GetPinIsolationResult(int PinNumber)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return QString("?");
}
if(mTestPinsResult[ZeroBasedPinIndex].mIsolationTestPass == AUTO_TEST_RESULT_UNKNOWN)
{
return QString("N/A");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mIsolationTestPass == AUTO_TEST_SUCCESS)
{
return QString("Succès");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mIsolationTestPass == AUTO_TEST_FAILED)
{
QString Result("Échec[");
for(int i = 0; i < mTestPinsResult[ZeroBasedPinIndex].mShortedPinsList.size(); i++)
{
Result.append(QString("%1").arg(mTestPinsResult[ZeroBasedPinIndex].mShortedPinsList.at(i)));
if(i != mTestPinsResult[ZeroBasedPinIndex].mShortedPinsList.size() - 1)
{
Result.append(",");
}
}
Result.append("]");
return Result;
}
return QString("?");
}
QString CAutomatedTestReport::GetPinContinuityResult(int PinNumber)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return QString("?");
}
if(mTestPinsResult[ZeroBasedPinIndex].mContinuityTestPass == AUTO_TEST_RESULT_UNKNOWN)
{
return QString("N/A");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mContinuityTestPass == AUTO_TEST_SUCCESS)
{
return QString("Succès");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mContinuityTestPass == AUTO_TEST_FAILED)
{
return QString("Échec");
}
return QString("?");
}
QString CAutomatedTestReport::GetPinConcordanceResult(int PinNumber)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return QString("?");
}
if(mTestPinsResult[ZeroBasedPinIndex].mPinAssignationTestPass == AUTO_TEST_RESULT_UNKNOWN)
{
return QString("N/A");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mPinAssignationTestPass == AUTO_TEST_SUCCESS)
{
return QString("Succès");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mPinAssignationTestPass == AUTO_TEST_FAILED)
{
return QString("Échec[%1]").arg(mTestPinsResult[ZeroBasedPinIndex].mWrongAssignationPinNbr);
}
return QString("?");
}
QString CAutomatedTestReport::GetPinSecondTestResult(int PinNumber)
{
int ZeroBasedPinIndex = PinNumber - 1;
if(ZeroBasedPinIndex < 0 || ZeroBasedPinIndex >= mPinCount) //Try not to crash.
{
return QString("?");
}
if(mTestPinsResult[ZeroBasedPinIndex].mSecondTestPass == AUTO_TEST_RESULT_UNKNOWN)
{
return QString("N/A");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mSecondTestPass == AUTO_TEST_SUCCESS)
{
return QString("Succès");
}
else if(mTestPinsResult[ZeroBasedPinIndex].mSecondTestPass == AUTO_TEST_FAILED)
{
return QString("Échec");
}
return QString("?");
}
bool CAutomatedTestReport::IsAutomatedTestSuccess()
{
if(mPinCount == 0)
{
return false;
}
for(int i = 0; i < mTestPinsResult.size(); i++)
{
if(mTestPinsResult[i].IsPinTestSuccess() == false)
{
return false;
}
}
return true;
}
QString CAutomatedTestReport::GetPretestResult()
{
if(mPreTestResult)
{
return "Succès";
}
return "Échec";
}

View File

@ -0,0 +1,81 @@
#ifndef AUTOMATEDTESTREPORT_H
#define AUTOMATEDTESTREPORT_H
#include <QObject>
#include <QList>
class CPinTestResult;
enum eAutoTestResultDef
{
AUTO_TEST_FAILED,
AUTO_TEST_SUCCESS,
AUTO_TEST_RESULT_UNKNOWN
};
class CAutomatedTestReport : public QObject
{
Q_OBJECT
public:
explicit CAutomatedTestReport(QObject *parent = 0);
int ClearAutomatedTestReport();
int SetPinCount(int Pincount);
int GetPinCount(){return mPinCount;}
int SetPinResult(int PinNumber,bool ContinuityPassed, bool IsolationPassed);
int SetPinTestAllPassed(int PinNumber);
int SetPinContinuityResult(int PinNumber,bool ContinuityPassed);
int SetPinIsolationResult(int PinNumber, bool IsolationPassed);
int SetPinConcordanceTestResult(int PinNumber, bool AssignationTestPassed, int WrongPinNbr);
int SetPinSecondTestResult(int PinNumber, bool SecondTestPassed);
int AddShortedPinToPinTest(int PinNumber,int ShortedPinNumber);
bool IsAutomatedTestSuccess();
QString GetPinIsolationResult(int PinNumber);
QString GetPinContinuityResult(int PinNumber);
QString GetPinConcordanceResult(int PinNumber);
QString GetPinSecondTestResult(int PinNumber);
QString GetShortedPins(int PinNumber);
QString GetWrongPin(int PinNumber);
QString GetPretestResult();
int SetPreTestResult(bool PreTestPassed);
QList<CPinTestResult> mTestPinsResult;
int mPinCount;
int mPreTestResult;
signals:
public slots:
};
class CPinTestResult
{
public:
// enum ePinTestResultDef
// {
// PIN_TEST_FAILED,
// PIN_TEST_SUCCESS,
// PIN_TEST_RESULT_UNKNOWN
// };
explicit CPinTestResult(int PinNumber);
~CPinTestResult();
bool IsPinTestSuccess();
int mPinNumber;
int mContinuityTestPass;
int mIsolationTestPass;
int mPinAssignationTestPass;
int mSecondTestPass;
QList<int> mShortedPinsList;
int mWrongAssignationPinNbr;
};
#endif // AUTOMATEDTESTREPORT_H

View File

@ -1,14 +1,20 @@
#include "Cable.h" #include "Cable.h"
CCable::CCable(CConnectorDefs::eConnectorType InputConnectorType) CCable::CCable(CConnectorDefs::eConnectorType InputConnectorType, CIOModulesInterface *IOInterface)
{ {
mInputConnector.SetConnectorType(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE);
mOutputConnector.SetConnectorType(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE); mInputConnector.SetIOInterface(IOInterface);
mOutputConnector.SetIOInterface(IOInterface);
DefineCableByInputConnector(InputConnectorType);
// mInputConnector.SetConnectorType(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE);
// mOutputConnector.SetConnectorType(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE);
mCableDefined = false; mCableDefined = false;
mIOInterfaceHandle = IOInterface;
} }
int CCable::DefineCableByInputConnector(CConnectorDefs::eConnectorType InputConnectorType) int CCable::DefineCableByInputConnector(CConnectorDefs::eConnectorType InputConnectorType)
{ {
mOutputPinsBuffer.clear();
switch(InputConnectorType) switch(InputConnectorType)
{ {
case CConnectorDefs::INPUT_6_PINS_CONNECTOR_TYPE: case CConnectorDefs::INPUT_6_PINS_CONNECTOR_TYPE:
@ -54,6 +60,7 @@ int CCable::DefineCableByInputConnector(CConnectorDefs::eConnectorType InputConn
} }
mOutputPinsBuffer = QBitArray(mOutputConnector.GetPinCount());
mCableDefined = true; mCableDefined = true;
return RET_OK; return RET_OK;
@ -64,12 +71,20 @@ bool CCable::IsCableDefined()
return mCableDefined; return mCableDefined;
} }
CConnector *CCable::GetInputConnector() CInputConnector *CCable::GetInputConnector()
{ {
return &mInputConnector; return &mInputConnector;
} }
CConnector *CCable::GetOutputConnector() COutputConnector *CCable::GetOutputConnector()
{ {
return &mOutputConnector; return &mOutputConnector;
} }
int CCable::ClearAllOutputConnectorPins()
{
mOutputPinsBuffer.fill(false);
return mOutputConnector.SetOutputPins(mOutputPinsBuffer);
}

View File

@ -2,24 +2,32 @@
#define CABLE_H #define CABLE_H
#include "CableTestBenchDefs.h" #include "CableTestBenchDefs.h"
#include "Connector.h" #include "InputConnector.h"
#include "OutputConnector.h"
#include "GlobalDefine.h" #include "GlobalDefine.h"
#include "IOModulesInterface.h"
class CCable class CCable
{ {
public: public:
CCable(CConnectorDefs::eConnectorType InputConnectorType); CCable(CConnectorDefs::eConnectorType InputConnectorType,CIOModulesInterface *IOInterface);
int DefineCableByInputConnector(CConnectorDefs::eConnectorType InputConnectorType); int DefineCableByInputConnector(CConnectorDefs::eConnectorType InputConnectorType);
CConnector *GetInputConnector(); CInputConnector *GetInputConnector();
CConnector *GetOutputConnector(); COutputConnector *GetOutputConnector();
bool IsCableDefined(); bool IsCableDefined();
int ClearAllOutputConnectorPins();
private: private:
CConnector mInputConnector, mOutputConnector; CInputConnector mInputConnector;
COutputConnector mOutputConnector;
bool mCableDefined; bool mCableDefined;
CIOModulesInterface *mIOInterfaceHandle;
QBitArray mOutputPinsBuffer;
}; };

View File

@ -0,0 +1,38 @@
#include "CableParametersData.h"
#include "GlobalDefine.h"
CCableParametersData::CCableParametersData()
{
ResetData();
}
int CCableParametersData::ResetData()
{
mStationName.clear();
mCableIdentification.clear();
mCableType.clear();
mTestOperatorName.clear();
mInputConnectorType.clear();
mOutputConnectorType.clear();
return RET_OK;
}
int CCableParametersData::SetCableParams(QString StationName, QString StationCode, QString CableIdentification, QString CableType, QString OperatorName)
{
mStationName = StationName;
mStationCodeName = StationCode;
mCableIdentification = CableIdentification;
mCableType = CableType;
mTestOperatorName = OperatorName;
return RET_OK;
}
int CCableParametersData::SetCableType(QString InputConnectortype, QString OutputConnectorType)
{
mInputConnectorType = InputConnectortype;
mOutputConnectorType = OutputConnectorType;
return RET_OK;
}

View File

@ -0,0 +1,29 @@
#ifndef CABLEPARAMETERSDATA_H
#define CABLEPARAMETERSDATA_H
#include <QString>
#include <Connector.h>
class CCableParametersData
{
public:
CCableParametersData();
int ResetData();
int SetCableParams(QString StationName, QString StationCode, QString CableIdentification, QString CableType, QString OperatorName);
int SetCableType(QString InputConnectortype, QString OutputConnectorType);
QString mStationName;
QString mStationCodeName;
QString mCableIdentification; //Cable name
QString mCableType; //permanent or temporary
QString mTestOperatorName;
QString mInputConnectorType;
QString mOutputConnectorType;
};
#endif // CABLEPARAMETERSDATA_H

View File

@ -1,11 +1,17 @@
#include "CableTestBench.h" #include "CableTestBench.h"
#include <QDateTime> #include <QDateTime>
#include "CableTestBenchDefs.h"
#include <QFileInfo>
#include <QProcess>
#include "TestBenchVersion.h"
#include <QMessageBox>
CCableTestBench::CCableTestBench(QObject *parent) : CCableTestBench::CCableTestBench(QObject *parent) :
QObject(parent), QObject(parent),
mActualCable(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE) mActualCable(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE,&mIOInterface)
{ {
w = new MainWindow(0,this); w = new MainWindow(0,this);
w->setWindowTitle(QString("Cablotron %1").arg(TEST_BENCH_VERSION));
} }
CCableTestBench::~CCableTestBench() CCableTestBench::~CCableTestBench()
@ -22,12 +28,42 @@ int CCableTestBench::Start()
mMainPageHandle = w->mMainPage; mMainPageHandle = w->mMainPage;
mVisualInspPageHandle = w->mVisualInspPage; mVisualInspPageHandle = w->mVisualInspPage;
mCableTestPageHandle = w->mCableTestPage; mCableTestPageHandle = w->mCableTestPage;
mOptionsPageHandle = w->mOptionsPage;
if(mTestBenchOptions.LoadSettingFromFile() == RET_OK)
{
mOptionsPageHandle->SetCurrentOptions(&mTestBenchOptions);
}
{
mOptionsPageHandle->GetCurrentOptions(&mTestBenchOptions);
}
mCableTestEngine.InitCableTestEngine(this,&mTestBenchOptions);
if(mIOInterface.OpenIOModules(mTestBenchOptions.mIOModuleIPAddress) == RET_ERROR)
{
mCableTestReport.AddLogEntry("Impossible de communiquer avec le module d'I/O.\nVérifier la connexion ou l'adresse IP.");
QMessageBox::critical(0,"Erreur de connexion","Impossible de communiquer avec le module d'I/O.\nVérifier la connexion ou l'adresse IP.");
}
mCableTestPageHandle->mGuiRefreshTimer.start();
connect(&mCableTestReport,SIGNAL(NewTestLogEntry(QString)),mCableTestPageHandle,SLOT(AddTestLogEntry(QString)));
mIOInterface.OpenIOModules();
return 1; return 1;
} }
CCable * CCableTestBench::GetActualCable()
{
return &mActualCable;
}
CTestReport *CCableTestBench::GetTestReportHandle()
{
return &mCableTestReport;
}
quint8 CCableTestBench::DecToBCDByte(const quint8 byte) quint8 CCableTestBench::DecToBCDByte(const quint8 byte)
{ {
@ -73,6 +109,8 @@ CCable* CCableTestBench::SetSelectedConnector(CConnectorDefs::eConnectorType Con
return 0; return 0;
} }
CheckIfReadyForTesting();
return &mActualCable; return &mActualCable;
} }
@ -90,5 +128,221 @@ int CCableTestBench::VisualInspectionQuitRequest()
w->ShowCableTestPage(); w->ShowCableTestPage();
CheckIfReadyForTesting();
return RET_OK;
}
int CCableTestBench::StartPauseAutomaticTestRequest()
{
if(mCableTestEngine.GetTestEngineCurrentMode() == CCableTestEngine::CABLE_TEST_STBY_MODE)
{
int TestPinCount = mActualCable.GetOutputConnector()->GetPinCount();
if(mActualCable.GetInputConnector()->GetPinCount() < TestPinCount)
{
TestPinCount = mActualCable.GetInputConnector()->GetPinCount();
}
mCableTestPageHandle->FillReportCableParametersData(mCableTestReport.GetReportCableParameters());
mCableTestReport.GetReportCableParameters()->SetCableType(CConnectorDefs::GetConnectorDescription(mActualCable.GetInputConnector()->GetConnectorType()),
CConnectorDefs::GetConnectorDescription(mActualCable.GetOutputConnector()->GetConnectorType()));
mCableTestReport.GetAutomatedTestReport()->SetPinCount(TestPinCount);
mCableTestEngine.StartAutomatedTest();
return RET_OK;
}
if(mCableTestEngine.GetTestEngineCurrentMode() == CCableTestEngine::CABLE_AUTO_TEST_RUNNING_MODE)
{
mCableTestEngine.PauseAutomatedTest();
return RET_OK;
}
if(mCableTestEngine.GetTestEngineCurrentMode() == CCableTestEngine::CABLE_AUTO_TEST_PAUSED_MODE)
{
mCableTestEngine.ResumeAutomatedTest();
return RET_OK;
}
else //Button shouldn't be used in manual mode...
{
return RET_ERROR;
}
return RET_OK;
}
int CCableTestBench::StartStopManualTestRequest()
{
if(mCableTestEngine.GetTestEngineCurrentMode() == CCableTestEngine::CABLE_TEST_STBY_MODE)
{
mCableTestEngine.StartManualTest();
return RET_OK;
}
if(mCableTestEngine.GetTestEngineCurrentMode() == CCableTestEngine::CABLE_TEST_MANUAL_MODE)
{
mCableTestEngine.StopManualTest();
return RET_OK;
}
else //Button shouldn't be used in Automatic mode...
{
return RET_ERROR;
}
}
int CCableTestBench::NewCableRequest()
{
mActualCable.DefineCableByInputConnector(CConnectorDefs::UNKNOWN_CONNECTOR_TYPE);
mVisualInspPageHandle->ResetForm();
mCableTestPageHandle->ResetCable();
mCableTestPageHandle->DisableStartTestBtn();
mCableTestReport.CreateNewTestReport();
return RET_OK;
}
int CCableTestBench::CheckIfReadyForTesting()
{
bool VisualInspectionDone = false, ConnectorSelected = false, CableConfigured = false;
mVisualInspPageHandle->FillVisualInspectionResultReport(mCableTestReport.GetInspectionResult());
if(mCableTestReport.GetInspectionResult()->IsVisualInspectionResultComplete() == true)
{
VisualInspectionDone = true;
}
if(mTestBenchOptions.mIgnoreVisualInspection)
{
VisualInspectionDone = true;
}
if(mCableTestPageHandle->IsCableConfigured())
{
CableConfigured = true;
mCableTestPageHandle->SetCableConfigureStep(true);
}
else
{
mCableTestPageHandle->SetCableConfigureStep(false);
}
ConnectorSelected = mActualCable.IsCableDefined();
if(ConnectorSelected)
{
mCableTestPageHandle->SetConnectorSelStep();
}
else
{
mCableTestPageHandle->SetConnectorSelStep(false);
}
if(VisualInspectionDone && ConnectorSelected && CableConfigured)
{
mCableTestPageHandle->EnableStartTestBtn();
}
else
{
mCableTestPageHandle->DisableStartTestBtn();
}
return RET_OK;
}
int CCableTestBench::CableEngineModeChanged(CCableTestEngine::eCableTestEngineMode Mode)
{
switch(Mode)
{
case CCableTestEngine::CABLE_TEST_STBY_MODE:
{
mCableTestPageHandle->CableTestEnded();
if(mCableTestReport.IsAutoTestReportReady())
{
SaveReportRequest();
mCableTestPageHandle->EnableOpenReportBtn();
if(mCableTestReport.GetGlobalAutoTestResult() == true)
{
mCableTestPageHandle->SetAutoTestResult("Succès!",Qt::darkGreen);
}
else
{
mCableTestPageHandle->SetAutoTestResult("Échec",Qt::red);
}
}
break;
}
case CCableTestEngine::CABLE_AUTO_TEST_RUNNING_MODE:
{
mCableTestPageHandle->CableAutomaticTestStarted();
break;
}
case CCableTestEngine::CABLE_AUTO_TEST_PAUSED_MODE:
{
mCableTestPageHandle->CableAutomaticTestPaused();
break;
}
case CCableTestEngine::CABLE_TEST_MANUAL_MODE:
{
mCableTestPageHandle->CableManualTestStarted();
break;
}
}
return RET_OK;
}
int CCableTestBench::ResetAutomaticTestRequest()
{
return mCableTestEngine.StopAutomatedTest();
}
int CCableTestBench::ManualPinToggleRequest(int ConnectorPinNbr)
{
return mCableTestEngine.ManualPinToggle(ConnectorPinNbr);
}
int CCableTestBench::RefreshConnectorsStateRequest()
{
mCableTestPageHandle->SetInputConnectorState(mActualCable.GetInputConnector()->GetInputPinsStates());
mCableTestPageHandle->SetOutputConnectorState(mActualCable.GetOutputConnector()->GetOutputPinsStates());
return RET_OK;
}
int CCableTestBench::SaveReportRequest()
{
return mCableTestReport.SaveReportToFile(&mTestBenchOptions);
}
int CCableTestBench::OpenReportRequest()
{
QString ReportFile = mCableTestReport.GetLastReportFileName();
if(ReportFile.isEmpty())
{
return RET_ERROR;
}
QFileInfo FileInfo(ReportFile);
QString Command =FileInfo.absoluteFilePath();
Command.prepend("notepad.exe ");
QProcess *process = new QProcess;
process->start(Command);
return RET_OK;
}
int CCableTestBench::CableConfigChanged()
{
CheckIfReadyForTesting();
return RET_OK;
}
int CCableTestBench::TestBenchOptionsChanged()
{
mOptionsPageHandle->GetCurrentOptions(&mTestBenchOptions);
mTestBenchOptions.SaveSettingsToFile();
return RET_OK; return RET_OK;
} }

View File

@ -8,11 +8,16 @@
#include "Cable.h" #include "Cable.h"
#include "TestReport.h" #include "TestReport.h"
#include "IOModulesInterface.h" #include "IOModulesInterface.h"
#include "CableTestEngine.h"
#include "TestBenchSettings.h"
class CMainPage; class CMainPage;
class CVisualInspectionPage; class CVisualInspectionPage;
class CCableTestPage; class CCableTestPage;
class COptionsPage;
class CCableTestBench : public QObject class CCableTestBench : public QObject
{ {
@ -27,22 +32,47 @@ public:
CMainPage *mMainPageHandle; CMainPage *mMainPageHandle;
CVisualInspectionPage *mVisualInspPageHandle; CVisualInspectionPage *mVisualInspPageHandle;
CCableTestPage *mCableTestPageHandle; CCableTestPage *mCableTestPageHandle;
COptionsPage *mOptionsPageHandle;
CCable mActualCable; CCable mActualCable;
CCableTestEngine mCableTestEngine;
CTestBenchSettings mTestBenchOptions;
CIOModulesInterface mIOInterface; CIOModulesInterface mIOInterface;
int ExecVisualInspectionRequest(); int ExecVisualInspectionRequest();
int VisualInspectionQuitRequest(); int VisualInspectionQuitRequest();
int StartPauseAutomaticTestRequest();
int NewCableRequest();
int ResetAutomaticTestRequest();
int StartStopManualTestRequest();
int ManualPinToggleRequest(int ConnectorPinNbr);
int RefreshConnectorsStateRequest();
int SaveReportRequest();
int OpenReportRequest();
int CableConfigChanged();
int TestBenchOptionsChanged();
CCable *SetSelectedConnector(CConnectorDefs::eConnectorType ConType); CCable *SetSelectedConnector(CConnectorDefs::eConnectorType ConType);
CCable *GetActualCable(); CCable *GetActualCable();
CTestReport* GetTestReportHandle();
int CableEngineModeChanged(CCableTestEngine::eCableTestEngineMode Mode);
private: private:
quint16 DecToBCDWord(const quint16 word); quint16 DecToBCDWord(const quint16 word);
quint8 DecToBCDByte(const quint8 byte); quint8 DecToBCDByte(const quint8 byte);
int CheckIfReadyForTesting();
CTestReport mCableTestReport; CTestReport mCableTestReport;

View File

@ -1,23 +1,37 @@
#include "CableTestBenchDefs.h" #include "CableTestBenchDefs.h"
const int CConnectorDefs::ConnIOMapping[CConnectorDefs::NB_CONNECTOR_TYPE][2] = { const int CConnectorDefs::ConnIOMapping[CConnectorDefs::NB_CONNECTOR_TYPE][2] = { //Connectors pins mapping (zero based index)
{0,0}, //Unknown {0,0}, //Unknown
{97,102}, //in 6 pins {96,101}, //in 6 pins
{91,104}, //in 14 pins {90,103}, //in 14 pins
{73,96}, //in 24 pins {72,95}, //in 24 pins
{1,72}, //in 72 pins {0,71}, //in 72 pins
{1,90}, //in 90 pins {0,89}, //in 90 pins
{1,108}, //in 108 pins {0,107}, //in 108 pins
{1,108}, //in 120 pins {0,107}, //in 120 pins
{97,102}, //out 6 pins {96,101}, //out 6 pins
{91,104}, //out 14 pins {90,103}, //out 14 pins
{73,96}, //out 24 pins {72,95}, //out 24 pins
{1,72}, //out 72 pins {0,71}, //out 72 pins
{1,108}, //out 108 pins {0,107}, //out 108 pins
}; };
const int CConnectorDefs::ConnPinCount[NB_CONNECTOR_TYPE] = {0, 6, 14, 24, 72, 90, 108, 120, 6, 14, 24, 72, 108}; const int CConnectorDefs::ConnPinCount[NB_CONNECTOR_TYPE] = {0, 6, 14, 24, 72, 90, 108, 120, 6, 14, 24, 72, 108};
const char* CConnectorDefs::ConnectorDescription[NB_CONNECTOR_TYPE] = {"Connecteur inconnu ou invalide",
"Connecteur circulaire 6 contacts",
"Connecteur circulaire 14 contacts",
"Connecteur Amphenol rectangulaire 24 contacts",
"Connecteur Amphenol rectangulaire 72 contacts",
"Connecteur Souriau rectangulaire 90 contacts",
"Connecteur Amphenol rectangulaire 108 contacts",
"Connecteur Souriau rectangulaire 120 contacts",
"Connecteur circulaire 6 contacts",
"Connecteur circulaire 14 contacts",
"Connecteur Amphenol rectangulaire 24 contacts",
"Connecteur Amphenol rectangulaire 72 contacts",
"Connecteur Amphenol rectangulaire 108 contacts"};
const int CConnectorDefs::GetPinCount(eConnectorType type) const int CConnectorDefs::GetPinCount(eConnectorType type)
@ -59,3 +73,14 @@ const int * CConnectorDefs::GetConnectorIOMapping(eConnectorType type)
return ConnIOMapping[type]; return ConnIOMapping[type];
} }
const char * CConnectorDefs::GetConnectorDescription(eConnectorType type)
{
if(type < 0 || type >= NB_CONNECTOR_TYPE)
{
return ConnectorDescription[UNKNOWN_CONNECTOR_TYPE];
}
return ConnectorDescription[type];
}

View File

@ -1,5 +1,6 @@
#ifndef CABLETESTBENCHDEFS_H #ifndef CABLETESTBENCHDEFS_H
#define CABLETESTBENCHDEFS_H #define CABLETESTBENCHDEFS_H
#include <QString>
class CConnectorDefs class CConnectorDefs
@ -29,12 +30,15 @@ public:
static const int ConnIOMapping[NB_CONNECTOR_TYPE][2]; static const int ConnIOMapping[NB_CONNECTOR_TYPE][2];
static const int ConnPinCount[NB_CONNECTOR_TYPE]; static const int ConnPinCount[NB_CONNECTOR_TYPE];
static const char* ConnectorDescription[NB_CONNECTOR_TYPE];
static const int GetPinCount(eConnectorType type); static const int GetPinCount(eConnectorType type);
static const int GetConnectorIOMappingStart(eConnectorType type); static const int GetConnectorIOMappingStart(eConnectorType type);
static const int GetConnectorIOMappingEnd(eConnectorType type); static const int GetConnectorIOMappingEnd(eConnectorType type);
static const int* GetConnectorIOMapping(eConnectorType type); static const int* GetConnectorIOMapping(eConnectorType type);
static const char* GetConnectorDescription(eConnectorType type);
}; };

View File

@ -1,5 +1,477 @@
#include "CableTestEngine.h" #include "CableTestEngine.h"
#include "CableTestBench.h"
CCableTestEngine::CCableTestEngine() CCableTestEngine::CCableTestEngine()
{ {
mCableTestSMState = CABLE_TEST_INIT_STATE;
}
CCableTestEngine::~CCableTestEngine()
{
delete mCableTestSMTimer;
}
int CCableTestEngine::InitCableTestEngine(CCableTestBench *ProgramHandle, CTestBenchSettings *SettingsHandle)
{
mProgramHandle = ProgramHandle;
mTestCable = ProgramHandle->GetActualCable();
mTestInputConnectorHandle = mTestCable->GetInputConnector();
mTestOutputConnectorHandle = mTestCable->GetOutputConnector();
mTestReportHandle = ProgramHandle->GetTestReportHandle();
mAutoTestReportHandle = mTestReportHandle->GetAutomatedTestReport();
mCableTestSMTimer = new QTimer();
mCableTestSMTimer->setSingleShot(false);
mCableTestSMTimer->setInterval(TEST_ENGINE_SM_TIMEOUT);
mCableTestSMTimer->stop();
connect(mCableTestSMTimer,SIGNAL(timeout()),this,SLOT(SMTimerExpired()));
mTestSettingsHandle = SettingsHandle;
mIsSecondPass = false;
CableTestEngineStateMachine(CABLE_TEST_TICK_SM_EVENT);
return RET_OK;
}
void CCableTestEngine::CableTestEngineStateMachine(int Event)
{
switch(mCableTestSMState)
{
case CABLE_TEST_INIT_STATE:
{
mCableTestSMState = CABLE_TEST_STBY_STATE;
mIsSecondPass = false;
mCableTestSMTimer->start();
break;
}//case CABLE_TEST_INIT_STATE
case CABLE_TEST_STBY_STATE:
{
switch(Event)
{
case CABLE_TEST_START_AUTO_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_TEST_START_AUTOMATED_TEST_STATE;
mProgramHandle->CableEngineModeChanged(GetTestEngineCurrentMode());
break;
}
case CABLE_TEST_START_MANUAL_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_TEST_START_MANUAL_TEST_STATE;
break;
}
default:
{
break;
}
}
break;
}// case CABLE_TEST_STBY_STATE
case CABLE_TEST_START_AUTOMATED_TEST_STATE:
{
mTestOutputConnectorHandle->ClearAllPins();
mCableTestSMState = CABLE_AUTO_TEST_SELF_TEST_STATE;
mCableTestGPTimer.start();
//qDebug("Test automatique démarré...");
mTestReportHandle->AddLogEntry(QString("Démarrage du test automatique."));
break;
}//case CABLE_TEST_START_AUTOMATED_TEST_STATE
case CABLE_AUTO_TEST_SELF_TEST_STATE:
{
if(mCableTestGPTimer.elapsed() < mTestSettingsHandle->mPinHoldTime)
{
break;
}
else
{
QBitArray Out = mTestOutputConnectorHandle->GetOutputPinsStates();
if(Out.count(true) != 0)
{
//TODO: Manage this failure mode
mAutoTestReportHandle->SetPreTestResult(false);
// qDebug("Échec de l'auto test des modules d'I/O");
QString LogString = QString("Échec de l'auto test des modules de sortie. %1 contacts sont activés : ");
for(int pin = 0; pin < Out.count(); pin++)
{
if(Out.at(pin))
{
mAutoTestReportHandle->AddShortedPinToPinTest(mCurPinUnderTest,pin+1);
LogString.append(QString("[%1], "));
}
}
mTestReportHandle->AddLogEntry(LogString);
mCableTestSMState = CABLE_AUTO_TEST_END_TEST_STATE;
break;
}
else
{
mCurPinUnderTest = 1;
mTestOutputConnectorHandle->SetSinglePin(mCurPinUnderTest);
mAutoTestReportHandle->SetPreTestResult(true);
mTestReportHandle->AddLogEntry(QString("Succès de l'auto test des modules d'I/O"));
//OK
}
mCableTestGPTimer.start();
mCableTestSMState = CABLE_AUTO_TEST_PINS_STATE;
}
break;
}//case CABLE_AUTO_TEST_SELF_TEST_STATE
case CABLE_AUTO_TEST_PINS_STATE:
{
switch(Event)
{
case CABLE_TEST_TICK_SM_EVENT:
{
if(mCableTestGPTimer.elapsed() < mTestSettingsHandle->mPinHoldTime)
{
break;
}
else
{
QBitArray Out = mTestOutputConnectorHandle->GetOutputPinsStates();
QBitArray In = mTestInputConnectorHandle->GetInputPinsStates();
//Analyse the inputs buffer...
if(In.count(true) != 1) //check if only 1 input pin is active
{
if(In.count(true) == 0) //Check if no input pin is active
{
if(mIsSecondPass == false)
{
mAutoTestReportHandle->SetPinContinuityResult(mCurPinUnderTest,false);
mTestReportHandle->AddLogEntry(QString("Échec du test du contact %1 : aucun contact activé en entrée").arg(mCurPinUnderTest));
}
else
{
mAutoTestReportHandle->SetPinSecondTestResult(mCurPinUnderTest,false);
mTestReportHandle->AddLogEntry(QString("2è passe: échec du test du contact %1 : aucun contact activé en entrée").arg(mCurPinUnderTest));
}
}
else //If here, many input pins are active...
{
if(mIsSecondPass == false)
{
QString LogString = QString("Échec du test d'isolation du contact %1 : (%2) contacts activés en entrée : ").arg(mCurPinUnderTest).arg(In.count(true));
mAutoTestReportHandle->SetPinIsolationResult(mCurPinUnderTest,false);
for(int pin = 0; pin < In.count(); pin++)
{
if(In.at(pin))
{
mAutoTestReportHandle->AddShortedPinToPinTest(mCurPinUnderTest,pin+1);
LogString.append(QString("[%1]").arg(pin+1));
}
}
// qDebug("Échec du test d'isolation du contact %d : (%d) contacts activés en entrée",mCurPinUnderTest,In.count(true));
mTestReportHandle->AddLogEntry(LogString);
}
else
{
mAutoTestReportHandle->SetPinSecondTestResult(mCurPinUnderTest,false);
QString LogString = QString("2è passe: chec du test d'isolation du contact %1 : (%2) contacts activés en entrée : ").arg(mCurPinUnderTest).arg(In.count(true));
mTestReportHandle->AddLogEntry(LogString);
}
}
}
else if(In.at(mCurPinUnderTest-1) == false)
{
//TODO: Manage this failure mode
//the wrong pin is set on the input... find which
int WrongPin = 0;
for(int pin = 0; pin < In.count(); pin++)
{
if(In.at(pin))
{
WrongPin = pin+1;
break;
}
}
if(mIsSecondPass == false)
{
mAutoTestReportHandle->SetPinConcordanceTestResult(mCurPinUnderTest,false,WrongPin);
mTestReportHandle->AddLogEntry(QString("Échec du test d'assignation du contact %1: le contact %2 est activé.").arg(mCurPinUnderTest).arg(WrongPin));
}
else
{
mAutoTestReportHandle->SetPinSecondTestResult(mCurPinUnderTest,false);
mTestReportHandle->AddLogEntry(QString("2è passe: échec du test d'assignation du contact %1: le contact %2 est activé.").arg(mCurPinUnderTest).arg(WrongPin));
}
}
else
{
//Pin test passed. Test the next one
if(mIsSecondPass == false)
{
mAutoTestReportHandle->SetPinTestAllPassed(mCurPinUnderTest);
mTestReportHandle->AddLogEntry(QString("Succès du test du contact %1").arg(mCurPinUnderTest));
}
else
{
mAutoTestReportHandle->SetPinSecondTestResult(mCurPinUnderTest,true);
mTestReportHandle->AddLogEntry(QString("2è passe: succès du test du contact %1").arg(mCurPinUnderTest));
}
}
mCurPinUnderTest++;
int TestPinCount = mTestOutputConnectorHandle->GetPinCount();
if(mTestInputConnectorHandle->GetPinCount() < TestPinCount)
{
TestPinCount = mTestInputConnectorHandle->GetPinCount();
}
if(mCurPinUnderTest > TestPinCount)
{
//Test finished.
if(mTestSettingsHandle->mExecSecondPass == true) //Check if we need to execute the test twice
{
if(mIsSecondPass == true) //Check if this was the second pass.
{
mCableTestSMState = CABLE_AUTO_TEST_END_TEST_STATE; //test finished
}
else
{
mCableTestSMState = CABLE_AUTO_TEST_START_SECOND_PASS_STATE; //start the 2nd test
}
}
else
{
mCableTestSMState = CABLE_AUTO_TEST_END_TEST_STATE; //test finished
}
}
else
{
mTestOutputConnectorHandle->SetSinglePin(mCurPinUnderTest);
mCableTestGPTimer.start();
}
}
break;
}
case CABLE_TEST_PAUSE_AUTO_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_AUTO_TEST_PAUSE_STATE;
mProgramHandle->CableEngineModeChanged(GetTestEngineCurrentMode());
// qDebug("Test mis en pause...");
mTestReportHandle->AddLogEntry(QString("Test mis en pause"));
break;
}
case CABLE_TEST_CANCEL_AUTO_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_AUTO_TEST_END_TEST_STATE;
// qDebug("Test annulé...");
mTestReportHandle->AddLogEntry(QString("Test annulé par l'utilisateur"));
break;
}
default:
{
break;
}
}
break;
}//case CABLE_AUTO_TEST_PINS_STATE:
case CABLE_AUTO_TEST_PAUSE_STATE:
{
switch(Event)
{
case CABLE_TEST_RESUME_AUTO_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_AUTO_TEST_PINS_STATE;
mProgramHandle->CableEngineModeChanged(GetTestEngineCurrentMode());
// qDebug("Test redémarré...");
mTestReportHandle->AddLogEntry(QString("Test redémarré..."));
break;
}
case CABLE_TEST_CANCEL_AUTO_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_AUTO_TEST_END_TEST_STATE;
// qDebug("Test annulé...");
mTestReportHandle->AddLogEntry(QString("Test annulé par l'utilisateur"));
break;
}
default:
{
break;
}
}
break;
}//case CABLE_AUTO_TEST_PAUSE_STATE
case CABLE_AUTO_TEST_START_SECOND_PASS_STATE:
{
//restart test but skip module self-test...
mIsSecondPass = true;
mCurPinUnderTest = 1;
mTestOutputConnectorHandle->SetSinglePin(mCurPinUnderTest);
mCableTestGPTimer.start();
mCableTestSMState = CABLE_AUTO_TEST_PINS_STATE;
mTestReportHandle->AddLogEntry(QString("Démarrage du deuxième test"));
break;
}//case CABLE_AUTO_TEST_START_SECOND_PASS_STATE
case CABLE_AUTO_TEST_END_TEST_STATE:
{
// qDebug("Test automatique terminé...");
mIsSecondPass = false;
mTestReportHandle->AddLogEntry(QString("Test automatique terminé"));
mTestOutputConnectorHandle->ClearAllPins();
mCableTestSMState = CABLE_TEST_STBY_STATE;
mProgramHandle->CableEngineModeChanged(GetTestEngineCurrentMode());
break;
}//case CABLE_TEST_END_TEST_STATE
case CABLE_TEST_START_MANUAL_TEST_STATE:
{
mTestOutputConnectorHandle->ClearAllPins();
// qDebug("Entrée en mode test manuel");
mTestReportHandle->AddLogEntry(QString("Entrée en mode test manuel"));
mCableTestSMState = CABLE_MANUAL_TEST_PINS_STATE;
mProgramHandle->CableEngineModeChanged(GetTestEngineCurrentMode());
break;
}//CABLE_TEST_START_MANUAL_TEST_STATE
case CABLE_MANUAL_TEST_PINS_STATE:
{
switch(Event)
{
case CABLE_TEST_EXIT_MANUAL_TEST_SM_EVENT:
{
mCableTestSMState = CABLE_MANUAL_TEST_END_TEST_STATE;
break;
}
default:
{
break;
}
}
break;
}//CABLE_MANUAL_TEST_PINS_STATE
case CABLE_MANUAL_TEST_END_TEST_STATE:
{
mTestOutputConnectorHandle->ClearAllPins();
mCableTestSMState = CABLE_TEST_STBY_STATE;
mProgramHandle->CableEngineModeChanged(GetTestEngineCurrentMode());
mTestReportHandle->AddLogEntry(QString("Fin du test manuel"));
break;
}
}
}
void CCableTestEngine::SMTimerExpired()
{
//TODO: manage the end of the test
CableTestEngineStateMachine(CABLE_TEST_TICK_SM_EVENT);
}
int CCableTestEngine::StartAutomatedTest()
{
if(mCableTestSMState != CABLE_TEST_STBY_STATE)
{
return RET_ERROR;
}
CableTestEngineStateMachine(CABLE_TEST_START_AUTO_TEST_SM_EVENT);
return RET_OK;
}
int CCableTestEngine::PauseAutomatedTest()
{
CableTestEngineStateMachine(CABLE_TEST_PAUSE_AUTO_TEST_SM_EVENT);
return RET_OK;
}
int CCableTestEngine::ResumeAutomatedTest()
{
CableTestEngineStateMachine(CABLE_TEST_RESUME_AUTO_TEST_SM_EVENT);
return RET_OK;
}
int CCableTestEngine::StopAutomatedTest()
{
CableTestEngineStateMachine(CABLE_TEST_CANCEL_AUTO_TEST_SM_EVENT);
return RET_OK;
}
int CCableTestEngine::StartManualTest()
{
CableTestEngineStateMachine(CABLE_TEST_START_MANUAL_TEST_SM_EVENT);
return RET_OK;
}
int CCableTestEngine::StopManualTest()
{
CableTestEngineStateMachine(CABLE_TEST_EXIT_MANUAL_TEST_SM_EVENT);
return RET_OK;
}
CCableTestEngine::eCableTestEngineMode CCableTestEngine::GetTestEngineCurrentMode()
{
switch(mCableTestSMState)
{
case CABLE_TEST_INIT_STATE:
case CABLE_TEST_STBY_STATE:
case CABLE_AUTO_TEST_END_TEST_STATE:
case CABLE_MANUAL_TEST_END_TEST_STATE:
{
return CABLE_TEST_STBY_MODE;
break;
}
case CABLE_TEST_START_AUTOMATED_TEST_STATE:
case CABLE_AUTO_TEST_SELF_TEST_STATE:
case CABLE_AUTO_TEST_PINS_STATE:
{
return CABLE_AUTO_TEST_RUNNING_MODE;
break;
}
case CABLE_AUTO_TEST_PAUSE_STATE:
{
return CABLE_AUTO_TEST_PAUSED_MODE;
break;
}
case CABLE_TEST_START_MANUAL_TEST_STATE:
case CABLE_MANUAL_TEST_PINS_STATE:
default:
{
return CABLE_TEST_MANUAL_MODE;
break;
}
}
}
int CCableTestEngine::ManualPinToggle(int ConnectorPinNbr)
{
if(GetTestEngineCurrentMode() == CABLE_TEST_MANUAL_MODE)
{
return mTestOutputConnectorHandle->TogglePin(ConnectorPinNbr);
}
return RET_ERROR;
} }

View File

@ -1,16 +1,98 @@
#ifndef CABLETESTENGINE_H #ifndef CABLETESTENGINE_H
#define CABLETESTENGINE_H #define CABLETESTENGINE_H
#include "Cable.h" #include "Cable.h"
#include <QTimer>
#include "InputConnector.h"
#include "OutputConnector.h"
#include <QElapsedTimer>
#include "TestReport.h"
class CCableTestEngine class CCableTestBench;
class CTestBenchSettings;
#define TEST_ENGINE_SM_STANDBY_TIMEOUT 300 //ms
#define TEST_ENGINE_SM_TIMEOUT 100 //ms
class CCableTestEngine : public QObject
{ {
Q_OBJECT
public: public:
enum eCableTestEngineMode
{
CABLE_TEST_STBY_MODE,
CABLE_AUTO_TEST_RUNNING_MODE,
CABLE_AUTO_TEST_PAUSED_MODE,
CABLE_TEST_MANUAL_MODE
};
CCableTestEngine(); CCableTestEngine();
~CCableTestEngine();
int InitCableTestEngine(CCableTestBench *ProgramHandle, CTestBenchSettings *SettingsHandle);
int StartAutomatedTest();
int PauseAutomatedTest();
int ResumeAutomatedTest();
int StopAutomatedTest();
int StartManualTest();
int StopManualTest();
int ManualPinToggle(int ConnectorPinNbr);
bool IsAutomaticTestRunning();
eCableTestEngineMode GetTestEngineCurrentMode();
private: private:
CCable *mTestCable; enum eCableTestState
{
CABLE_TEST_INIT_STATE,
CABLE_TEST_STBY_STATE,
CABLE_TEST_START_AUTOMATED_TEST_STATE,
CABLE_AUTO_TEST_SELF_TEST_STATE,
CABLE_AUTO_TEST_PINS_STATE,
CABLE_AUTO_TEST_PAUSE_STATE,
CABLE_AUTO_TEST_END_TEST_STATE,
CABLE_AUTO_TEST_START_SECOND_PASS_STATE,
CABLE_TEST_START_MANUAL_TEST_STATE,
CABLE_MANUAL_TEST_PINS_STATE,
CABLE_MANUAL_TEST_END_TEST_STATE
};
enum eCableTestSMEvents
{
CABLE_TEST_START_AUTO_TEST_SM_EVENT,
CABLE_TEST_TICK_SM_EVENT,
CABLE_TEST_PAUSE_AUTO_TEST_SM_EVENT,
CABLE_TEST_RESUME_AUTO_TEST_SM_EVENT,
CABLE_TEST_CANCEL_AUTO_TEST_SM_EVENT,
CABLE_TEST_START_MANUAL_TEST_SM_EVENT,
CABLE_TEST_EXIT_MANUAL_TEST_SM_EVENT
};
CCable *mTestCable;
int mCableTestSMState;
CCableTestBench *mProgramHandle;
CInputConnector *mTestInputConnectorHandle;
COutputConnector *mTestOutputConnectorHandle;
int mCurPinUnderTest;
bool mExecSecondTest;
bool mIsSecondPass;
CTestBenchSettings *mTestSettingsHandle;
QTimer *mCableTestSMTimer;
QElapsedTimer mCableTestGPTimer;
CAutomatedTestReport *mAutoTestReportHandle;
CTestReport *mTestReportHandle;
void CableTestEngineStateMachine(int Event);
public slots:
void SMTimerExpired();
}; };

View File

@ -2,6 +2,8 @@
#include "ui_CableTestPage.h" #include "ui_CableTestPage.h"
#include "CableTestBench.h" #include "CableTestBench.h"
#include <QTextCodec> #include <QTextCodec>
#include "CableParametersData.h"
#include <QScrollBar>
CCableTestPage::CCableTestPage(QWidget *parent) : CCableTestPage::CCableTestPage(QWidget *parent) :
QWidget(parent), QWidget(parent),
@ -13,6 +15,23 @@ CCableTestPage::CCableTestPage(QWidget *parent) :
ui->setupUi(this); ui->setupUi(this);
mProgramHandle = 0; mProgramHandle = 0;
ui->mStationNameCombo->insertItem(0,"Frontenac",QVariant("1S52"));
ui->mStationNameCombo->insertItem(1,"Côte-Vertu",QVariant("2S22"));
ui->mStationNameCombo->insertItem(2,"Angrignon",QVariant("1S18"));
ui->mStationNameCombo->insertItem(3,"Garage Angrignon",QVariant("1G17"));
ui->mStationNameCombo->insertItem(4,"Atwater",QVariant("1S34"));
ui->mStationNameCombo->insertItem(5,"Lionel-Groulx",QVariant("1S32"));
ui->mStationNameCombo->insertItem(6,"Viau",QVariant("1S60"));
ui->mStationNameCombo->insertItem(6,"Terminus Beaugrand",QVariant("1S70"));
ui->mStationNameCombo->insertItem(6,"Bonaventure",QVariant("2S53"));
ui->mStationNameCombo->insertItem(6,"Lionel-Groulx L2",QVariant("2S46"));
ui->mStationNameCombo->insertItem(6,"Garage Bourassa",QVariant("2G81"));
ui->mStationNameCombo->insertItem(6,"Garage Beaugrand",QVariant("1G71"));
ui->mStationNameCombo->insertItem(6,"Longueuil",QVariant("4S54"));
ui->mStationNameCombo->insertItem(6,"Berri L4 et L2-L4",QVariant("4S50"));
mInspectionNotDonePixmap = QPixmap("./images/todo.png").scaled(ui->mInspectionDoneIcon->geometry().width(),ui->mInspectionDoneIcon->geometry().height()); mInspectionNotDonePixmap = QPixmap("./images/todo.png").scaled(ui->mInspectionDoneIcon->geometry().width(),ui->mInspectionDoneIcon->geometry().height());
mInspectionDonePixmap = QPixmap("./images/done1.png").scaled(ui->mInspectionDoneIcon->geometry().width(),ui->mInspectionDoneIcon->geometry().height()); mInspectionDonePixmap = QPixmap("./images/done1.png").scaled(ui->mInspectionDoneIcon->geometry().width(),ui->mInspectionDoneIcon->geometry().height());
ui->mInspectionDoneIcon->setPixmap(mInspectionNotDonePixmap); ui->mInspectionDoneIcon->setPixmap(mInspectionNotDonePixmap);
@ -21,7 +40,46 @@ CCableTestPage::CCableTestPage(QWidget *parent) :
connect(ui->mConnectorSelectWidget,SIGNAL(ConnectorSelected(CConnectorDefs::eConnectorType)),this,SLOT(ConnectorSelectionChanged(CConnectorDefs::eConnectorType))); connect(ui->mConnectorSelectWidget,SIGNAL(ConnectorSelected(CConnectorDefs::eConnectorType)),this,SLOT(ConnectorSelectionChanged(CConnectorDefs::eConnectorType)));
ui->mInputTestVisualisationWidget->SetConnectorPinCount(0); ui->mInputTestVisualisationWidget->SetConnectorPinCount(0);
ui->mOutputTestVisualisationWidget->SetConnectorPinCount(0); ui->mOutputTestVisualisationWidget->SetConnectorPinCount(0);
ui->mVisualInspStepChkBx->setCheckable(false);
mGuiRefreshTimer.setSingleShot(false);
mGuiRefreshTimer.setInterval(200);
connect(ui->mStartTestBtn,SIGNAL(clicked()),this,SLOT(StartTestBtnClicked()));
connect(ui->mReinitTestBtn,SIGNAL(clicked()),this,SLOT(ResetTestBtnClicked()));
connect(ui->mNewCableBtn,SIGNAL(clicked()),this,SLOT(NewCableBtnClicked()));
connect(ui->mStartManualTestBtn,SIGNAL(clicked()),this,SLOT(StartManualTestBtnClicked()));
connect(ui->mOutputTestVisualisationWidget,SIGNAL(PinClicked(int)),this,SLOT(OutputConnectorPinClicked(int)));
connect(&mGuiRefreshTimer,SIGNAL(timeout()),this,SLOT(GuiRefreshTimerExpired()));
connect(ui->mSaveReportBtn,SIGNAL(clicked()),this,SLOT(SaveReportBtnClicked()));
connect(ui->mOpenReportBtn,SIGNAL(clicked()),this,SLOT(OpenReportBtnClicked()));
connect(ui->mIdentCableEditBox,SIGNAL(textEdited(QString)),this,SLOT(CableConfigTextChanged()));
connect(ui->mNomTesteurEditBox,SIGNAL(textEdited(QString)),this,SLOT(CableConfigTextChanged()));
mDefaultCableName = "CABLE_XX_NO_AA_BB.c";
mDefaultInspectorName = "JFMartel";
ui->mStartTestBtn->setEnabled(false);
ui->mStartManualTestBtn->setEnabled(false);
ui->mOutputTestVisualisationWidget->DisablePinClicks();
QPalette pal;
pal.setColor(QPalette::WindowText,Qt::red);
ui->mVisualInspectionStepLabel->setPalette(pal);
ui->mVisualInspectionStepLabel->setText("2. Inspection visuelle: À FAIRE");
ui->mCableIdentStepLabel->setPalette(pal);
ui->mCableIdentStepLabel->setText("1. Identification du câble: À REMPLIR");
ui->mConnectorSelStepLabel->setPalette(pal);
ui->mConnectorSelStepLabel->setText("3. Sélection du connecteur d'entrée: À FAIRE");
ResetCable();
} }
CCableTestPage::~CCableTestPage() CCableTestPage::~CCableTestPage()
@ -40,20 +98,67 @@ int CCableTestPage::SetVisualInspectionDone(bool Done)
if(Done) if(Done)
{ {
ui->mInspectionDoneIcon->setPixmap(mInspectionDonePixmap); ui->mInspectionDoneIcon->setPixmap(mInspectionDonePixmap);
ui->mExecInspVisuelleBtn->setText(QString("Réviser Inspection").toUtf8()); ui->mExecInspVisuelleBtn->setText(QString("Réviser\n Inspection").toUtf8());
ui->mVisualInspStepChkBx->setCheckable(true);
ui->mVisualInspStepChkBx->setChecked(true); QPalette pal;
ui->mVisualInspStepChkBx->setCheckable(false); pal.setColor(QPalette::WindowText,Qt::darkGreen);
ui->mVisualInspectionStepLabel->setPalette(pal);
ui->mVisualInspectionStepLabel->setText("2. Inspection visuelle: OK");
} }
else else
{ {
ui->mInspectionDoneIcon->setPixmap(mInspectionNotDonePixmap); ui->mInspectionDoneIcon->setPixmap(mInspectionNotDonePixmap);
ui->mExecInspVisuelleBtn->setText("Effectuer Inspection"); ui->mExecInspVisuelleBtn->setText("Effectuer\n Inspection");
ui->mVisualInspStepChkBx->setChecked(false);
QPalette pal;
pal.setColor(QPalette::WindowText,Qt::red);
ui->mVisualInspectionStepLabel->setPalette(pal);
ui->mVisualInspectionStepLabel->setText("2. Inspection visuelle: À FAIRE");
} }
return RET_OK; return RET_OK;
} }
int CCableTestPage::SetConnectorSelStep(bool done)
{
QPalette pal;
if(done)
{
pal.setColor(QPalette::WindowText,Qt::darkGreen);
ui->mConnectorSelStepLabel->setPalette(pal);
ui->mConnectorSelStepLabel->setText("3. Sélection du connecteur d'entrée: OK");
}
else
{
pal.setColor(QPalette::WindowText,Qt::red);
ui->mConnectorSelStepLabel->setPalette(pal);
ui->mConnectorSelStepLabel->setText("3. Sélection du connecteur d'entrée: À FAIRE");
}
return RET_OK;
}
int CCableTestPage::SetCableConfigureStep(bool done)
{
QPalette pal;
if(done)
{
pal.setColor(QPalette::WindowText,Qt::darkGreen);
ui->mCableIdentStepLabel->setPalette(pal);
ui->mCableIdentStepLabel->setText("1. Identification du câble: OK");
}
else
{
pal.setColor(QPalette::WindowText,Qt::red);
ui->mCableIdentStepLabel->setPalette(pal);
ui->mCableIdentStepLabel->setText("1. Identification du câble: À REMPLIR");
}
return RET_OK;
}
void CCableTestPage::ConnectorSelectionChanged(CConnectorDefs::eConnectorType ConType) void CCableTestPage::ConnectorSelectionChanged(CConnectorDefs::eConnectorType ConType)
{ {
CCable* Cable; CCable* Cable;
@ -64,4 +169,229 @@ void CCableTestPage::ConnectorSelectionChanged(CConnectorDefs::eConnectorType Co
ui->mInputTestVisualisationWidget->SetConnectorPinCount(Cable->GetInputConnector()->GetPinCount()); ui->mInputTestVisualisationWidget->SetConnectorPinCount(Cable->GetInputConnector()->GetPinCount());
ui->mOutputTestVisualisationWidget->SetConnectorPinCount(Cable->GetOutputConnector()->GetPinCount()); ui->mOutputTestVisualisationWidget->SetConnectorPinCount(Cable->GetOutputConnector()->GetPinCount());
} }
}
void CCableTestPage::StartTestBtnClicked()
{
mProgramHandle->StartPauseAutomaticTestRequest();
}
void CCableTestPage::StartManualTestBtnClicked()
{
mProgramHandle->StartStopManualTestRequest();
}
void CCableTestPage::ResetTestBtnClicked()
{
mProgramHandle->ResetAutomaticTestRequest();
}
void CCableTestPage::NewCableBtnClicked()
{
mProgramHandle->NewCableRequest();
}
int CCableTestPage::ResetCable()
{
//reset pins state visualization area
ui->mInputTestVisualisationWidget->ClearConnectorsLists();
ui->mOutputTestVisualisationWidget->ClearConnectorsLists();
//Reset cable config zone
// ui->mIdentCableEditBox->setText(mDefaultCableName);
// ui->mNomTesteurEditBox->setText(mDefaultInspectorName);
//Reset Inspection Visuelle result (main program will clear the form)
SetVisualInspectionDone(false);
// SetCableConfigureStep(false);
SetConnectorSelStep(false);
//Clear connector selection zone
ui->mConnectorSelectWidget->ClearAllConnectorsSelections();
ui->mTestLogTextBox->clear();
ui->mSaveReportBtn->setEnabled(false);
ui->mOpenReportBtn->setEnabled(false);
SetAutoTestResult("");
return RET_OK;
}
int CCableTestPage::EnableStartTestBtn()
{
ui->mStartTestBtn->setEnabled(true);
ui->mStartManualTestBtn->setEnabled(true);
return RET_OK;
}
int CCableTestPage::DisableStartTestBtn()
{
ui->mStartTestBtn->setEnabled(false);
ui->mStartManualTestBtn->setEnabled(false);
return RET_OK;
}
int CCableTestPage::CableAutomaticTestStarted()
{
ui->mStartManualTestBtn->setEnabled(false);
DisableGuiForTest();
ui->mStartTestBtn->setText("Interrompre Test");
SetAutoTestResult("En Cours...",Qt::black);
return RET_OK;
}
int CCableTestPage::CableAutomaticTestPaused()
{
ui->mStartTestBtn->setText("Reprendre Test");
return RET_OK;
}
int CCableTestPage::CableTestEnded()
{
EnableGuiAfterTest();
ui->mOutputTestVisualisationWidget->DisablePinClicks();
ui->mStartManualTestBtn->setEnabled(true);
ui->mStartTestBtn->setEnabled(true);
ui->mStartTestBtn->setText("Démarrer Test");
ui->mStartManualTestBtn->setText("Démarrer");
ui->mReinitTestBtn->setEnabled(true);
ui->mSaveReportBtn->setEnabled(true);
return RET_OK;
}
int CCableTestPage::CableManualTestStarted()
{
ui->mStartTestBtn->setEnabled(false);
ui->mOutputTestVisualisationWidget->EnablePinClicks();
DisableGuiForTest();
ui->mStartManualTestBtn->setText("Terminer");
ui->mReinitTestBtn->setEnabled(false);
ui->mSaveReportBtn->setEnabled(false);
return RET_OK;
}
int CCableTestPage::DisableGuiForTest()
{
ui->mNewCableBtn->setEnabled(false);
ui->mConnectorSelectWidget->setEnabled(false);
ui->mIdentCableEditBox->setEnabled(false);
ui->mExecInspVisuelleBtn->setEnabled(false);
ui->mNomTesteurEditBox->setEnabled(false);
ui->mTypeCableCombo->setEnabled(false);
ui->mStationNameCombo->setEnabled(false);
return RET_OK;
}
int CCableTestPage::EnableGuiAfterTest()
{
ui->mNewCableBtn->setEnabled(true);
ui->mConnectorSelectWidget->setEnabled(true);
ui->mIdentCableEditBox->setEnabled(true);
ui->mExecInspVisuelleBtn->setEnabled(true);
ui->mNomTesteurEditBox->setEnabled(true);
ui->mTypeCableCombo->setEnabled(true);
ui->mStationNameCombo->setEnabled(true);
return RET_OK;
}
void CCableTestPage::OutputConnectorPinClicked(int PinNbr)
{
mProgramHandle->ManualPinToggleRequest(PinNbr);
}
void CCableTestPage::GuiRefreshTimerExpired()
{
mProgramHandle->RefreshConnectorsStateRequest();
}
int CCableTestPage::SetOutputConnectorState(QBitArray PinStates)
{
return ui->mOutputTestVisualisationWidget->SetConnectorPinStates(PinStates);
}
int CCableTestPage::SetInputConnectorState(QBitArray PinStates)
{
return ui->mInputTestVisualisationWidget->SetConnectorPinStates(PinStates);
}
void CCableTestPage::showEvent(QShowEvent *event)
{
qDebug("Refresh timer started");
mGuiRefreshTimer.start();
}
void CCableTestPage::hideEvent(QHideEvent *event)
{
qDebug("Refresh timer stopped");
mGuiRefreshTimer.stop();
}
int CCableTestPage::FillReportCableParametersData(CCableParametersData *ReportPtr)
{
ReportPtr->SetCableParams(ui->mStationNameCombo->currentText(),
ui->mStationNameCombo->itemData(ui->mStationNameCombo->currentIndex()).toString(),
ui->mIdentCableEditBox->text(),
ui->mTypeCableCombo->currentText(),
ui->mNomTesteurEditBox->text());
return RET_OK;
}
void CCableTestPage::AddTestLogEntry(QString Entry)
{
ui->mTestLogTextBox->insertPlainText(Entry);
ui->mTestLogTextBox->verticalScrollBar()->setValue(ui->mTestLogTextBox->verticalScrollBar()->maximum());
}
void CCableTestPage::SaveReportBtnClicked()
{
mProgramHandle->SaveReportRequest();
}
void CCableTestPage::OpenReportBtnClicked()
{
mProgramHandle->OpenReportRequest();
}
int CCableTestPage::EnableOpenReportBtn()
{
ui->mOpenReportBtn->setEnabled(true);
return RET_OK;
}
int CCableTestPage::SetAutoTestResult(QString Result, QColor color)
{
QPalette pal;
pal.setColor(QPalette::WindowText,color);
ui->mAutoTestResultLabel->setPalette(pal);
ui->mAutoTestResultLabel->setText(Result);
return RET_OK;
}
bool CCableTestPage::IsCableConfigured()
{
if(ui->mIdentCableEditBox->text().isEmpty())
{
return false;
}
if(ui->mNomTesteurEditBox->text().isEmpty())
{
return false;
}
return true;
}
void CCableTestPage::CableConfigTextChanged()
{
mProgramHandle->CableConfigChanged();
} }

View File

@ -3,8 +3,13 @@
#include <QWidget> #include <QWidget>
#include "CableTestBenchDefs.h" #include "CableTestBenchDefs.h"
#include <QBitArray>
#include <QTimer>
class CCableTestBench; class CCableTestBench;
class CCableParametersData;
namespace Ui { namespace Ui {
class CCableTestPage; class CCableTestPage;
@ -19,19 +24,61 @@ public:
~CCableTestPage(); ~CCableTestPage();
CCableTestBench *mProgramHandle; CCableTestBench *mProgramHandle;
QTimer mGuiRefreshTimer;
void showEvent(QShowEvent *event);
void hideEvent(QHideEvent *event);
int SetVisualInspectionDone(bool Done = true); int SetVisualInspectionDone(bool Done = true);
int SetCableConfigureStep(bool done = true);
int SetConnectorSelStep(bool done = true);
int ResetCable();
int EnableStartTestBtn();
int DisableStartTestBtn();
int CableAutomaticTestStarted();
int CableAutomaticTestPaused();
int CableTestEnded();
int CableManualTestStarted();
int SetAutoTestResult(QString Result, QColor color = Qt::black);
int EnableOpenReportBtn();
int SetInputConnectorState(QBitArray PinStates);
int SetOutputConnectorState(QBitArray PinStates);
int FillReportCableParametersData(CCableParametersData* ReportPtr);
bool IsCableConfigured();
private: private:
Ui::CCableTestPage *ui; Ui::CCableTestPage *ui;
QPixmap mInspectionDonePixmap, mInspectionNotDonePixmap; QPixmap mInspectionDonePixmap, mInspectionNotDonePixmap;
QString mDefaultCableName, mDefaultInspectorName;
int DisableGuiForTest();
int EnableGuiAfterTest();
public slots: public slots:
void InspVisuelleBtnClicked(); void InspVisuelleBtnClicked();
void ConnectorSelectionChanged(CConnectorDefs::eConnectorType ConType); void ConnectorSelectionChanged(CConnectorDefs::eConnectorType ConType);
void StartTestBtnClicked();
void ResetTestBtnClicked();
void NewCableBtnClicked();
void StartManualTestBtnClicked();
void OutputConnectorPinClicked(int PinNbr);
void GuiRefreshTimerExpired();
void AddTestLogEntry(QString Entry);
void SaveReportBtnClicked();
void OpenReportBtnClicked();
void CableConfigTextChanged();
}; };
#endif // CABLETESTPAGE_H #endif // CABLETESTPAGE_H

View File

@ -22,14 +22,19 @@
<height>537</height> <height>537</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
</widget> </widget>
<widget class="QFrame" name="mCableConfigFrame"> <widget class="QFrame" name="mCableConfigFrame">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>50</x> <x>50</x>
<y>50</y> <y>40</y>
<width>471</width> <width>471</width>
<height>121</height> <height>161</height>
</rect> </rect>
</property> </property>
<property name="frameShape"> <property name="frameShape">
@ -46,9 +51,9 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>60</x> <x>60</x>
<y>60</y> <y>50</y>
<width>451</width> <width>451</width>
<height>100</height> <height>144</height>
</rect> </rect>
</property> </property>
<layout class="QGridLayout" name="gridLayout"> <layout class="QGridLayout" name="gridLayout">
@ -56,7 +61,7 @@
<widget class="QLabel" name="mNomTesteurLabel"> <widget class="QLabel" name="mNomTesteurLabel">
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -66,6 +71,11 @@
</item> </item>
<item row="2" column="1" colspan="2"> <item row="2" column="1" colspan="2">
<widget class="QComboBox" name="mTypeCableCombo"> <widget class="QComboBox" name="mTypeCableCombo">
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<item> <item>
<property name="text"> <property name="text">
<string>Permanent</string> <string>Permanent</string>
@ -79,52 +89,28 @@
</widget> </widget>
</item> </item>
<item row="1" column="1" colspan="2"> <item row="1" column="1" colspan="2">
<widget class="QLineEdit" name="mIdentCableEditBox"/> <widget class="QLineEdit" name="mIdentCableEditBox">
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
</widget>
</item> </item>
<item row="0" column="1" colspan="2"> <item row="0" column="1" colspan="2">
<widget class="QComboBox" name="mStationNameCombo"> <widget class="QComboBox" name="mStationNameCombo">
<item> <property name="font">
<property name="text"> <font>
<string>Frontenac</string> <pointsize>14</pointsize>
</property> </font>
</item> </property>
<item>
<property name="text">
<string>Côte-Vertu</string>
</property>
</item>
<item>
<property name="text">
<string>Angrignon</string>
</property>
</item>
<item>
<property name="text">
<string>Garage Angrignon</string>
</property>
</item>
<item>
<property name="text">
<string>Atwater</string>
</property>
</item>
<item>
<property name="text">
<string>Lionel-Groulx</string>
</property>
</item>
<item>
<property name="text">
<string>Viau</string>
</property>
</item>
</widget> </widget>
</item> </item>
<item row="0" column="0" alignment="Qt::AlignRight"> <item row="0" column="0" alignment="Qt::AlignRight">
<widget class="QLabel" name="StationNameLabel"> <widget class="QLabel" name="StationNameLabel">
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -136,7 +122,7 @@
<widget class="QLabel" name="mTypeCableLabel"> <widget class="QLabel" name="mTypeCableLabel">
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -148,7 +134,7 @@
<widget class="QLabel" name="mIdentCableLabel"> <widget class="QLabel" name="mIdentCableLabel">
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -158,6 +144,11 @@
</item> </item>
<item row="3" column="1" colspan="2"> <item row="3" column="1" colspan="2">
<widget class="QLineEdit" name="mNomTesteurEditBox"> <widget class="QLineEdit" name="mNomTesteurEditBox">
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text"> <property name="text">
<string/> <string/>
</property> </property>
@ -169,14 +160,14 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>60</x> <x>60</x>
<y>20</y> <y>10</y>
<width>271</width> <width>271</width>
<height>20</height> <height>20</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>16</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -223,13 +214,19 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>10</x> <x>10</x>
<y>50</y> <y>30</y>
<width>121</width> <width>101</width>
<height>23</height> <height>51</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text"> <property name="text">
<string>Effectuer Inspection</string> <string>Effectuer
Inspection</string>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="mInspectionDoneIcon"> <widget class="QLabel" name="mInspectionDoneIcon">
@ -249,15 +246,17 @@
<widget class="CConnectorTestVisualizationWidget" name="mInputTestVisualisationWidget" native="true"> <widget class="CConnectorTestVisualizationWidget" name="mInputTestVisualisationWidget" native="true">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>10</x> <x>500</x>
<y>410</y> <y>410</y>
<width>471</width> <width>461</width>
<height>351</height> <height>351</height>
</rect> </rect>
</property> </property>
<property name="autoFillBackground"> <property name="autoFillBackground">
<bool>false</bool> <bool>false</bool>
</property> </property>
<zorder>mOutputContactsTextLabel</zorder>
<zorder>mOutputTestVisualisationWidget</zorder>
</widget> </widget>
<widget class="Line" name="line"> <widget class="Line" name="line">
<property name="geometry"> <property name="geometry">
@ -272,23 +271,10 @@
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
</widget> </widget>
<widget class="CConnectorTestVisualizationWidget" name="mOutputTestVisualisationWidget" native="true">
<property name="geometry">
<rect>
<x>510</x>
<y>410</y>
<width>441</width>
<height>351</height>
</rect>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
</widget>
<widget class="Line" name="line_2"> <widget class="Line" name="line_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>490</x> <x>480</x>
<y>390</y> <y>390</y>
<width>20</width> <width>20</width>
<height>371</height> <height>371</height>
@ -301,9 +287,9 @@
<widget class="QLabel" name="mInputContactsTextLabel"> <widget class="QLabel" name="mInputContactsTextLabel">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>130</x> <x>620</x>
<y>370</y> <y>370</y>
<width>161</width> <width>241</width>
<height>41</height> <height>41</height>
</rect> </rect>
</property> </property>
@ -316,33 +302,20 @@
<string>Contacts entrée</string> <string>Contacts entrée</string>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="mOutputContactsTextLabel"> <widget class="QPushButton" name="mNewCableBtn">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>670</x> <x>400</x>
<y>370</y> <y>10</y>
<width>161</width> <width>121</width>
<height>41</height> <height>23</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>16</pointsize> <pointsize>12</pointsize>
</font> </font>
</property> </property>
<property name="text">
<string>Contacts sortie</string>
</property>
</widget>
<widget class="QPushButton" name="mNewCableBtn">
<property name="geometry">
<rect>
<x>430</x>
<y>20</y>
<width>91</width>
<height>23</height>
</rect>
</property>
<property name="text"> <property name="text">
<string>Nouveau Câble</string> <string>Nouveau Câble</string>
</property> </property>
@ -352,8 +325,8 @@
<rect> <rect>
<x>50</x> <x>50</x>
<y>220</y> <y>220</y>
<width>471</width> <width>661</width>
<height>131</height> <height>141</height>
</rect> </rect>
</property> </property>
<property name="frameShape"> <property name="frameShape">
@ -362,81 +335,156 @@
<property name="frameShadow"> <property name="frameShadow">
<enum>QFrame::Raised</enum> <enum>QFrame::Raised</enum>
</property> </property>
<widget class="QPushButton" name="mStartTestBtn"> <widget class="QGroupBox" name="groupBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>260</x> <x>360</x>
<y>20</y> <y>10</y>
<width>91</width> <width>141</width>
<height>23</height> <height>91</height>
</rect> </rect>
</property> </property>
<property name="text"> <property name="title">
<string>Démarrer test</string> <string>Test Automatique</string>
</property> </property>
<widget class="QPushButton" name="mStartTestBtn">
<property name="geometry">
<rect>
<x>20</x>
<y>20</y>
<width>111</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
<property name="text">
<string>Démarrer test</string>
</property>
</widget>
<widget class="QPushButton" name="mReinitTestBtn">
<property name="geometry">
<rect>
<x>20</x>
<y>50</y>
<width>111</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
<property name="text">
<string>Réinitialiser test</string>
</property>
</widget>
</widget> </widget>
<widget class="QPushButton" name="mReinitTestBtn"> <widget class="QGroupBox" name="groupBox_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>260</x> <x>530</x>
<y>10</y>
<width>111</width>
<height>80</height>
</rect>
</property>
<property name="title">
<string>Test Manuel</string>
</property>
<widget class="QPushButton" name="mStartManualTestBtn">
<property name="geometry">
<rect>
<x>20</x>
<y>30</y>
<width>75</width>
<height>23</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Exécuter</string>
</property>
</widget>
</widget>
<widget class="QPushButton" name="mSaveReportBtn">
<property name="geometry">
<rect>
<x>470</x>
<y>102</y>
<width>161</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Sauvegarder Rapport</string>
</property>
</widget>
<widget class="QLabel" name="mCableIdentStepLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>30</y>
<width>341</width>
<height>16</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text">
<string>1. Identification du câble: À REMPLIR</string>
</property>
</widget>
<widget class="QLabel" name="mVisualInspectionStepLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>70</y> <y>70</y>
<width>91</width> <width>331</width>
<height>23</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text"> <property name="text">
<string>Réinitialiser test</string> <string>2. Inspection visuelle: À EXÉCUTER</string>
</property> </property>
</widget> </widget>
<widget class="QCheckBox" name="mCableIdentStepChkBx"> <widget class="QLabel" name="mConnectorSelStepLabel">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>20</x> <x>20</x>
<y>20</y> <y>110</y>
<width>151</width> <width>451</width>
<height>17</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="text"> <property name="font">
<string>1. Identification du câble</string> <font>
</property> <pointsize>14</pointsize>
<property name="checkable"> </font>
<bool>false</bool>
</property>
</widget>
<widget class="QCheckBox" name="mVisualInspStepChkBx">
<property name="geometry">
<rect>
<x>20</x>
<y>50</y>
<width>151</width>
<height>17</height>
</rect>
</property>
<property name="toolTip">
<string extracomment="Test"/>
</property> </property>
<property name="text"> <property name="text">
<string>2. Inspection visuelle</string> <string>3. Sélection du connecteur d'entrée: À FAIRE</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
</widget>
<widget class="QCheckBox" name="mConSelStepChkBx">
<property name="geometry">
<rect>
<x>20</x>
<y>80</y>
<width>191</width>
<height>17</height>
</rect>
</property>
<property name="text">
<string>3. Sélection du connecteur d'entrée</string>
</property>
<property name="checkable">
<bool>false</bool>
</property> </property>
</widget> </widget>
</widget> </widget>
@ -474,6 +522,89 @@
<enum>QFrame::Plain</enum> <enum>QFrame::Plain</enum>
</property> </property>
</widget> </widget>
<widget class="QGroupBox" name="groupBox_3">
<property name="geometry">
<rect>
<x>720</x>
<y>220</y>
<width>231</width>
<height>131</height>
</rect>
</property>
<property name="title">
<string>Résultat du test</string>
</property>
<widget class="QLabel" name="mAutoTestResultLabel">
<property name="geometry">
<rect>
<x>20</x>
<y>30</y>
<width>181</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>26</pointsize>
</font>
</property>
<property name="text">
<string>En cours...</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
<widget class="QPushButton" name="mOpenReportBtn">
<property name="geometry">
<rect>
<x>40</x>
<y>90</y>
<width>141</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Ouvrir Rapport</string>
</property>
</widget>
</widget>
<widget class="CConnectorTestVisualizationWidget" name="mOutputTestVisualisationWidget" native="true">
<property name="geometry">
<rect>
<x>20</x>
<y>410</y>
<width>461</width>
<height>351</height>
</rect>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
</widget>
<widget class="QLabel" name="mOutputContactsTextLabel">
<property name="geometry">
<rect>
<x>190</x>
<y>370</y>
<width>221</width>
<height>41</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>16</pointsize>
</font>
</property>
<property name="text">
<string>Contacts sortie</string>
</property>
</widget>
</widget> </widget>
<customwidgets> <customwidgets>
<customwidget> <customwidget>

View File

@ -5,6 +5,13 @@ CConnector::CConnector()
{ {
mPinCount = 0; mPinCount = 0;
mIOModuleRangeBegin = mIOModuleRangeEnd = 0; mIOModuleRangeBegin = mIOModuleRangeEnd = 0;
mIOInterfaceHandle = 0;
}
int CConnector::SetIOInterface(CIOModulesInterface *IFHandle)
{
mIOInterfaceHandle = IFHandle;
return RET_OK;
} }
int CConnector::GetPinCount() int CConnector::GetPinCount()
@ -31,3 +38,8 @@ bool CConnector::IsConnectorDefined()
return true; return true;
} }
CConnectorDefs::eConnectorType CConnector::GetConnectorType()
{
return mConnectorType;
}

View File

@ -2,6 +2,8 @@
#define CONNECTOR_H #define CONNECTOR_H
#include "CableTestBenchDefs.h" #include "CableTestBenchDefs.h"
#include <QBitArray>
#include "IOModulesInterface.h"
class CConnector class CConnector
@ -10,15 +12,21 @@ public:
CConnector(); CConnector();
int GetPinCount(); int GetPinCount();
int SetConnectorType(CConnectorDefs::eConnectorType type); virtual int SetConnectorType(CConnectorDefs::eConnectorType type);
bool IsConnectorDefined(); bool IsConnectorDefined();
int SetIOInterface(CIOModulesInterface *IFHandle);
CConnectorDefs::eConnectorType GetConnectorType();
private:
int mPinCount;
protected:
unsigned int mPinCount;
CConnectorDefs::eConnectorType mConnectorType; CConnectorDefs::eConnectorType mConnectorType;
int mIOModuleRangeBegin, mIOModuleRangeEnd; int mIOModuleRangeBegin, mIOModuleRangeEnd;
CIOModulesInterface *mIOInterfaceHandle;
}; };

View File

@ -1,17 +1,32 @@
#include "IOModulesInterface.h" #include "IOModulesInterface.h"
#include "GlobalDefine.h" #include "GlobalDefine.h"
#include <QDebug> #include <QDebug>
CIOModulesInterface::CIOModulesInterface() CIOModulesInterface::CIOModulesInterface()
{ {
// mIOModulesQueryTimer = new QTimer();
// connect(mIOModulesQueryTimer,SIGNAL(timeout()),this,SLOT(IOModulesQueryTimerExpired()));
// mIOModulesQueryTimer->setInterval(IO_MODULES_REFRESH_INTERVAL);
// mIOModulesQueryTimer->setSingleShot(true);
hndl=0;
}
CIOModulesInterface::~CIOModulesInterface()
{
//delete mIOModulesQueryTimer;
} }
int CIOModulesInterface::OpenIOModules() int CIOModulesInterface::OpenIOModules(QString IPAddress)
{ {
int ret = SM_Open(&hndl,"192.168.0.52"); int ret = SM_Open(&hndl,IPAddress.toAscii().data());
if(ret < 0) if(ret < 0)
{ {
qDebug("Impossible d'ouvrir le module d'I/O, erreur %d",ret); qDebug("Impossible d'ouvrir le module d'I/O, erreur %d",ret);
@ -20,12 +35,53 @@ int CIOModulesInterface::OpenIOModules()
qDebug("Module d'I/O ouvert avec succès"); qDebug("Module d'I/O ouvert avec succès");
DeviceConfig config;
SM_SelectDevice(hndl,INPUTS_MODULE_1_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",INPUTS_MODULE_1_SLAVE_ID, config.model);
SM_SelectDevice(hndl,INPUTS_MODULE_2_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",INPUTS_MODULE_2_SLAVE_ID, config.model);
SM_SelectDevice(hndl,INPUTS_MODULE_3_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",INPUTS_MODULE_3_SLAVE_ID, config.model);
SM_SelectDevice(hndl,INPUTS_MODULE_4_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",INPUTS_MODULE_4_SLAVE_ID, config.model);
SM_SelectDevice(hndl,OUTPUTS_MODULE_1_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",OUTPUTS_MODULE_1_SLAVE_ID, config.model);
SM_SelectDevice(hndl,OUTPUTS_MODULE_2_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",OUTPUTS_MODULE_2_SLAVE_ID, config.model);
SM_SelectDevice(hndl,OUTPUTS_MODULE_3_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",OUTPUTS_MODULE_3_SLAVE_ID, config.model);
SM_SelectDevice(hndl,OUTPUTS_MODULE_4_SLAVE_ID);
SM_GetDeviceConfig(hndl,&config);
qDebug("Module inputs 1: Address %d, Modèle %d",OUTPUTS_MODULE_4_SLAVE_ID, config.model);
ResetOutputs();
return RET_OK; return RET_OK;
} }
int CIOModulesInterface::CloseIOModules() int CIOModulesInterface::CloseIOModules()
{ {
if(hndl == 0)
return RET_ERROR;
// mIOModulesQueryTimer->stop();
int ret = SM_Close(&hndl); int ret = SM_Close(&hndl);
if(ret < 0) if(ret < 0)
{ {
qDebug("Impossible de fermer le module d'I/O, erreur %d",ret); qDebug("Impossible de fermer le module d'I/O, erreur %d",ret);
@ -33,5 +89,167 @@ int CIOModulesInterface::CloseIOModules()
} }
qDebug("Module d'I/O fermé avec succès"); qDebug("Module d'I/O fermé avec succès");
return RET_OK; return RET_OK;
} }
void CIOModulesInterface::IOModulesQueryTimerExpired()
{
DoAllIOTransactions();
// mIOModulesQueryTimer->start();
qDebug("timerout");
}
int CIOModulesInterface::ReadInputModules()
{
if(hndl == 0)
return RET_ERROR;
unsigned char TempBuf[4];
SM_SelectDevice(hndl,INPUTS_MODULE_1_SLAVE_ID);
SM_ReadDigitalInputs(hndl,0,32,&TempBuf[0]);
memcpy(&mInputsBuffer[0],&TempBuf[0],4);
SM_SelectDevice(hndl,INPUTS_MODULE_2_SLAVE_ID);
SM_ReadDigitalInputs(hndl,0,32,&TempBuf[0]);
memcpy(&mInputsBuffer[4],&TempBuf[0],4);
SM_SelectDevice(hndl,INPUTS_MODULE_3_SLAVE_ID);
SM_ReadDigitalInputs(hndl,0,32,&TempBuf[0]);
memcpy(&mInputsBuffer[8],&TempBuf[0],4);
SM_SelectDevice(hndl,INPUTS_MODULE_4_SLAVE_ID);
SM_ReadDigitalInputs(hndl,0,32,&TempBuf[0]);
memcpy(&mInputsBuffer[12],&TempBuf[0],4);
return RET_OK;
}
int CIOModulesInterface::WriteOutputModules()
{
if(hndl == 0)
return RET_ERROR;
SM_SelectDevice(hndl,OUTPUTS_MODULE_1_SLAVE_ID);
SM_WriteDigitalOutputs(hndl,0,32,&mOutputsBuffer[0]);
SM_SelectDevice(hndl,OUTPUTS_MODULE_2_SLAVE_ID);
SM_WriteDigitalOutputs(hndl,0,32,&mOutputsBuffer[4]);
SM_SelectDevice(hndl,OUTPUTS_MODULE_3_SLAVE_ID);
SM_WriteDigitalOutputs(hndl,0,32,&mOutputsBuffer[8]);
SM_SelectDevice(hndl,OUTPUTS_MODULE_4_SLAVE_ID);
SM_WriteDigitalOutputs(hndl,0,32,&mOutputsBuffer[12]);
return RET_OK;
}
int CIOModulesInterface::ReadOutputStates()
{
if(hndl == 0)
return RET_ERROR;
unsigned char TempBuf[4];
SM_SelectDevice(hndl,OUTPUTS_MODULE_1_SLAVE_ID);
SM_ReadDigitalOutputs(hndl,0,32,&TempBuf[0]);
memcpy(&mOutputsStatebuffer[0],&TempBuf[0],4);
SM_SelectDevice(hndl,OUTPUTS_MODULE_2_SLAVE_ID);
SM_ReadDigitalOutputs(hndl,0,32,&TempBuf[0]);
memcpy(&mOutputsStatebuffer[4],&TempBuf[0],4);
SM_SelectDevice(hndl,OUTPUTS_MODULE_3_SLAVE_ID);
SM_ReadDigitalOutputs(hndl,0,32,&TempBuf[0]);
memcpy(&mOutputsStatebuffer[8],&TempBuf[0],4);
SM_SelectDevice(hndl,OUTPUTS_MODULE_4_SLAVE_ID);
SM_ReadDigitalOutputs(hndl,0,32,&TempBuf[0]);
memcpy(&mOutputsStatebuffer[12],&TempBuf[0],4);
return RET_OK;
}
int CIOModulesInterface::DoAllIOTransactions()
{
ReadInputModules();
WriteOutputModules();
ReadOutputStates();
return RET_OK;
}
int CIOModulesInterface::ResetOutputs()
{
memset(mOutputsBuffer,0x00,16);
return WriteOutputModules();
}
int CIOModulesInterface::SetOutputs(QBitArray Outputs)
{
if(Outputs.size() != IO_COUNT)
{
return RET_ERROR;
}
int IO = 0;
unsigned char mask = 1;
for(int byte = 0; byte < 16; byte++)
{
mOutputsBuffer[byte] = 0;
mask = 1;
for(int bit = 0; bit < 8; bit++)
{
if(Outputs.at(IO))
{
mOutputsBuffer[byte] |= mask;
}
mask <<= 1;
IO++;
}
}
WriteOutputModules();
return RET_OK;
}
QBitArray CIOModulesInterface::GetInputStates()
{
ReadInputModules();
return CharBufferToBitArray(mInputsBuffer, 16);
}
QBitArray CIOModulesInterface::GetOutputStates()
{
ReadOutputStates();
return CharBufferToBitArray(mOutputsStatebuffer, 16);
}
QBitArray CIOModulesInterface::CharBufferToBitArray(unsigned char *buf, int size_in_bytes)
{
int Size = size_in_bytes*8;
QBitArray Result(Size);
int IO = 0;
unsigned char mask = 1;
for(int byte = 0; byte < size_in_bytes; byte++)
{
mask = 1;
for(int bit = 0; bit < 8; bit++)
{
if((buf[byte] & mask) != 0)
{
Result.setBit(IO);
}
mask <<= 1;
IO++;
}
}
return Result;
}

View File

@ -1,18 +1,61 @@
#ifndef IOMODULESINTERFACE_H #ifndef IOMODULESINTERFACE_H
#define IOMODULESINTERFACE_H #define IOMODULESINTERFACE_H
#include "SeaMAX.h" #include "SeaMAX.h"
#include <QTimer>
#include <QObject>
#include <QBitArray>
#define IO_MODULES_REFRESH_INTERVAL 300 //ms
#define IO_COUNT 128 //4 modules of 32 bits
class CIOModulesInterface class CIOModulesInterface : public QObject
{ {
Q_OBJECT
public: public:
CIOModulesInterface();
int OpenIOModules(); enum eModulesSlaveIDDefs
{
INPUTS_MODULE_1_SLAVE_ID = 1,
INPUTS_MODULE_2_SLAVE_ID = 2,
INPUTS_MODULE_3_SLAVE_ID = 3,
INPUTS_MODULE_4_SLAVE_ID = 4,
OUTPUTS_MODULE_1_SLAVE_ID = 5,
OUTPUTS_MODULE_2_SLAVE_ID = 6,
OUTPUTS_MODULE_3_SLAVE_ID = 7,
OUTPUTS_MODULE_4_SLAVE_ID = 8
};
CIOModulesInterface();
~CIOModulesInterface();
int OpenIOModules(QString IPAddress);
int CloseIOModules(); int CloseIOModules();
int SetOutputs(QBitArray Outputs);
QBitArray GetInputStates();
QBitArray GetOutputStates();
int ResetOutputs();
private: private:
SM_HANDLE hndl; SM_HANDLE hndl;
// QTimer *mIOModulesQueryTimer;
unsigned char mInputsBuffer[16];
unsigned char mOutputsBuffer[16];
unsigned char mOutputsStatebuffer[16];
int ReadInputModules();
int WriteOutputModules();
int ReadOutputStates();
int DoAllIOTransactions();
QBitArray CharBufferToBitArray(unsigned char *buf, int size_in_bytes);
public slots:
void IOModulesQueryTimerExpired();
}; };
#endif // IOMODULESINTERFACE_H #endif // IOMODULESINTERFACE_H

View File

@ -0,0 +1,29 @@
#include "InputConnector.h"
CInputConnector::CInputConnector()
{
}
QBitArray CInputConnector::GetInputPinsStates()
{
if(!IsConnectorDefined())
return QBitArray();
QBitArray IOStates = mIOInterfaceHandle->GetInputStates();//inputs are active low, need to invert!!!
QBitArray PinsStates(mPinCount);
if(mIOModuleRangeEnd > IOStates.size()) //try not to crash!
{
qDebug("Logic error in CInputConnector::GetInputPinsStates(); mIOModuleRangeEnd greater than IO count");
return QBitArray();
}
int ConnectorPin = 0;
for(int IoPin = mIOModuleRangeBegin; IoPin <= mIOModuleRangeEnd; IoPin++)
{
PinsStates[ConnectorPin++] = IOStates[IoPin];
}
return PinsStates;
}

15
Sources/InputConnector.h Normal file
View File

@ -0,0 +1,15 @@
#ifndef INPUTCONNECTOR_H
#define INPUTCONNECTOR_H
#include "Connector.h"
#include <QBitArray>
class CInputConnector : public CConnector
{
public:
CInputConnector();
QBitArray GetInputPinsStates();
};
#endif // INPUTCONNECTOR_H

View File

@ -14,13 +14,6 @@ CMainPage::CMainPage(QWidget *parent) :
ui->mMainTabWidget->clear(); ui->mMainTabWidget->clear();
// SM_HANDLE hndl;
// SM_Open(&hndl,"192.168.0.101");
} }
CMainPage::~CMainPage() CMainPage::~CMainPage()

View File

@ -8,11 +8,6 @@ MainWindow::MainWindow(QWidget *parent,CCableTestBench* ProgramHandle)
{ {
resize(1800,890); resize(1800,890);
// mMainPage = new CMainPage();
// mVisualInspPage = new CVisualInspectionPage(this);
// mVisualInspPage->hide();
// mCableTestPage = new CCableTestPage(this);
mMainPage = new CMainPage(this); mMainPage = new CMainPage(this);
mVisualInspPage = new CVisualInspectionPage(this); mVisualInspPage = new CVisualInspectionPage(this);
mVisualInspPage->hide(); mVisualInspPage->hide();
@ -32,9 +27,6 @@ MainWindow::MainWindow(QWidget *parent,CCableTestBench* ProgramHandle)
//setCentralWidget(mVisualInspPage); //setCentralWidget(mVisualInspPage);
} }
MainWindow::~MainWindow() MainWindow::~MainWindow()

View File

@ -1,5 +1,8 @@
#include "OptionsPage.h" #include "OptionsPage.h"
#include "ui_OptionsPage.h" #include "ui_OptionsPage.h"
#include "GlobalDefine.h"
#include "CableTestBench.h"
#include <QHostAddress>
COptionsPage::COptionsPage(QWidget *parent) : COptionsPage::COptionsPage(QWidget *parent) :
QWidget(parent), QWidget(parent),
@ -8,9 +11,54 @@ COptionsPage::COptionsPage(QWidget *parent) :
ui->setupUi(this); ui->setupUi(this);
mProgramHandle = 0; mProgramHandle = 0;
connect(ui->mApplyAndSaveBtn,SIGNAL(clicked()),this,SLOT(OptionChanged()));
} }
COptionsPage::~COptionsPage() COptionsPage::~COptionsPage()
{ {
delete ui; delete ui;
} }
int COptionsPage::GetCurrentOptions(CTestBenchSettings *Settings)
{
Settings->mPinHoldTime = ui->mTestHoldTimeHighSpinBx->value();
Settings->mIgnoreVisualInspection = ui->mIgnoreVisualInspChkBx->isChecked();
Settings->mIOModuleIPAddress = QString("%1.%2.%3.%4").arg(ui->mIPAdd1SpinBox->value()).arg(ui->mIPAdd2SpinBox->value()).arg(ui->mIPAdd3SpinBox->value()).arg(ui->mIPAdd4SpinBox->value());
Settings->mIncludeLogInReport = ui->mIncludeLogInReportChkBx->isChecked();
Settings->mExecSecondPass = ui->mExecSecondTestChkBx->isChecked();
return RET_OK;
}
int COptionsPage::SetCurrentOptions(CTestBenchSettings *Settings)
{
ui->mTestHoldTimeHighSpinBx->setValue(Settings->mPinHoldTime);
ui->mIgnoreVisualInspChkBx->setChecked(Settings->mIgnoreVisualInspection);
ui->mIncludeLogInReportChkBx->setChecked(Settings->mIncludeLogInReport);
ui->mExecSecondTestChkBx->setChecked(Settings->mExecSecondPass);
QHostAddress IPAddres(Settings->mIOModuleIPAddress);
int IPV4 = IPAddres.toIPv4Address();
ui->mIPAdd4SpinBox->setValue(IPV4 & 0x000000FF);
IPV4 >>= 8;
ui->mIPAdd3SpinBox->setValue(IPV4 & 0x000000FF);
IPV4 >>= 8;
ui->mIPAdd2SpinBox->setValue(IPV4 & 0x000000FF);
IPV4 >>= 8;
ui->mIPAdd1SpinBox->setValue(IPV4 & 0x000000FF);
return RET_OK;
}
void COptionsPage::OptionChanged()
{
mProgramHandle->TestBenchOptionsChanged();
}

View File

@ -2,6 +2,8 @@
#define OPTIONSPAGE_H #define OPTIONSPAGE_H
#include <QWidget> #include <QWidget>
#include "TestBenchSettings.h"
namespace Ui { namespace Ui {
class COptionsPage; class COptionsPage;
@ -18,9 +20,21 @@ public:
~COptionsPage(); ~COptionsPage();
CCableTestBench *mProgramHandle; CCableTestBench *mProgramHandle;
int GetCurrentOptions(CTestBenchSettings *Settings);
int SetCurrentOptions(CTestBenchSettings *Settings);
private: private:
Ui::COptionsPage *ui; Ui::COptionsPage *ui;
public slots:
void OptionChanged();
signals:
void CurrentOptionsChanged();
}; };
#endif // OPTIONSPAGE_H #endif // OPTIONSPAGE_H

View File

@ -6,37 +6,19 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>1119</width> <width>564</width>
<height>647</height> <height>647</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
<string>Form</string> <string>Form</string>
</property> </property>
<widget class="QLabel" name="label">
<property name="geometry">
<rect>
<x>100</x>
<y>40</y>
<width>181</width>
<height>31</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>14</pointsize>
</font>
</property>
<property name="text">
<string>Valeurs par défaut</string>
</property>
</widget>
<widget class="QLabel" name="label_2"> <widget class="QLabel" name="label_2">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>530</x> <x>170</x>
<y>40</y> <y>40</y>
<width>181</width> <width>321</width>
<height>31</height> <height>31</height>
</rect> </rect>
</property> </property>
@ -52,7 +34,7 @@
<widget class="QSpinBox" name="mTestHoldTimeHighSpinBx"> <widget class="QSpinBox" name="mTestHoldTimeHighSpinBx">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>680</x> <x>320</x>
<y>110</y> <y>110</y>
<width>61</width> <width>61</width>
<height>22</height> <height>22</height>
@ -71,67 +53,35 @@
<widget class="QLabel" name="label_3"> <widget class="QLabel" name="label_3">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>500</x> <x>100</x>
<y>110</y> <y>110</y>
<width>171</width> <width>211</width>
<height>20</height> <height>20</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>10</pointsize> <pointsize>12</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
<string>Temps de maintien haut (ms)</string> <string>Temps de maintien haut (ms)</string>
</property> </property>
</widget> </widget>
<widget class="QLabel" name="label_4"> <widget class="QSpinBox" name="mIPAdd1SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>500</x> <x>131</x>
<y>150</y> <y>361</y>
<width>171</width> <width>51</width>
<height>20</height> <height>22</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>10</pointsize> <pointsize>11</pointsize>
</font> </font>
</property> </property>
<property name="text">
<string>Temps de maintien bas (ms)</string>
</property>
</widget>
<widget class="QSpinBox" name="mTestHoldTimeLowSpinBx">
<property name="geometry">
<rect>
<x>680</x>
<y>150</y>
<width>61</width>
<height>22</height>
</rect>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>5000</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
<widget class="QSpinBox" name="mIPAdd1SpinBox">
<property name="geometry">
<rect>
<x>510</x>
<y>340</y>
<width>42</width>
<height>22</height>
</rect>
</property>
<property name="maximum"> <property name="maximum">
<number>255</number> <number>255</number>
</property> </property>
@ -142,12 +92,17 @@
<widget class="QSpinBox" name="mIPAdd2SpinBox"> <widget class="QSpinBox" name="mIPAdd2SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>560</x> <x>190</x>
<y>340</y> <y>361</y>
<width>42</width> <width>51</width>
<height>22</height> <height>22</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
<property name="maximum"> <property name="maximum">
<number>255</number> <number>255</number>
</property> </property>
@ -158,12 +113,17 @@
<widget class="QSpinBox" name="mIPAdd3SpinBox"> <widget class="QSpinBox" name="mIPAdd3SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>610</x> <x>250</x>
<y>340</y> <y>360</y>
<width>42</width> <width>51</width>
<height>22</height> <height>22</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
<property name="maximum"> <property name="maximum">
<number>255</number> <number>255</number>
</property> </property>
@ -171,12 +131,17 @@
<widget class="QSpinBox" name="mIPAdd4SpinBox"> <widget class="QSpinBox" name="mIPAdd4SpinBox">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>660</x> <x>300</x>
<y>340</y> <y>360</y>
<width>42</width> <width>51</width>
<height>22</height> <height>22</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
<property name="maximum"> <property name="maximum">
<number>255</number> <number>255</number>
</property> </property>
@ -187,34 +152,94 @@
<widget class="QLabel" name="label_5"> <widget class="QLabel" name="label_5">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>510</x> <x>140</x>
<y>310</y> <y>320</y>
<width>171</width> <width>351</width>
<height>20</height> <height>31</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>10</pointsize> <pointsize>12</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
<string>Adresse IP module I/O</string> <string>Adresse IP module I/O
(redémarrage de l'application requis)</string>
</property> </property>
</widget> </widget>
<widget class="QPushButton" name="mApplyAndSaveBtn"> <widget class="QPushButton" name="mApplyAndSaveBtn">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>390</x> <x>170</x>
<y>550</y> <y>470</y>
<width>131</width> <width>181</width>
<height>23</height> <height>23</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>11</pointsize>
</font>
</property>
<property name="text"> <property name="text">
<string>Appliquer &amp;&amp; Sauvegarder</string> <string>Appliquer &amp;&amp; Sauvegarder</string>
</property> </property>
</widget> </widget>
<widget class="QCheckBox" name="mIgnoreVisualInspChkBx">
<property name="geometry">
<rect>
<x>140</x>
<y>160</y>
<width>321</width>
<height>21</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Ignorer l'inspection visuelle</string>
</property>
</widget>
<widget class="QCheckBox" name="mIncludeLogInReportChkBx">
<property name="geometry">
<rect>
<x>140</x>
<y>200</y>
<width>321</width>
<height>17</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Inclure LOG dans le rapport</string>
</property>
</widget>
<widget class="QCheckBox" name="mExecSecondTestChkBx">
<property name="geometry">
<rect>
<x>140</x>
<y>240</y>
<width>281</width>
<height>17</height>
</rect>
</property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text">
<string>Exécuter 2è passe de tests</string>
</property>
</widget>
</widget> </widget>
<resources/> <resources/>
<connections/> <connections/>

147
Sources/OutputConnector.cpp Normal file
View File

@ -0,0 +1,147 @@
#include "OutputConnector.h"
#include "GlobalDefine.h"
COutputConnector::COutputConnector()
{
}
int COutputConnector::SetOutputPins(QBitArray PinsStates)
{
if(mIOModuleRangeEnd >= IO_COUNT)
{
qDebug("Logic error in COutputConnector::SetOutputPins; mIOModuleRangeEnd greater than IO count");
return RET_ERROR;
}
if(IsConnectorDefined() == false)
{
return RET_ERROR;
}
QBitArray OutputBuf(IO_COUNT);
int PinIndex = 0;
for(int IoPin = mIOModuleRangeBegin; IoPin <= mIOModuleRangeEnd; IoPin++)
{
OutputBuf[IoPin] = PinsStates[PinIndex++];
}
mIOInterfaceHandle->SetOutputs(OutputBuf);
return RET_OK;
}
QBitArray COutputConnector::GetOutputPinsStates()
{
if(IsConnectorDefined() == false)
{
return QBitArray();
}
QBitArray IOStates = mIOInterfaceHandle->GetOutputStates();
QBitArray PinsStates(mPinCount);
if(mIOModuleRangeEnd > IOStates.size()) //try not to crash!
{
qDebug("Logic error in CInputConnector::GetInputPinsStates(); mIOModuleRangeEnd greater than IO count");
return QBitArray();
}
int ConnectorPin = 0;
for(int IoPin = mIOModuleRangeBegin; IoPin <= mIOModuleRangeEnd; IoPin++)
{
PinsStates[ConnectorPin++] = IOStates[IoPin];
}
return PinsStates;
}
int COutputConnector::SetConnectorType(CConnectorDefs::eConnectorType type)
{
CConnector::SetConnectorType(type);
mOutputsPinsStateBuffer.clear();
mOutputsPinsStateBuffer = QBitArray(mPinCount);
ClearAllPins();
return RET_OK;
}
//! !!!! WARNING, PinIndex IS ZERO-BASED INDEX !!! //
int COutputConnector::SetSinglePin(unsigned int PinNumber)
{
if(IsConnectorDefined() == false)
{
return RET_ERROR;
}
int ZeroBasedPinIndex = PinNumber-1;
if(ZeroBasedPinIndex >= (int)mPinCount || ZeroBasedPinIndex < 0)
{
return RET_ERROR;
}
QBitArray PinsStates(mPinCount);
PinsStates.setBit(ZeroBasedPinIndex);
SetOutputPins(PinsStates);
return RET_OK;
}
//! !!!! WARNING, PinIndex IS ZERO-BASED INDEX !!! //
int COutputConnector::GetSinglePinState(unsigned int PinNumber)
{
if(IsConnectorDefined() == false)
{
return RET_ERROR;
}
int ZeroBasedPinIndex = PinNumber-1;
if(ZeroBasedPinIndex > (int)mPinCount || ZeroBasedPinIndex < 0)
{
return -1;
}
QBitArray CurStates = GetOutputPinsStates();
return CurStates.at(ZeroBasedPinIndex);
}
int COutputConnector::TogglePin(unsigned int PinNumber)
{
if(IsConnectorDefined() == false)
{
return RET_ERROR;
}
int ZeroBasedPinIndex = PinNumber-1;
if(ZeroBasedPinIndex > (int)mPinCount || ZeroBasedPinIndex < 0)
{
return RET_ERROR;
}
QBitArray CurStates = GetOutputPinsStates();
CurStates.toggleBit(ZeroBasedPinIndex);
SetOutputPins(CurStates);
return RET_OK;
}
int COutputConnector::ClearAllPins()
{
if(IsConnectorDefined() == false)
{
return RET_ERROR;
}
mIOInterfaceHandle->ResetOutputs();
return RET_OK;
}

29
Sources/OutputConnector.h Normal file
View File

@ -0,0 +1,29 @@
#ifndef OUTPUTCONNECTOR_H
#define OUTPUTCONNECTOR_H
#include "Connector.h"
#include <QBitArray>
class COutputConnector : public CConnector
{
public:
COutputConnector();
QBitArray GetOutputPinsStates();
int SetSinglePin(unsigned int PinNumber);
int GetSinglePinState(unsigned int PinNumber);
int TogglePin(unsigned int PinNumber);
int SetOutputPins(QBitArray PinsStates);
int ClearAllPins();
virtual int SetConnectorType(CConnectorDefs::eConnectorType type);
private:
QBitArray mOutputsPinsStateBuffer;
};
#endif // OUTPUTCONNECTOR_H

View File

@ -0,0 +1,70 @@
#include "TestBenchSettings.h"
#include <QFile>
#include <QDataStream>
#include "GlobalDefine.h"
CTestBenchSettings::CTestBenchSettings()
{
}
int CTestBenchSettings::SaveSettingsToFile()
{
QFile *SettingFile = new QFile("./Cablotron.csf");
if(!SettingFile->open(QIODevice::ReadWrite | QIODevice::Truncate))
{
delete SettingFile;
return RET_ERROR;
}
QDataStream Strm(SettingFile);
int MagicNbr = 0xC01DCAFE;
Strm << MagicNbr
<< mPinHoldTime
<< mIgnoreVisualInspection
<< mIOModuleIPAddress
<< mIncludeLogInReport
<< mExecSecondPass;
SettingFile->close();
delete SettingFile;
return RET_OK;
}
int CTestBenchSettings::LoadSettingFromFile()
{
QFile *SettingFile = new QFile("./Cablotron.csf");
if(!SettingFile->open(QIODevice::ReadOnly))
{
delete SettingFile;
return RET_ERROR;
}
QDataStream Strm(SettingFile);
int MagicNbr;
Strm >> MagicNbr;
if(MagicNbr != (int)0xC01DCAFE)
{
return RET_ERROR;
SettingFile->close();
delete SettingFile;
}
Strm >> mPinHoldTime
>> mIgnoreVisualInspection
>> mIOModuleIPAddress
>> mIncludeLogInReport
>> mExecSecondPass;
SettingFile->close();
delete SettingFile;
return RET_OK;
}

View File

@ -0,0 +1,25 @@
#ifndef TESTBENCHSETTINGS_H
#define TESTBENCHSETTINGS_H
#include <QString>
class CTestBenchSettings
{
public:
CTestBenchSettings();
int LoadSettingFromFile();
int SaveSettingsToFile();
int mPinHoldTime;
bool mIgnoreVisualInspection;
QString mIOModuleIPAddress;
bool mIncludeLogInReport;
bool mExecSecondPass;
};
#endif // TESTBENCHSETTINGS_H

View File

@ -0,0 +1,22 @@
#ifndef TESTBENCHVERSION_H
#define TESTBENCHVERSION_H
#define TEST_BENCH_VERSION "V1.2"
//LOG DES CHANGEMENTS
//Version 1.1
//- Correction d'un bug qui testait 108 points pour le
// connecteur 90 points, il manquait la partie du rapport...
//Version 1.1
//- Ajustements suite aux premiers essais à l'atelier
//- Correction d'un bug qui testait 108 points pour le
// connecteur 90 points.
//Version 0.10_ING_DEV
//-Version de développement, pré-production
#endif // TESTBENCHVERSION_H

View File

@ -1,10 +1,201 @@
#include "TestReport.h" #include "TestReport.h"
#include <QDateTime>
#include <QFile>
#include <QTextStream>
#include <QMessageBox>
#include <QTextCodec>
#include "TestBenchSettings.h"
CTestReport::CTestReport() CTestReport::CTestReport()
{ {
mSoftwareVersion = QString(TEST_BENCH_VERSION);
CreateNewTestReport();
mReportFileDirectory = "./Rapports/";
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
} }
CVisualInspectionResult * CTestReport::GetInspectionResult() CVisualInspectionResult * CTestReport::GetInspectionResult()
{ {
return &mVisualInspectionResultReport; return &mVisualInspectionResultReport;
} }
CCableParametersData *CTestReport::GetReportCableParameters()
{
return &mCableParameters;
}
int CTestReport::CreateNewTestReport()
{
mVisualInspectionResultReport.ClearResults();
mCableParameters.ResetData();
mAutomatedTestReport.ClearAutomatedTestReport();
mTestLog.clear();
mLastReportName.clear();
return RET_OK;
}
int CTestReport::AddLogEntry(QString NewEntry, bool IncludeTime, bool Propagate)
{
if(NewEntry.isEmpty())
{
return RET_ERROR;
}
if(IncludeTime)
{
QString Time = QDateTime::currentDateTime().toString("hh:mm:ss.zzz - ");
NewEntry.prepend(Time);
}
qDebug(NewEntry.toAscii().data());
if(NewEntry.endsWith(QChar('\n')) == false)
{
NewEntry.append(QChar('\n'));
}
if(Propagate)
{
emit NewTestLogEntry(NewEntry);
}
mTestLog.append(NewEntry);
return RET_OK;
}
CAutomatedTestReport *CTestReport::GetAutomatedTestReport()
{
return &mAutomatedTestReport;
}
int CTestReport::SaveReportToFile(CTestBenchSettings *BenchSettings)
{
QFile *ReportFile;
//QTextStream ReportStream;
QString Filename = QDateTime::currentDateTime().toString("yyMMdd_hhmmss_");
Filename.append(mCableParameters.mStationCodeName);
Filename.append(mCableParameters.mCableIdentification);
Filename.append(".txt");
Filename.prepend(mReportFileDirectory);
ReportFile = new QFile(Filename);
if (!ReportFile->open(QIODevice::ReadWrite |QIODevice::Truncate | QIODevice::Text))
{
AddLogEntry(QString("Impossible de sauvegarder le rapport %1").arg(Filename),false);
QMessageBox::critical(NULL,"Erreur de sauvegarde",QString("Impossible de sauvegarder le fichier rapport \n%1").arg(Filename));
return RET_ERROR;
}
mLastReportName = Filename;
QTextStream ReportStream(ReportFile);
ReportStream.setCodec(QTextCodec::codecForName("UTF-8"));
ReportStream << QString("Rapport de test - Câble SEI\n");
ReportStream << QString("Date de l'essai: ") << QDateTime::currentDateTime().toString("yyyy-MM-dd") << "\n";
ReportStream << "Version du logiciel de test: " << mSoftwareVersion << "\n\n";
ReportStream << "-----------------------------------------\n";
ReportStream << QString("Paramètres du test: \n");
ReportStream << QString("Temps de maintien des contacts: %1ms\n").arg(BenchSettings->mPinHoldTime);
if(BenchSettings->mIgnoreVisualInspection)
{
ReportStream << QString("Ignorer inspection visuelle: OUI\n");
}
else
{
ReportStream << QString("Ignorer inspection visuelle: NON\n");
}
if(BenchSettings->mExecSecondPass)
{
ReportStream << QString("2è test exécuté: OUI\n");
}
else
{
ReportStream << QString("2è test exécuté: NON\n");
}
ReportStream << QString("Adresse IP des modules d'I/O : %1\n\n").arg(BenchSettings->mIOModuleIPAddress);
ReportStream << "-----------------------------------------\n";
ReportStream << QString("Paramètres du câble: \n");
ReportStream << QString("Identification du câble: ") << mCableParameters.mCableIdentification << "\n";
ReportStream << "Station: " << mCableParameters.mStationCodeName << " - "<< mCableParameters.mStationName << "\n";
ReportStream << "Type: " << mCableParameters.mCableType << "\n";
ReportStream << QString("Opérateur du test: ") << mCableParameters.mTestOperatorName << "\n";
ReportStream << QString("Connecteur d'entrée: ") << mCableParameters.mInputConnectorType << "\n";
ReportStream << "Connecteur de sortie: " << mCableParameters.mOutputConnectorType << "\n\n";
ReportStream << "-----------------------------------------\n";
ReportStream << QString("Résultats de l'inspection visuelle:\n");
ReportStream << QString("Section 5.2 exécutée: ") << mVisualInspectionResultReport.mVerif52ExecResultText << "\n";
ReportStream << QString("Section 5.3 exécutée: ") << mVisualInspectionResultReport.mVerif53ExecResultText << "\n";
ReportStream << QString("Section 5.4 exécutée: ") << mVisualInspectionResultReport.mVerif54ExecResultText << "\n";
ReportStream << QString("Section 5.5 exécutée: ") << mVisualInspectionResultReport.mVerif55ExecResultText << "\n";
ReportStream << QString("Section 5.6 exécutée: ") << mVisualInspectionResultReport.mVerif56ExecResultText << "\n\n";
ReportStream << "Notes d'inspection:\n\n";
ReportStream << mVisualInspectionResultReport.mVerifNotesText << "\n\n";
ReportStream << "-----------------------------------------\n";
ReportStream << QString("Résultats du test automatique du câble:\n");
ReportStream << QString("Pré-test des modules d'I/O: ") << mAutomatedTestReport.GetPretestResult() << "\n";
ReportStream << QString("Lorsqu'applicable, les valeurs entre crochets [] correspondent aux contacts en défaut.\n\n");
ReportStream.setFieldWidth(15);
ReportStream.setFieldAlignment(QTextStream::AlignCenter);
ReportStream << "No. Contact" << QString("Continuité") << "Isolation" << "Assignation" << QString("2è test") << qSetFieldWidth(0) << "\n";
for(int pin = 1; pin <= mAutomatedTestReport.mPinCount; pin++)
{
ReportStream.setFieldWidth(15);
ReportStream.setFieldAlignment(QTextStream::AlignCenter);
ReportStream << QString("%1").arg(pin) <<
mAutomatedTestReport.GetPinContinuityResult(pin) <<
mAutomatedTestReport.GetPinIsolationResult(pin) <<
mAutomatedTestReport.GetPinConcordanceResult(pin) <<
mAutomatedTestReport.GetPinSecondTestResult(pin) << qSetFieldWidth(0) <<
" \n";
}
ReportStream << QString("\n\n\n Signature de l'opérateur de test: _________________________________________\n\n");
ReportStream << QString(" Date: _________________________________________\n\n");
ReportStream << "-----------------------------------------\n";
if(BenchSettings->mIncludeLogInReport)
{
ReportStream << "Log du test:\n";
ReportStream << mTestLog;
}
ReportFile->close();
delete ReportFile;
return RET_OK;
}
bool CTestReport::IsAutoTestReportReady()
{
if(mAutomatedTestReport.GetPinCount() == 0)
{
return false;
}
return true;
}
bool CTestReport::GetGlobalAutoTestResult()
{
return mAutomatedTestReport.IsAutomatedTestSuccess();
}
QString CTestReport::GetLastReportFileName()
{
return mLastReportName;
}

View File

@ -3,16 +3,44 @@
#include "GlobalDefine.h" #include "GlobalDefine.h"
#include "VisualInspectionResult.h" #include "VisualInspectionResult.h"
#include "CableParametersData.h"
#include "TestBenchVersion.h"
#include "AutomatedTestReport.h"
#include <QObject>
class CTestReport class CTestBenchSettings;
class CTestReport : public QObject
{ {
Q_OBJECT
public: public:
CTestReport(); CTestReport();
CVisualInspectionResult* GetInspectionResult(); CVisualInspectionResult* GetInspectionResult();
CCableParametersData *GetReportCableParameters();
CAutomatedTestReport *GetAutomatedTestReport();
int CreateNewTestReport();
int AddLogEntry(QString NewEntry,bool IncludeTime = true,bool Propagate = true);
bool IsAutoTestReportReady();
bool GetGlobalAutoTestResult();
int SaveReportToFile(CTestBenchSettings *BenchSettings);
QString GetLastReportFileName();
private: private:
CVisualInspectionResult mVisualInspectionResultReport; CVisualInspectionResult mVisualInspectionResultReport;
CCableParametersData mCableParameters;
CAutomatedTestReport mAutomatedTestReport;
QString mSoftwareVersion;
QString mTestLog;
QString mReportFileDirectory;
QString mLastReportName;
signals:
void NewTestLogEntry(QString NewEntry);
}; };
#endif // TESTREPORT_H #endif // TESTREPORT_H

View File

@ -16,10 +16,10 @@
<widget class="QLabel" name="label"> <widget class="QLabel" name="label">
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>250</x> <x>230</x>
<y>10</y> <y>10</y>
<width>601</width> <width>771</width>
<height>81</height> <height>101</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
@ -38,13 +38,13 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>380</x> <x>380</x>
<y>230</y> <y>230</y>
<width>261</width> <width>411</width>
<height>16</height> <height>21</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -56,13 +56,13 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>380</x> <x>380</x>
<y>280</y> <y>280</y>
<width>311</width> <width>441</width>
<height>16</height> <height>31</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -74,13 +74,13 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>380</x> <x>380</x>
<y>330</y> <y>330</y>
<width>311</width> <width>511</width>
<height>16</height> <height>21</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -92,13 +92,13 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>380</x> <x>380</x>
<y>380</y> <y>380</y>
<width>471</width> <width>611</width>
<height>16</height> <height>21</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -110,13 +110,13 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>380</x> <x>380</x>
<y>430</y> <y>430</y>
<width>471</width> <width>591</width>
<height>16</height> <height>21</height>
</rect> </rect>
</property> </property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>12</pointsize> <pointsize>14</pointsize>
</font> </font>
</property> </property>
<property name="text"> <property name="text">
@ -128,7 +128,7 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>120</x> <x>120</x>
<y>140</y> <y>140</y>
<width>811</width> <width>941</width>
<height>20</height> <height>20</height>
</rect> </rect>
</property> </property>
@ -146,8 +146,8 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>330</x> <x>330</x>
<y>200</y> <y>200</y>
<width>46</width> <width>81</width>
<height>13</height> <height>16</height>
</rect> </rect>
</property> </property>
<property name="text"> <property name="text">
@ -159,7 +159,7 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>230</x> <x>230</x>
<y>200</y> <y>200</y>
<width>71</width> <width>91</width>
<height>16</height> <height>16</height>
</rect> </rect>
</property> </property>
@ -336,6 +336,11 @@ ont été complétés (chaque câble doit être vérifié)</string>
<height>23</height> <height>23</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text"> <property name="text">
<string>OK</string> <string>OK</string>
</property> </property>
@ -349,6 +354,9 @@ ont été complétés (chaque câble doit être vérifié)</string>
<height>141</height> <height>141</height>
</rect> </rect>
</property> </property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
</widget> </widget>
<widget class="QLabel" name="label_10"> <widget class="QLabel" name="label_10">
<property name="geometry"> <property name="geometry">
@ -373,10 +381,15 @@ ont été complétés (chaque câble doit être vérifié)</string>
<rect> <rect>
<x>790</x> <x>790</x>
<y>260</y> <y>260</y>
<width>75</width> <width>121</width>
<height>23</height> <height>23</height>
</rect> </rect>
</property> </property>
<property name="font">
<font>
<pointsize>12</pointsize>
</font>
</property>
<property name="text"> <property name="text">
<string>Réinitialiser</string> <string>Réinitialiser</string>
</property> </property>

View File

@ -1,6 +1,8 @@
#include "VisualInspectionResult.h" #include "VisualInspectionResult.h"
#include <QString> #include <QString>
const char * CVisualInspectionResult::mTextualResults[3] = {"N/A","Oui","Non"};
CVisualInspectionResult::CVisualInspectionResult() CVisualInspectionResult::CVisualInspectionResult()
{ {
ClearResults(); ClearResults();
@ -9,6 +11,7 @@ CVisualInspectionResult::CVisualInspectionResult()
int CVisualInspectionResult::ClearResults() int CVisualInspectionResult::ClearResults()
{ {
mVerif52ExecResult = mVerif53ExecResult = mVerif54ExecResult = mVerif55ExecResult = mVerif56ExecResult = VERIF_UNKNOWN_RESULT; mVerif52ExecResult = mVerif53ExecResult = mVerif54ExecResult = mVerif55ExecResult = mVerif56ExecResult = VERIF_UNKNOWN_RESULT;
mVerif52ExecResultText = mVerif53ExecResultText = mVerif54ExecResultText = mVerif55ExecResultText = mVerif56ExecResultText = "Non";
mVerifNotesText.clear(); mVerifNotesText.clear();
return RET_OK; return RET_OK;
@ -17,10 +20,10 @@ int CVisualInspectionResult::ClearResults()
bool CVisualInspectionResult::IsVisualInspectionResultComplete() bool CVisualInspectionResult::IsVisualInspectionResultComplete()
{ {
if(mVerif52ExecResult != VERIF_UNKNOWN_RESULT && if(mVerif52ExecResult != VERIF_UNKNOWN_RESULT &&
mVerif53ExecResult != VERIF_UNKNOWN_RESULT && mVerif53ExecResult != VERIF_UNKNOWN_RESULT &&
mVerif54ExecResult != VERIF_UNKNOWN_RESULT && mVerif54ExecResult != VERIF_UNKNOWN_RESULT &&
mVerif55ExecResult != VERIF_UNKNOWN_RESULT && mVerif55ExecResult != VERIF_UNKNOWN_RESULT &&
mVerif56ExecResult != VERIF_UNKNOWN_RESULT ) mVerif56ExecResult != VERIF_UNKNOWN_RESULT )
{ {
return true; return true;
} }
@ -31,10 +34,20 @@ bool CVisualInspectionResult::IsVisualInspectionResultComplete()
int CVisualInspectionResult::SetVisualInspectionResult(eVerifExecResult Verif52, eVerifExecResult Verif53, eVerifExecResult Verif54, eVerifExecResult Verif55, eVerifExecResult Verif56, QString Notes) int CVisualInspectionResult::SetVisualInspectionResult(eVerifExecResult Verif52, eVerifExecResult Verif53, eVerifExecResult Verif54, eVerifExecResult Verif55, eVerifExecResult Verif56, QString Notes)
{ {
mVerif52ExecResult = Verif52; mVerif52ExecResult = Verif52;
mVerif52ExecResultText = mTextualResults[Verif52];
mVerif53ExecResult = Verif53; mVerif53ExecResult = Verif53;
mVerif53ExecResultText = mTextualResults[Verif53];
mVerif54ExecResult = Verif54; mVerif54ExecResult = Verif54;
mVerif54ExecResultText = mTextualResults[Verif54];
mVerif55ExecResult = Verif55; mVerif55ExecResult = Verif55;
mVerif55ExecResultText = mTextualResults[Verif55];
mVerif56ExecResult = Verif56; mVerif56ExecResult = Verif56;
mVerif56ExecResultText = mTextualResults[Verif56];
mVerifNotesText = Notes; mVerifNotesText = Notes;
return RET_OK; return RET_OK;
} }

View File

@ -15,10 +15,12 @@ public:
VERIF_NOT_DONE_RESULT VERIF_NOT_DONE_RESULT
}; };
static const char* mTextualResults[3];
CVisualInspectionResult(); CVisualInspectionResult();
eVerifExecResult mVerif52ExecResult, mVerif53ExecResult, mVerif54ExecResult, mVerif55ExecResult, mVerif56ExecResult; eVerifExecResult mVerif52ExecResult, mVerif53ExecResult, mVerif54ExecResult, mVerif55ExecResult, mVerif56ExecResult;
QString mVerif52ExecResultText, mVerif53ExecResultText, mVerif54ExecResultText, mVerif55ExecResultText, mVerif56ExecResultText;
QString mVerifNotesText; QString mVerifNotesText;
int ClearResults(); int ClearResults();

View File

@ -14,7 +14,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//6 pins //6 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_6_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_6_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(7,149,53,54); InputClickZoneHandle->setGeometry(316,152,53,54);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -22,7 +22,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//14 pins //14 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_14_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_14_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(7,23,53,54); InputClickZoneHandle->setGeometry(316,21,53,54);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -30,7 +30,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//24 pins //24 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_24_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_24_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(92,23,48,86); InputClickZoneHandle->setGeometry(236,23,48,86);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -38,7 +38,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//72 pins //72 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_72_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_72_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(92,149,47,120); InputClickZoneHandle->setGeometry(234,150,47,120);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -46,7 +46,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//90 pins //90 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_90_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_90_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(17,286,33,73); InputClickZoneHandle->setGeometry(320,306,33,73);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -54,7 +54,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//108 pins //108 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_108_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_108_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(92,308,47,149); InputClickZoneHandle->setGeometry(235,308,47,149);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -62,7 +62,7 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//120 pins //120 pins
InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_120_PINS_CONNECTOR_TYPE,this); InputClickZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::INPUT_120_PINS_CONNECTOR_TYPE,this);
InputClickZoneHandle->setGeometry(13,382,42,74); InputClickZoneHandle->setGeometry(316,403,42,74);
InputClickZoneHandle->show(); InputClickZoneHandle->show();
InputClickZoneHandle->raise(); InputClickZoneHandle->raise();
connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*))); connect(InputClickZoneHandle,SIGNAL(ConnectorZoneClicked(CConnectorClickZoneWidget*)),this,SLOT(InputConnectorZoneClicked(CConnectorClickZoneWidget*)));
@ -73,35 +73,35 @@ CConnectorSelectWidget::CConnectorSelectWidget(QWidget *parent) :
//6 pins //6 pins
OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_6_PINS_CONNECTOR_TYPE,this); OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_6_PINS_CONNECTOR_TYPE,this);
OutputSelectZoneHandle->setGeometry(329,149,38,38); OutputSelectZoneHandle->setGeometry(12,148,38,38);
OutputSelectZoneHandle->show(); OutputSelectZoneHandle->show();
OutputSelectZoneHandle->raise(); OutputSelectZoneHandle->raise();
mOutputSelectZoneList.append(OutputSelectZoneHandle); mOutputSelectZoneList.append(OutputSelectZoneHandle);
//14 pins //14 pins
OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_14_PINS_CONNECTOR_TYPE,this); OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_14_PINS_CONNECTOR_TYPE,this);
OutputSelectZoneHandle->setGeometry(327,23,41,42); OutputSelectZoneHandle->setGeometry(13,24,41,42);
OutputSelectZoneHandle->show(); OutputSelectZoneHandle->show();
OutputSelectZoneHandle->raise(); OutputSelectZoneHandle->raise();
mOutputSelectZoneList.append(OutputSelectZoneHandle); mOutputSelectZoneList.append(OutputSelectZoneHandle);
//24 pins //24 pins
OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_24_PINS_CONNECTOR_TYPE,this); OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_24_PINS_CONNECTOR_TYPE,this);
OutputSelectZoneHandle->setGeometry(235,23,48,86); OutputSelectZoneHandle->setGeometry(91,23,48,86);
OutputSelectZoneHandle->show(); OutputSelectZoneHandle->show();
OutputSelectZoneHandle->raise(); OutputSelectZoneHandle->raise();
mOutputSelectZoneList.append(OutputSelectZoneHandle); mOutputSelectZoneList.append(OutputSelectZoneHandle);
//72 pins //72 pins
OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_72_PINS_CONNECTOR_TYPE,this); OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_72_PINS_CONNECTOR_TYPE,this);
OutputSelectZoneHandle->setGeometry(235,149,46,121); OutputSelectZoneHandle->setGeometry(92,150,46,121);
OutputSelectZoneHandle->show(); OutputSelectZoneHandle->show();
OutputSelectZoneHandle->raise(); OutputSelectZoneHandle->raise();
mOutputSelectZoneList.append(OutputSelectZoneHandle); mOutputSelectZoneList.append(OutputSelectZoneHandle);
//108 pins //108 pins
OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_108_PINS_CONNECTOR_TYPE,this); OutputSelectZoneHandle = new CConnectorClickZoneWidget(CConnectorDefs::OUTPUT_108_PINS_CONNECTOR_TYPE,this);
OutputSelectZoneHandle->setGeometry(235,308,47,148); OutputSelectZoneHandle->setGeometry(92,308,47,148);
OutputSelectZoneHandle->show(); OutputSelectZoneHandle->show();
OutputSelectZoneHandle->raise(); OutputSelectZoneHandle->raise();
mOutputSelectZoneList.append(OutputSelectZoneHandle); mOutputSelectZoneList.append(OutputSelectZoneHandle);

View File

@ -4,6 +4,7 @@
CConnectorTestVisualizationWidget::CConnectorTestVisualizationWidget(QWidget *parent) : CConnectorTestVisualizationWidget::CConnectorTestVisualizationWidget(QWidget *parent) :
QWidget(parent) QWidget(parent)
{ {
mPinClicksEnabled = false;
} }
int CConnectorTestVisualizationWidget::SetConnectorPinCount(int Count) int CConnectorTestVisualizationWidget::SetConnectorPinCount(int Count)
@ -21,7 +22,8 @@ int CConnectorTestVisualizationWidget::SetConnectorPinCount(int Count)
for(int i = 0; i < Count; i++) for(int i = 0; i < Count; i++)
{ {
QString pin = QString("%1").arg(i+1); QString pin = QString("%1").arg(i+1);
NewWidget = new CONOFFStatusWidget(CONOFFStatusWidget::ON_OFF_LED_COLOR_GREEN,this,pin); NewWidget = new CONOFFStatusWidget(CONOFFStatusWidget::ON_OFF_LED_COLOR_GREEN,i+1,this,pin);
connect(NewWidget,SIGNAL(Clicked(int)),this,SLOT(ONOFFLedClicked(int)));
NewWidget->resize(ON_OFF_WIDGET_SIZE,ON_OFF_WIDGET_SIZE); NewWidget->resize(ON_OFF_WIDGET_SIZE,ON_OFF_WIDGET_SIZE);
// NewWidget->move((col)*(ON_OFF_WIDGET_SIZE + col_offset),((row) * (ON_OFF_WIDGET_SIZE + row_offset))); // NewWidget->move((col)*(ON_OFF_WIDGET_SIZE + col_offset),((row) * (ON_OFF_WIDGET_SIZE + row_offset)));
@ -52,3 +54,46 @@ int CConnectorTestVisualizationWidget::ClearConnectorsLists()
return RET_OK; return RET_OK;
} }
int CConnectorTestVisualizationWidget::EnablePinClicks()
{
mPinClicksEnabled = true;
return RET_OK;
}
int CConnectorTestVisualizationWidget::DisablePinClicks()
{
mPinClicksEnabled = false;
return RET_OK;
}
void CConnectorTestVisualizationWidget::ONOFFLedClicked(int Index)
{
if(mPinClicksEnabled)
{
emit PinClicked(Index);
}
}
int CConnectorTestVisualizationWidget::SetConnectorPinStates(QBitArray PinStates)
{
if(PinStates.size() != mPinsWidgetsList.size())
{
qDebug("Erreur de logique dans CConnectorTestVisualizationWidget::SetConnectorPinStates; taille des connecteurs incohérente");
return RET_ERROR;
}
if(mPinsWidgetsList.size() == 0)
{
return RET_OK;
}
for(int i = 0; i < mPinsWidgetsList.size(); i++)
{
mPinsWidgetsList.at(i)->SetState(PinStates.at(i));
}
return RET_OK;
}

View File

@ -3,8 +3,9 @@
#include <QWidget> #include <QWidget>
#include "ONOFFStatusWidget.h" #include "ONOFFStatusWidget.h"
#include <QList>
#include "CableTestBenchDefs.h" #include "CableTestBenchDefs.h"
#include <QList>
#include <QBitArray>
#define ON_OFF_WIDGET_SIZE 30 #define ON_OFF_WIDGET_SIZE 30
#define LED_PER_LINE_COUNT 10 #define LED_PER_LINE_COUNT 10
@ -16,14 +17,28 @@ public:
QList<CONOFFStatusWidget*> mPinsWidgetsList; QList<CONOFFStatusWidget*> mPinsWidgetsList;
int SetConnectorPinCount(int count); int SetConnectorPinCount(int count);
int ClearConnectorsLists(); int ClearConnectorsLists();
int DisablePinClicks();
int EnablePinClicks();
int SetConnectorPinStates(QBitArray PinStates);
signals: signals:
void PinClicked(int PinNbr);
private:
bool mPinClicksEnabled;
public slots: public slots:
void ONOFFLedClicked(int Index);
}; };

View File

@ -18,7 +18,7 @@
#include "ONOFFStatusWidget.h" #include "ONOFFStatusWidget.h"
#include <QPainter> #include <QPainter>
CONOFFStatusWidget::CONOFFStatusWidget(eONOFFLedColor Color, QWidget *Parent, QString Label) CONOFFStatusWidget::CONOFFStatusWidget(eONOFFLedColor Color,int index, QWidget *Parent,QString Label)
{ {
setParent(Parent); setParent(Parent);
if(Color == ON_OFF_LED_COLOR_GREEN) if(Color == ON_OFF_LED_COLOR_GREEN)
@ -34,6 +34,9 @@ CONOFFStatusWidget::CONOFFStatusWidget(eONOFFLedColor Color, QWidget *Parent, QS
mLabel = new QLabel(Label,this); mLabel = new QLabel(Label,this);
mLabel->move(0,15); mLabel->move(0,15);
mIndex = index;
mIsOn = false;
} }
CONOFFStatusWidget::~CONOFFStatusWidget() CONOFFStatusWidget::~CONOFFStatusWidget()
@ -42,17 +45,34 @@ CONOFFStatusWidget::~CONOFFStatusWidget()
void CONOFFStatusWidget::SetON() void CONOFFStatusWidget::SetON()
{ {
IsOn = true; if(mIsOn == false)
{
mIsOn = true;
repaint();
}
} }
void CONOFFStatusWidget::SetOFF() void CONOFFStatusWidget::SetOFF()
{ {
IsOn = true; if(mIsOn == true)
{
mIsOn = false;
repaint();
}
}
void CONOFFStatusWidget::SetState(bool IsON)
{
if(IsON != mIsOn) //don't repaint if not necessary
{
mIsOn = IsON;
repaint();
}
} }
void CONOFFStatusWidget::Toggle() void CONOFFStatusWidget::Toggle()
{ {
if(IsOn) if(mIsOn)
{ {
SetOFF(); SetOFF();
} }
@ -66,13 +86,13 @@ void CONOFFStatusWidget::paintEvent(QPaintEvent *PaintEvent)
{ {
QPainter painter(this); QPainter painter(this);
if(IsOn) if(mIsOn)
{ {
painter.drawPixmap(0,0,mLedOnPixmap); painter.drawPixmap(0,0,mLedOnPixmap);
} }
else else
{ {
painter.drawPixmap(0,0,mLedOnPixmap); painter.drawPixmap(0,0,mLedOffPixmap);
} }
} }
@ -99,3 +119,8 @@ void CONOFFStatusWidget::resizeEvent(QResizeEvent *event)
mLabel->move((width/2)-(LabelWidth/2),height); mLabel->move((width/2)-(LabelWidth/2),height);
} }
void CONOFFStatusWidget::mouseReleaseEvent(QMouseEvent *event)
{
emit Clicked(mIndex);
}

View File

@ -19,24 +19,29 @@ public:
ON_OFF_LED_COLOR_RED ON_OFF_LED_COLOR_RED
}; };
CONOFFStatusWidget(eONOFFLedColor Color, QWidget *Parent = NULL,QString Label = QString()); CONOFFStatusWidget(eONOFFLedColor Color,int index = -1, QWidget *Parent = NULL,QString Label = QString());
~CONOFFStatusWidget(); ~CONOFFStatusWidget();
void paintEvent(QPaintEvent *PaintEvent); void paintEvent(QPaintEvent *PaintEvent);
void resizeEvent(QResizeEvent *); void resizeEvent(QResizeEvent *);
void mouseReleaseEvent(QMouseEvent *event);
QLabel *mLabel; QLabel *mLabel;
QPixmap mLedOnPixmap,mLedOffPixmap; QPixmap mLedOnPixmap,mLedOffPixmap;
bool IsOn; bool mIsOn;
void SetON(); void SetON();
void SetOFF(); void SetOFF();
void Toggle(); void Toggle();
void SetState(bool IsON);
int mIndex;
public slots: signals:
void Clicked(int index);

View File

@ -6,7 +6,9 @@ int main(int argc, char *argv[])
{ {
QApplication a(argc, argv); QApplication a(argc, argv);
CCableTestBench CableTestBench; QCoreApplication::setApplicationName("Testeur de cables");
QApplication::setApplicationName("Test");
CCableTestBench CableTestBench;
CableTestBench.Start(); CableTestBench.Start();
return a.exec(); return a.exec();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 28 KiB

BIN
images/connecteurs_BAK.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

@ -17,6 +17,11 @@ INPUT(
./debug\OptionsPage.o ./debug\OptionsPage.o
./debug\CableTestBenchDefs.o ./debug\CableTestBenchDefs.o
./debug\IOModulesInterface.o ./debug\IOModulesInterface.o
./debug\InputConnector.o
./debug\OutputConnector.o
./debug\CableParametersData.o
./debug\AutomatedTestReport.o
./debug\TestBenchSettings.o
./debug\moc_MainWindow.o ./debug\moc_MainWindow.o
./debug\moc_MainPage.o ./debug\moc_MainPage.o
./debug\moc_CableTestBench.o ./debug\moc_CableTestBench.o
@ -26,5 +31,9 @@ INPUT(
./debug\moc_ConnectorClickZoneWidget.o ./debug\moc_ConnectorClickZoneWidget.o
./debug\moc_ONOFFStatusWidget.o ./debug\moc_ONOFFStatusWidget.o
./debug\moc_ConnectorTestVisualizationWidget.o ./debug\moc_ConnectorTestVisualizationWidget.o
./debug\moc_TestReport.o
./debug\moc_CableTestEngine.o
./debug\moc_OptionsPage.o ./debug\moc_OptionsPage.o
./debug\moc_IOModulesInterface.o
./debug\moc_AutomatedTestReport.o
); );

View File

@ -17,6 +17,11 @@ INPUT(
./release\OptionsPage.o ./release\OptionsPage.o
./release\CableTestBenchDefs.o ./release\CableTestBenchDefs.o
./release\IOModulesInterface.o ./release\IOModulesInterface.o
./release\InputConnector.o
./release\OutputConnector.o
./release\CableParametersData.o
./release\AutomatedTestReport.o
./release\TestBenchSettings.o
./release\moc_MainWindow.o ./release\moc_MainWindow.o
./release\moc_MainPage.o ./release\moc_MainPage.o
./release\moc_CableTestBench.o ./release\moc_CableTestBench.o
@ -26,5 +31,9 @@ INPUT(
./release\moc_ConnectorClickZoneWidget.o ./release\moc_ConnectorClickZoneWidget.o
./release\moc_ONOFFStatusWidget.o ./release\moc_ONOFFStatusWidget.o
./release\moc_ConnectorTestVisualizationWidget.o ./release\moc_ConnectorTestVisualizationWidget.o
./release\moc_TestReport.o
./release\moc_CableTestEngine.o
./release\moc_OptionsPage.o ./release\moc_OptionsPage.o
./release\moc_IOModulesInterface.o
./release\moc_AutomatedTestReport.o
); );

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'CMainPage.ui' ** Form generated from reading UI file 'CMainPage.ui'
** **
** Created: Fri May 3 10:58:09 2019 ** Created: Fri Dec 6 12:10:43 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'CableTestPage.ui' ** Form generated from reading UI file 'CableTestPage.ui'
** **
** Created: Fri May 3 10:58:09 2019 ** Created: Fri Dec 6 12:10:44 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!
@ -14,10 +14,10 @@
#include <QtGui/QAction> #include <QtGui/QAction>
#include <QtGui/QApplication> #include <QtGui/QApplication>
#include <QtGui/QButtonGroup> #include <QtGui/QButtonGroup>
#include <QtGui/QCheckBox>
#include <QtGui/QComboBox> #include <QtGui/QComboBox>
#include <QtGui/QFrame> #include <QtGui/QFrame>
#include <QtGui/QGridLayout> #include <QtGui/QGridLayout>
#include <QtGui/QGroupBox>
#include <QtGui/QHeaderView> #include <QtGui/QHeaderView>
#include <QtGui/QLabel> #include <QtGui/QLabel>
#include <QtGui/QLineEdit> #include <QtGui/QLineEdit>
@ -51,19 +51,26 @@ public:
QLabel *mInspectionDoneIcon; QLabel *mInspectionDoneIcon;
CConnectorTestVisualizationWidget *mInputTestVisualisationWidget; CConnectorTestVisualizationWidget *mInputTestVisualisationWidget;
QFrame *line; QFrame *line;
CConnectorTestVisualizationWidget *mOutputTestVisualisationWidget;
QFrame *line_2; QFrame *line_2;
QLabel *mInputContactsTextLabel; QLabel *mInputContactsTextLabel;
QLabel *mOutputContactsTextLabel;
QPushButton *mNewCableBtn; QPushButton *mNewCableBtn;
QFrame *frame; QFrame *frame;
QGroupBox *groupBox;
QPushButton *mStartTestBtn; QPushButton *mStartTestBtn;
QPushButton *mReinitTestBtn; QPushButton *mReinitTestBtn;
QCheckBox *mCableIdentStepChkBx; QGroupBox *groupBox_2;
QCheckBox *mVisualInspStepChkBx; QPushButton *mStartManualTestBtn;
QCheckBox *mConSelStepChkBx; QPushButton *mSaveReportBtn;
QLabel *mCableIdentStepLabel;
QLabel *mVisualInspectionStepLabel;
QLabel *mConnectorSelStepLabel;
QLabel *mInspVisuelleLabel_2; QLabel *mInspVisuelleLabel_2;
QTextBrowser *mTestLogTextBox; QTextBrowser *mTestLogTextBox;
QGroupBox *groupBox_3;
QLabel *mAutoTestResultLabel;
QPushButton *mOpenReportBtn;
CConnectorTestVisualizationWidget *mOutputTestVisualisationWidget;
QLabel *mOutputContactsTextLabel;
void setupUi(QWidget *CCableTestPage) void setupUi(QWidget *CCableTestPage)
{ {
@ -73,72 +80,83 @@ public:
mConnectorSelectWidget = new CConnectorSelectWidget(CCableTestPage); mConnectorSelectWidget = new CConnectorSelectWidget(CCableTestPage);
mConnectorSelectWidget->setObjectName(QString::fromUtf8("mConnectorSelectWidget")); mConnectorSelectWidget->setObjectName(QString::fromUtf8("mConnectorSelectWidget"));
mConnectorSelectWidget->setGeometry(QRect(970, 10, 376, 537)); mConnectorSelectWidget->setGeometry(QRect(970, 10, 376, 537));
QFont font;
font.setPointSize(11);
mConnectorSelectWidget->setFont(font);
mCableConfigFrame = new QFrame(CCableTestPage); mCableConfigFrame = new QFrame(CCableTestPage);
mCableConfigFrame->setObjectName(QString::fromUtf8("mCableConfigFrame")); mCableConfigFrame->setObjectName(QString::fromUtf8("mCableConfigFrame"));
mCableConfigFrame->setGeometry(QRect(50, 50, 471, 121)); mCableConfigFrame->setGeometry(QRect(50, 40, 471, 161));
mCableConfigFrame->setFrameShape(QFrame::WinPanel); mCableConfigFrame->setFrameShape(QFrame::WinPanel);
mCableConfigFrame->setFrameShadow(QFrame::Raised); mCableConfigFrame->setFrameShadow(QFrame::Raised);
mCableConfigFrame->setLineWidth(3); mCableConfigFrame->setLineWidth(3);
layoutWidget = new QWidget(CCableTestPage); layoutWidget = new QWidget(CCableTestPage);
layoutWidget->setObjectName(QString::fromUtf8("layoutWidget")); layoutWidget->setObjectName(QString::fromUtf8("layoutWidget"));
layoutWidget->setGeometry(QRect(60, 60, 451, 100)); layoutWidget->setGeometry(QRect(60, 50, 451, 144));
gridLayout = new QGridLayout(layoutWidget); gridLayout = new QGridLayout(layoutWidget);
gridLayout->setObjectName(QString::fromUtf8("gridLayout")); gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
gridLayout->setContentsMargins(0, 0, 0, 0); gridLayout->setContentsMargins(0, 0, 0, 0);
mNomTesteurLabel = new QLabel(layoutWidget); mNomTesteurLabel = new QLabel(layoutWidget);
mNomTesteurLabel->setObjectName(QString::fromUtf8("mNomTesteurLabel")); mNomTesteurLabel->setObjectName(QString::fromUtf8("mNomTesteurLabel"));
QFont font; QFont font1;
font.setPointSize(12); font1.setPointSize(14);
mNomTesteurLabel->setFont(font); mNomTesteurLabel->setFont(font1);
gridLayout->addWidget(mNomTesteurLabel, 3, 0, 1, 1, Qt::AlignRight); gridLayout->addWidget(mNomTesteurLabel, 3, 0, 1, 1, Qt::AlignRight);
mTypeCableCombo = new QComboBox(layoutWidget); mTypeCableCombo = new QComboBox(layoutWidget);
mTypeCableCombo->setObjectName(QString::fromUtf8("mTypeCableCombo")); mTypeCableCombo->setObjectName(QString::fromUtf8("mTypeCableCombo"));
mTypeCableCombo->setFont(font1);
gridLayout->addWidget(mTypeCableCombo, 2, 1, 1, 2); gridLayout->addWidget(mTypeCableCombo, 2, 1, 1, 2);
mIdentCableEditBox = new QLineEdit(layoutWidget); mIdentCableEditBox = new QLineEdit(layoutWidget);
mIdentCableEditBox->setObjectName(QString::fromUtf8("mIdentCableEditBox")); mIdentCableEditBox->setObjectName(QString::fromUtf8("mIdentCableEditBox"));
mIdentCableEditBox->setFont(font1);
gridLayout->addWidget(mIdentCableEditBox, 1, 1, 1, 2); gridLayout->addWidget(mIdentCableEditBox, 1, 1, 1, 2);
mStationNameCombo = new QComboBox(layoutWidget); mStationNameCombo = new QComboBox(layoutWidget);
mStationNameCombo->setObjectName(QString::fromUtf8("mStationNameCombo")); mStationNameCombo->setObjectName(QString::fromUtf8("mStationNameCombo"));
mStationNameCombo->setFont(font1);
gridLayout->addWidget(mStationNameCombo, 0, 1, 1, 2); gridLayout->addWidget(mStationNameCombo, 0, 1, 1, 2);
StationNameLabel = new QLabel(layoutWidget); StationNameLabel = new QLabel(layoutWidget);
StationNameLabel->setObjectName(QString::fromUtf8("StationNameLabel")); StationNameLabel->setObjectName(QString::fromUtf8("StationNameLabel"));
StationNameLabel->setFont(font); StationNameLabel->setFont(font1);
gridLayout->addWidget(StationNameLabel, 0, 0, 1, 1, Qt::AlignRight); gridLayout->addWidget(StationNameLabel, 0, 0, 1, 1, Qt::AlignRight);
mTypeCableLabel = new QLabel(layoutWidget); mTypeCableLabel = new QLabel(layoutWidget);
mTypeCableLabel->setObjectName(QString::fromUtf8("mTypeCableLabel")); mTypeCableLabel->setObjectName(QString::fromUtf8("mTypeCableLabel"));
mTypeCableLabel->setFont(font); mTypeCableLabel->setFont(font1);
gridLayout->addWidget(mTypeCableLabel, 2, 0, 1, 1, Qt::AlignRight); gridLayout->addWidget(mTypeCableLabel, 2, 0, 1, 1, Qt::AlignRight);
mIdentCableLabel = new QLabel(layoutWidget); mIdentCableLabel = new QLabel(layoutWidget);
mIdentCableLabel->setObjectName(QString::fromUtf8("mIdentCableLabel")); mIdentCableLabel->setObjectName(QString::fromUtf8("mIdentCableLabel"));
mIdentCableLabel->setFont(font); mIdentCableLabel->setFont(font1);
gridLayout->addWidget(mIdentCableLabel, 1, 0, 1, 1); gridLayout->addWidget(mIdentCableLabel, 1, 0, 1, 1);
mNomTesteurEditBox = new QLineEdit(layoutWidget); mNomTesteurEditBox = new QLineEdit(layoutWidget);
mNomTesteurEditBox->setObjectName(QString::fromUtf8("mNomTesteurEditBox")); mNomTesteurEditBox->setObjectName(QString::fromUtf8("mNomTesteurEditBox"));
mNomTesteurEditBox->setFont(font1);
gridLayout->addWidget(mNomTesteurEditBox, 3, 1, 1, 2); gridLayout->addWidget(mNomTesteurEditBox, 3, 1, 1, 2);
mCableConfigLabel = new QLabel(CCableTestPage); mCableConfigLabel = new QLabel(CCableTestPage);
mCableConfigLabel->setObjectName(QString::fromUtf8("mCableConfigLabel")); mCableConfigLabel->setObjectName(QString::fromUtf8("mCableConfigLabel"));
mCableConfigLabel->setGeometry(QRect(60, 20, 271, 20)); mCableConfigLabel->setGeometry(QRect(60, 10, 271, 20));
mCableConfigLabel->setFont(font); QFont font2;
font2.setPointSize(16);
mCableConfigLabel->setFont(font2);
mInspVisuelleLabel = new QLabel(CCableTestPage); mInspVisuelleLabel = new QLabel(CCableTestPage);
mInspVisuelleLabel->setObjectName(QString::fromUtf8("mInspVisuelleLabel")); mInspVisuelleLabel->setObjectName(QString::fromUtf8("mInspVisuelleLabel"));
mInspVisuelleLabel->setGeometry(QRect(600, 20, 271, 20)); mInspVisuelleLabel->setGeometry(QRect(600, 20, 271, 20));
mInspVisuelleLabel->setFont(font); QFont font3;
font3.setPointSize(12);
mInspVisuelleLabel->setFont(font3);
mInspVisuelleFrame = new QFrame(CCableTestPage); mInspVisuelleFrame = new QFrame(CCableTestPage);
mInspVisuelleFrame->setObjectName(QString::fromUtf8("mInspVisuelleFrame")); mInspVisuelleFrame->setObjectName(QString::fromUtf8("mInspVisuelleFrame"));
mInspVisuelleFrame->setGeometry(QRect(600, 40, 291, 121)); mInspVisuelleFrame->setGeometry(QRect(600, 40, 291, 121));
@ -147,73 +165,103 @@ public:
mInspVisuelleFrame->setLineWidth(3); mInspVisuelleFrame->setLineWidth(3);
mExecInspVisuelleBtn = new QPushButton(mInspVisuelleFrame); mExecInspVisuelleBtn = new QPushButton(mInspVisuelleFrame);
mExecInspVisuelleBtn->setObjectName(QString::fromUtf8("mExecInspVisuelleBtn")); mExecInspVisuelleBtn->setObjectName(QString::fromUtf8("mExecInspVisuelleBtn"));
mExecInspVisuelleBtn->setGeometry(QRect(10, 50, 121, 23)); mExecInspVisuelleBtn->setGeometry(QRect(10, 30, 101, 51));
mExecInspVisuelleBtn->setFont(font3);
mInspectionDoneIcon = new QLabel(mInspVisuelleFrame); mInspectionDoneIcon = new QLabel(mInspVisuelleFrame);
mInspectionDoneIcon->setObjectName(QString::fromUtf8("mInspectionDoneIcon")); mInspectionDoneIcon->setObjectName(QString::fromUtf8("mInspectionDoneIcon"));
mInspectionDoneIcon->setGeometry(QRect(160, 20, 101, 91)); mInspectionDoneIcon->setGeometry(QRect(160, 20, 101, 91));
mInputTestVisualisationWidget = new CConnectorTestVisualizationWidget(CCableTestPage); mInputTestVisualisationWidget = new CConnectorTestVisualizationWidget(CCableTestPage);
mInputTestVisualisationWidget->setObjectName(QString::fromUtf8("mInputTestVisualisationWidget")); mInputTestVisualisationWidget->setObjectName(QString::fromUtf8("mInputTestVisualisationWidget"));
mInputTestVisualisationWidget->setGeometry(QRect(10, 410, 471, 351)); mInputTestVisualisationWidget->setGeometry(QRect(500, 410, 461, 351));
mInputTestVisualisationWidget->setAutoFillBackground(false); mInputTestVisualisationWidget->setAutoFillBackground(false);
line = new QFrame(CCableTestPage); line = new QFrame(CCableTestPage);
line->setObjectName(QString::fromUtf8("line")); line->setObjectName(QString::fromUtf8("line"));
line->setGeometry(QRect(30, 360, 901, 20)); line->setGeometry(QRect(30, 360, 901, 20));
line->setFrameShape(QFrame::HLine); line->setFrameShape(QFrame::HLine);
line->setFrameShadow(QFrame::Sunken); line->setFrameShadow(QFrame::Sunken);
mOutputTestVisualisationWidget = new CConnectorTestVisualizationWidget(CCableTestPage);
mOutputTestVisualisationWidget->setObjectName(QString::fromUtf8("mOutputTestVisualisationWidget"));
mOutputTestVisualisationWidget->setGeometry(QRect(510, 410, 441, 351));
mOutputTestVisualisationWidget->setAutoFillBackground(false);
line_2 = new QFrame(CCableTestPage); line_2 = new QFrame(CCableTestPage);
line_2->setObjectName(QString::fromUtf8("line_2")); line_2->setObjectName(QString::fromUtf8("line_2"));
line_2->setGeometry(QRect(490, 390, 20, 371)); line_2->setGeometry(QRect(480, 390, 20, 371));
line_2->setFrameShape(QFrame::VLine); line_2->setFrameShape(QFrame::VLine);
line_2->setFrameShadow(QFrame::Sunken); line_2->setFrameShadow(QFrame::Sunken);
mInputContactsTextLabel = new QLabel(CCableTestPage); mInputContactsTextLabel = new QLabel(CCableTestPage);
mInputContactsTextLabel->setObjectName(QString::fromUtf8("mInputContactsTextLabel")); mInputContactsTextLabel->setObjectName(QString::fromUtf8("mInputContactsTextLabel"));
mInputContactsTextLabel->setGeometry(QRect(130, 370, 161, 41)); mInputContactsTextLabel->setGeometry(QRect(620, 370, 241, 41));
QFont font1; mInputContactsTextLabel->setFont(font2);
font1.setPointSize(16);
mInputContactsTextLabel->setFont(font1);
mOutputContactsTextLabel = new QLabel(CCableTestPage);
mOutputContactsTextLabel->setObjectName(QString::fromUtf8("mOutputContactsTextLabel"));
mOutputContactsTextLabel->setGeometry(QRect(670, 370, 161, 41));
mOutputContactsTextLabel->setFont(font1);
mNewCableBtn = new QPushButton(CCableTestPage); mNewCableBtn = new QPushButton(CCableTestPage);
mNewCableBtn->setObjectName(QString::fromUtf8("mNewCableBtn")); mNewCableBtn->setObjectName(QString::fromUtf8("mNewCableBtn"));
mNewCableBtn->setGeometry(QRect(430, 20, 91, 23)); mNewCableBtn->setGeometry(QRect(400, 10, 121, 23));
mNewCableBtn->setFont(font3);
frame = new QFrame(CCableTestPage); frame = new QFrame(CCableTestPage);
frame->setObjectName(QString::fromUtf8("frame")); frame->setObjectName(QString::fromUtf8("frame"));
frame->setGeometry(QRect(50, 220, 471, 131)); frame->setGeometry(QRect(50, 220, 661, 141));
frame->setFrameShape(QFrame::Box); frame->setFrameShape(QFrame::Box);
frame->setFrameShadow(QFrame::Raised); frame->setFrameShadow(QFrame::Raised);
mStartTestBtn = new QPushButton(frame); groupBox = new QGroupBox(frame);
groupBox->setObjectName(QString::fromUtf8("groupBox"));
groupBox->setGeometry(QRect(360, 10, 141, 91));
mStartTestBtn = new QPushButton(groupBox);
mStartTestBtn->setObjectName(QString::fromUtf8("mStartTestBtn")); mStartTestBtn->setObjectName(QString::fromUtf8("mStartTestBtn"));
mStartTestBtn->setGeometry(QRect(260, 20, 91, 23)); mStartTestBtn->setGeometry(QRect(20, 20, 111, 23));
mReinitTestBtn = new QPushButton(frame); mStartTestBtn->setFont(font);
mReinitTestBtn = new QPushButton(groupBox);
mReinitTestBtn->setObjectName(QString::fromUtf8("mReinitTestBtn")); mReinitTestBtn->setObjectName(QString::fromUtf8("mReinitTestBtn"));
mReinitTestBtn->setGeometry(QRect(260, 70, 91, 23)); mReinitTestBtn->setGeometry(QRect(20, 50, 111, 23));
mCableIdentStepChkBx = new QCheckBox(frame); mReinitTestBtn->setFont(font);
mCableIdentStepChkBx->setObjectName(QString::fromUtf8("mCableIdentStepChkBx")); groupBox_2 = new QGroupBox(frame);
mCableIdentStepChkBx->setGeometry(QRect(20, 20, 151, 17)); groupBox_2->setObjectName(QString::fromUtf8("groupBox_2"));
mCableIdentStepChkBx->setCheckable(false); groupBox_2->setGeometry(QRect(530, 10, 111, 80));
mVisualInspStepChkBx = new QCheckBox(frame); mStartManualTestBtn = new QPushButton(groupBox_2);
mVisualInspStepChkBx->setObjectName(QString::fromUtf8("mVisualInspStepChkBx")); mStartManualTestBtn->setObjectName(QString::fromUtf8("mStartManualTestBtn"));
mVisualInspStepChkBx->setGeometry(QRect(20, 50, 151, 17)); mStartManualTestBtn->setGeometry(QRect(20, 30, 75, 23));
mVisualInspStepChkBx->setCheckable(true); mStartManualTestBtn->setFont(font3);
mConSelStepChkBx = new QCheckBox(frame); mSaveReportBtn = new QPushButton(frame);
mConSelStepChkBx->setObjectName(QString::fromUtf8("mConSelStepChkBx")); mSaveReportBtn->setObjectName(QString::fromUtf8("mSaveReportBtn"));
mConSelStepChkBx->setGeometry(QRect(20, 80, 191, 17)); mSaveReportBtn->setGeometry(QRect(470, 102, 161, 31));
mConSelStepChkBx->setCheckable(false); mSaveReportBtn->setFont(font3);
mCableIdentStepLabel = new QLabel(frame);
mCableIdentStepLabel->setObjectName(QString::fromUtf8("mCableIdentStepLabel"));
mCableIdentStepLabel->setGeometry(QRect(20, 30, 341, 16));
mCableIdentStepLabel->setFont(font1);
mVisualInspectionStepLabel = new QLabel(frame);
mVisualInspectionStepLabel->setObjectName(QString::fromUtf8("mVisualInspectionStepLabel"));
mVisualInspectionStepLabel->setGeometry(QRect(20, 70, 331, 16));
mVisualInspectionStepLabel->setFont(font1);
mConnectorSelStepLabel = new QLabel(frame);
mConnectorSelStepLabel->setObjectName(QString::fromUtf8("mConnectorSelStepLabel"));
mConnectorSelStepLabel->setGeometry(QRect(20, 110, 451, 16));
mConnectorSelStepLabel->setFont(font1);
mInspVisuelleLabel_2 = new QLabel(CCableTestPage); mInspVisuelleLabel_2 = new QLabel(CCableTestPage);
mInspVisuelleLabel_2->setObjectName(QString::fromUtf8("mInspVisuelleLabel_2")); mInspVisuelleLabel_2->setObjectName(QString::fromUtf8("mInspVisuelleLabel_2"));
mInspVisuelleLabel_2->setGeometry(QRect(50, 200, 221, 20)); mInspVisuelleLabel_2->setGeometry(QRect(50, 200, 221, 20));
mInspVisuelleLabel_2->setFont(font); mInspVisuelleLabel_2->setFont(font3);
mTestLogTextBox = new QTextBrowser(CCableTestPage); mTestLogTextBox = new QTextBrowser(CCableTestPage);
mTestLogTextBox->setObjectName(QString::fromUtf8("mTestLogTextBox")); mTestLogTextBox->setObjectName(QString::fromUtf8("mTestLogTextBox"));
mTestLogTextBox->setGeometry(QRect(970, 550, 381, 201)); mTestLogTextBox->setGeometry(QRect(970, 550, 381, 201));
mTestLogTextBox->setFrameShape(QFrame::Box); mTestLogTextBox->setFrameShape(QFrame::Box);
mTestLogTextBox->setFrameShadow(QFrame::Plain); mTestLogTextBox->setFrameShadow(QFrame::Plain);
groupBox_3 = new QGroupBox(CCableTestPage);
groupBox_3->setObjectName(QString::fromUtf8("groupBox_3"));
groupBox_3->setGeometry(QRect(720, 220, 231, 131));
mAutoTestResultLabel = new QLabel(groupBox_3);
mAutoTestResultLabel->setObjectName(QString::fromUtf8("mAutoTestResultLabel"));
mAutoTestResultLabel->setGeometry(QRect(20, 30, 181, 41));
QFont font4;
font4.setPointSize(26);
mAutoTestResultLabel->setFont(font4);
mAutoTestResultLabel->setAlignment(Qt::AlignCenter);
mOpenReportBtn = new QPushButton(groupBox_3);
mOpenReportBtn->setObjectName(QString::fromUtf8("mOpenReportBtn"));
mOpenReportBtn->setGeometry(QRect(40, 90, 141, 31));
mOpenReportBtn->setFont(font3);
mOutputTestVisualisationWidget = new CConnectorTestVisualizationWidget(CCableTestPage);
mOutputTestVisualisationWidget->setObjectName(QString::fromUtf8("mOutputTestVisualisationWidget"));
mOutputTestVisualisationWidget->setGeometry(QRect(20, 410, 461, 351));
mOutputTestVisualisationWidget->setAutoFillBackground(false);
mOutputContactsTextLabel = new QLabel(CCableTestPage);
mOutputContactsTextLabel->setObjectName(QString::fromUtf8("mOutputContactsTextLabel"));
mOutputContactsTextLabel->setGeometry(QRect(190, 370, 221, 41));
mOutputContactsTextLabel->setFont(font2);
retranslateUi(CCableTestPage); retranslateUi(CCableTestPage);
@ -229,36 +277,31 @@ public:
<< QApplication::translate("CCableTestPage", "Permanent", 0, QApplication::UnicodeUTF8) << QApplication::translate("CCableTestPage", "Permanent", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "Temporaire", 0, QApplication::UnicodeUTF8) << QApplication::translate("CCableTestPage", "Temporaire", 0, QApplication::UnicodeUTF8)
); );
mStationNameCombo->clear();
mStationNameCombo->insertItems(0, QStringList()
<< QApplication::translate("CCableTestPage", "Frontenac", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "C\303\264te-Vertu", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "Angrignon", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "Garage Angrignon", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "Atwater", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "Lionel-Groulx", 0, QApplication::UnicodeUTF8)
<< QApplication::translate("CCableTestPage", "Viau", 0, QApplication::UnicodeUTF8)
);
StationNameLabel->setText(QApplication::translate("CCableTestPage", "Station", 0, QApplication::UnicodeUTF8)); StationNameLabel->setText(QApplication::translate("CCableTestPage", "Station", 0, QApplication::UnicodeUTF8));
mTypeCableLabel->setText(QApplication::translate("CCableTestPage", "Type c\303\242ble", 0, QApplication::UnicodeUTF8)); mTypeCableLabel->setText(QApplication::translate("CCableTestPage", "Type c\303\242ble", 0, QApplication::UnicodeUTF8));
mIdentCableLabel->setText(QApplication::translate("CCableTestPage", "Identification du c\303\242ble", 0, QApplication::UnicodeUTF8)); mIdentCableLabel->setText(QApplication::translate("CCableTestPage", "Identification du c\303\242ble", 0, QApplication::UnicodeUTF8));
mNomTesteurEditBox->setText(QString()); mNomTesteurEditBox->setText(QString());
mCableConfigLabel->setText(QApplication::translate("CCableTestPage", "Configuration du c\303\242ble", 0, QApplication::UnicodeUTF8)); mCableConfigLabel->setText(QApplication::translate("CCableTestPage", "Configuration du c\303\242ble", 0, QApplication::UnicodeUTF8));
mInspVisuelleLabel->setText(QApplication::translate("CCableTestPage", "Inspection visuelle", 0, QApplication::UnicodeUTF8)); mInspVisuelleLabel->setText(QApplication::translate("CCableTestPage", "Inspection visuelle", 0, QApplication::UnicodeUTF8));
mExecInspVisuelleBtn->setText(QApplication::translate("CCableTestPage", "Effectuer Inspection", 0, QApplication::UnicodeUTF8)); mExecInspVisuelleBtn->setText(QApplication::translate("CCableTestPage", "Effectuer\n"
" Inspection", 0, QApplication::UnicodeUTF8));
mInspectionDoneIcon->setText(QApplication::translate("CCableTestPage", "TextLabel", 0, QApplication::UnicodeUTF8)); mInspectionDoneIcon->setText(QApplication::translate("CCableTestPage", "TextLabel", 0, QApplication::UnicodeUTF8));
mInputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts entr\303\251e", 0, QApplication::UnicodeUTF8)); mInputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts entr\303\251e", 0, QApplication::UnicodeUTF8));
mOutputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts sortie", 0, QApplication::UnicodeUTF8));
mNewCableBtn->setText(QApplication::translate("CCableTestPage", "Nouveau C\303\242ble", 0, QApplication::UnicodeUTF8)); mNewCableBtn->setText(QApplication::translate("CCableTestPage", "Nouveau C\303\242ble", 0, QApplication::UnicodeUTF8));
groupBox->setTitle(QApplication::translate("CCableTestPage", "Test Automatique", 0, QApplication::UnicodeUTF8));
mStartTestBtn->setText(QApplication::translate("CCableTestPage", "D\303\251marrer test", 0, QApplication::UnicodeUTF8)); mStartTestBtn->setText(QApplication::translate("CCableTestPage", "D\303\251marrer test", 0, QApplication::UnicodeUTF8));
mReinitTestBtn->setText(QApplication::translate("CCableTestPage", "R\303\251initialiser test", 0, QApplication::UnicodeUTF8)); mReinitTestBtn->setText(QApplication::translate("CCableTestPage", "R\303\251initialiser test", 0, QApplication::UnicodeUTF8));
mCableIdentStepChkBx->setText(QApplication::translate("CCableTestPage", "1. Identification du c\303\242ble", 0, QApplication::UnicodeUTF8)); groupBox_2->setTitle(QApplication::translate("CCableTestPage", "Test Manuel", 0, QApplication::UnicodeUTF8));
#ifndef QT_NO_TOOLTIP mStartManualTestBtn->setText(QApplication::translate("CCableTestPage", "Ex\303\251cuter", 0, QApplication::UnicodeUTF8));
mVisualInspStepChkBx->setToolTip(QString()); mSaveReportBtn->setText(QApplication::translate("CCableTestPage", "Sauvegarder Rapport", 0, QApplication::UnicodeUTF8));
#endif // QT_NO_TOOLTIP mCableIdentStepLabel->setText(QApplication::translate("CCableTestPage", "1. Identification du c\303\242ble: \303\200 REMPLIR", 0, QApplication::UnicodeUTF8));
mVisualInspStepChkBx->setText(QApplication::translate("CCableTestPage", "2. Inspection visuelle", 0, QApplication::UnicodeUTF8)); mVisualInspectionStepLabel->setText(QApplication::translate("CCableTestPage", "2. Inspection visuelle: \303\200 EX\303\211CUTER", 0, QApplication::UnicodeUTF8));
mConSelStepChkBx->setText(QApplication::translate("CCableTestPage", "3. S\303\251lection du connecteur d'entr\303\251e", 0, QApplication::UnicodeUTF8)); mConnectorSelStepLabel->setText(QApplication::translate("CCableTestPage", "3. S\303\251lection du connecteur d'entr\303\251e: \303\200 FAIRE", 0, QApplication::UnicodeUTF8));
mInspVisuelleLabel_2->setText(QApplication::translate("CCableTestPage", "Contr\303\264le du test \303\251lectrique", 0, QApplication::UnicodeUTF8)); mInspVisuelleLabel_2->setText(QApplication::translate("CCableTestPage", "Contr\303\264le du test \303\251lectrique", 0, QApplication::UnicodeUTF8));
groupBox_3->setTitle(QApplication::translate("CCableTestPage", "R\303\251sultat du test", 0, QApplication::UnicodeUTF8));
mAutoTestResultLabel->setText(QApplication::translate("CCableTestPage", "En cours...", 0, QApplication::UnicodeUTF8));
mOpenReportBtn->setText(QApplication::translate("CCableTestPage", "Ouvrir Rapport", 0, QApplication::UnicodeUTF8));
mOutputContactsTextLabel->setText(QApplication::translate("CCableTestPage", "Contacts sortie", 0, QApplication::UnicodeUTF8));
} // retranslateUi } // retranslateUi
}; };

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'OptionsPage.ui' ** Form generated from reading UI file 'OptionsPage.ui'
** **
** Created: Fri May 3 10:58:09 2019 ** Created: Fri Dec 6 12:10:44 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!
@ -14,6 +14,7 @@
#include <QtGui/QAction> #include <QtGui/QAction>
#include <QtGui/QApplication> #include <QtGui/QApplication>
#include <QtGui/QButtonGroup> #include <QtGui/QButtonGroup>
#include <QtGui/QCheckBox>
#include <QtGui/QHeaderView> #include <QtGui/QHeaderView>
#include <QtGui/QLabel> #include <QtGui/QLabel>
#include <QtGui/QPushButton> #include <QtGui/QPushButton>
@ -25,82 +26,87 @@ QT_BEGIN_NAMESPACE
class Ui_COptionsPage class Ui_COptionsPage
{ {
public: public:
QLabel *label;
QLabel *label_2; QLabel *label_2;
QSpinBox *mTestHoldTimeHighSpinBx; QSpinBox *mTestHoldTimeHighSpinBx;
QLabel *label_3; QLabel *label_3;
QLabel *label_4;
QSpinBox *mTestHoldTimeLowSpinBx;
QSpinBox *mIPAdd1SpinBox; QSpinBox *mIPAdd1SpinBox;
QSpinBox *mIPAdd2SpinBox; QSpinBox *mIPAdd2SpinBox;
QSpinBox *mIPAdd3SpinBox; QSpinBox *mIPAdd3SpinBox;
QSpinBox *mIPAdd4SpinBox; QSpinBox *mIPAdd4SpinBox;
QLabel *label_5; QLabel *label_5;
QPushButton *mApplyAndSaveBtn; QPushButton *mApplyAndSaveBtn;
QCheckBox *mIgnoreVisualInspChkBx;
QCheckBox *mIncludeLogInReportChkBx;
QCheckBox *mExecSecondTestChkBx;
void setupUi(QWidget *COptionsPage) void setupUi(QWidget *COptionsPage)
{ {
if (COptionsPage->objectName().isEmpty()) if (COptionsPage->objectName().isEmpty())
COptionsPage->setObjectName(QString::fromUtf8("COptionsPage")); COptionsPage->setObjectName(QString::fromUtf8("COptionsPage"));
COptionsPage->resize(1119, 647); COptionsPage->resize(564, 647);
label = new QLabel(COptionsPage);
label->setObjectName(QString::fromUtf8("label"));
label->setGeometry(QRect(100, 40, 181, 31));
QFont font;
font.setPointSize(14);
label->setFont(font);
label_2 = new QLabel(COptionsPage); label_2 = new QLabel(COptionsPage);
label_2->setObjectName(QString::fromUtf8("label_2")); label_2->setObjectName(QString::fromUtf8("label_2"));
label_2->setGeometry(QRect(530, 40, 181, 31)); label_2->setGeometry(QRect(170, 40, 321, 31));
QFont font;
font.setPointSize(14);
label_2->setFont(font); label_2->setFont(font);
mTestHoldTimeHighSpinBx = new QSpinBox(COptionsPage); mTestHoldTimeHighSpinBx = new QSpinBox(COptionsPage);
mTestHoldTimeHighSpinBx->setObjectName(QString::fromUtf8("mTestHoldTimeHighSpinBx")); mTestHoldTimeHighSpinBx->setObjectName(QString::fromUtf8("mTestHoldTimeHighSpinBx"));
mTestHoldTimeHighSpinBx->setGeometry(QRect(680, 110, 61, 22)); mTestHoldTimeHighSpinBx->setGeometry(QRect(320, 110, 61, 22));
mTestHoldTimeHighSpinBx->setMinimum(100); mTestHoldTimeHighSpinBx->setMinimum(100);
mTestHoldTimeHighSpinBx->setMaximum(5000); mTestHoldTimeHighSpinBx->setMaximum(5000);
mTestHoldTimeHighSpinBx->setValue(1000); mTestHoldTimeHighSpinBx->setValue(1000);
label_3 = new QLabel(COptionsPage); label_3 = new QLabel(COptionsPage);
label_3->setObjectName(QString::fromUtf8("label_3")); label_3->setObjectName(QString::fromUtf8("label_3"));
label_3->setGeometry(QRect(500, 110, 171, 20)); label_3->setGeometry(QRect(100, 110, 211, 20));
QFont font1; QFont font1;
font1.setPointSize(10); font1.setPointSize(12);
label_3->setFont(font1); label_3->setFont(font1);
label_4 = new QLabel(COptionsPage);
label_4->setObjectName(QString::fromUtf8("label_4"));
label_4->setGeometry(QRect(500, 150, 171, 20));
label_4->setFont(font1);
mTestHoldTimeLowSpinBx = new QSpinBox(COptionsPage);
mTestHoldTimeLowSpinBx->setObjectName(QString::fromUtf8("mTestHoldTimeLowSpinBx"));
mTestHoldTimeLowSpinBx->setGeometry(QRect(680, 150, 61, 22));
mTestHoldTimeLowSpinBx->setMinimum(1);
mTestHoldTimeLowSpinBx->setMaximum(5000);
mTestHoldTimeLowSpinBx->setValue(1);
mIPAdd1SpinBox = new QSpinBox(COptionsPage); mIPAdd1SpinBox = new QSpinBox(COptionsPage);
mIPAdd1SpinBox->setObjectName(QString::fromUtf8("mIPAdd1SpinBox")); mIPAdd1SpinBox->setObjectName(QString::fromUtf8("mIPAdd1SpinBox"));
mIPAdd1SpinBox->setGeometry(QRect(510, 340, 42, 22)); mIPAdd1SpinBox->setGeometry(QRect(131, 361, 51, 22));
QFont font2;
font2.setPointSize(11);
mIPAdd1SpinBox->setFont(font2);
mIPAdd1SpinBox->setMaximum(255); mIPAdd1SpinBox->setMaximum(255);
mIPAdd1SpinBox->setValue(192); mIPAdd1SpinBox->setValue(192);
mIPAdd2SpinBox = new QSpinBox(COptionsPage); mIPAdd2SpinBox = new QSpinBox(COptionsPage);
mIPAdd2SpinBox->setObjectName(QString::fromUtf8("mIPAdd2SpinBox")); mIPAdd2SpinBox->setObjectName(QString::fromUtf8("mIPAdd2SpinBox"));
mIPAdd2SpinBox->setGeometry(QRect(560, 340, 42, 22)); mIPAdd2SpinBox->setGeometry(QRect(190, 361, 51, 22));
mIPAdd2SpinBox->setFont(font2);
mIPAdd2SpinBox->setMaximum(255); mIPAdd2SpinBox->setMaximum(255);
mIPAdd2SpinBox->setValue(168); mIPAdd2SpinBox->setValue(168);
mIPAdd3SpinBox = new QSpinBox(COptionsPage); mIPAdd3SpinBox = new QSpinBox(COptionsPage);
mIPAdd3SpinBox->setObjectName(QString::fromUtf8("mIPAdd3SpinBox")); mIPAdd3SpinBox->setObjectName(QString::fromUtf8("mIPAdd3SpinBox"));
mIPAdd3SpinBox->setGeometry(QRect(610, 340, 42, 22)); mIPAdd3SpinBox->setGeometry(QRect(250, 360, 51, 22));
mIPAdd3SpinBox->setFont(font2);
mIPAdd3SpinBox->setMaximum(255); mIPAdd3SpinBox->setMaximum(255);
mIPAdd4SpinBox = new QSpinBox(COptionsPage); mIPAdd4SpinBox = new QSpinBox(COptionsPage);
mIPAdd4SpinBox->setObjectName(QString::fromUtf8("mIPAdd4SpinBox")); mIPAdd4SpinBox->setObjectName(QString::fromUtf8("mIPAdd4SpinBox"));
mIPAdd4SpinBox->setGeometry(QRect(660, 340, 42, 22)); mIPAdd4SpinBox->setGeometry(QRect(300, 360, 51, 22));
mIPAdd4SpinBox->setFont(font2);
mIPAdd4SpinBox->setMaximum(255); mIPAdd4SpinBox->setMaximum(255);
mIPAdd4SpinBox->setValue(52); mIPAdd4SpinBox->setValue(52);
label_5 = new QLabel(COptionsPage); label_5 = new QLabel(COptionsPage);
label_5->setObjectName(QString::fromUtf8("label_5")); label_5->setObjectName(QString::fromUtf8("label_5"));
label_5->setGeometry(QRect(510, 310, 171, 20)); label_5->setGeometry(QRect(140, 320, 351, 31));
label_5->setFont(font1); label_5->setFont(font1);
mApplyAndSaveBtn = new QPushButton(COptionsPage); mApplyAndSaveBtn = new QPushButton(COptionsPage);
mApplyAndSaveBtn->setObjectName(QString::fromUtf8("mApplyAndSaveBtn")); mApplyAndSaveBtn->setObjectName(QString::fromUtf8("mApplyAndSaveBtn"));
mApplyAndSaveBtn->setGeometry(QRect(390, 550, 131, 23)); mApplyAndSaveBtn->setGeometry(QRect(170, 470, 181, 23));
mApplyAndSaveBtn->setFont(font2);
mIgnoreVisualInspChkBx = new QCheckBox(COptionsPage);
mIgnoreVisualInspChkBx->setObjectName(QString::fromUtf8("mIgnoreVisualInspChkBx"));
mIgnoreVisualInspChkBx->setGeometry(QRect(140, 160, 321, 21));
mIgnoreVisualInspChkBx->setFont(font1);
mIncludeLogInReportChkBx = new QCheckBox(COptionsPage);
mIncludeLogInReportChkBx->setObjectName(QString::fromUtf8("mIncludeLogInReportChkBx"));
mIncludeLogInReportChkBx->setGeometry(QRect(140, 200, 321, 17));
mIncludeLogInReportChkBx->setFont(font1);
mExecSecondTestChkBx = new QCheckBox(COptionsPage);
mExecSecondTestChkBx->setObjectName(QString::fromUtf8("mExecSecondTestChkBx"));
mExecSecondTestChkBx->setGeometry(QRect(140, 240, 281, 17));
mExecSecondTestChkBx->setFont(font1);
retranslateUi(COptionsPage); retranslateUi(COptionsPage);
@ -110,12 +116,14 @@ public:
void retranslateUi(QWidget *COptionsPage) void retranslateUi(QWidget *COptionsPage)
{ {
COptionsPage->setWindowTitle(QApplication::translate("COptionsPage", "Form", 0, QApplication::UnicodeUTF8)); COptionsPage->setWindowTitle(QApplication::translate("COptionsPage", "Form", 0, QApplication::UnicodeUTF8));
label->setText(QApplication::translate("COptionsPage", "Valeurs par d\303\251faut", 0, QApplication::UnicodeUTF8));
label_2->setText(QApplication::translate("COptionsPage", "Param\303\250tres de test", 0, QApplication::UnicodeUTF8)); label_2->setText(QApplication::translate("COptionsPage", "Param\303\250tres de test", 0, QApplication::UnicodeUTF8));
label_3->setText(QApplication::translate("COptionsPage", "Temps de maintien haut (ms)", 0, QApplication::UnicodeUTF8)); label_3->setText(QApplication::translate("COptionsPage", "Temps de maintien haut (ms)", 0, QApplication::UnicodeUTF8));
label_4->setText(QApplication::translate("COptionsPage", "Temps de maintien bas (ms)", 0, QApplication::UnicodeUTF8)); label_5->setText(QApplication::translate("COptionsPage", "Adresse IP module I/O \n"
label_5->setText(QApplication::translate("COptionsPage", "Adresse IP module I/O", 0, QApplication::UnicodeUTF8)); "(red\303\251marrage de l'application requis)", 0, QApplication::UnicodeUTF8));
mApplyAndSaveBtn->setText(QApplication::translate("COptionsPage", "Appliquer && Sauvegarder", 0, QApplication::UnicodeUTF8)); mApplyAndSaveBtn->setText(QApplication::translate("COptionsPage", "Appliquer && Sauvegarder", 0, QApplication::UnicodeUTF8));
mIgnoreVisualInspChkBx->setText(QApplication::translate("COptionsPage", "Ignorer l'inspection visuelle", 0, QApplication::UnicodeUTF8));
mIncludeLogInReportChkBx->setText(QApplication::translate("COptionsPage", "Inclure LOG dans le rapport", 0, QApplication::UnicodeUTF8));
mExecSecondTestChkBx->setText(QApplication::translate("COptionsPage", "Ex\303\251cuter 2\303\250 passe de tests", 0, QApplication::UnicodeUTF8));
} // retranslateUi } // retranslateUi
}; };

View File

@ -1,7 +1,7 @@
/******************************************************************************** /********************************************************************************
** Form generated from reading UI file 'VisualInspectionPage.ui' ** Form generated from reading UI file 'VisualInspectionPage.ui'
** **
** Created: Fri May 3 10:58:09 2019 ** Created: Fri Dec 6 12:10:44 2019
** by: Qt User Interface Compiler version 4.8.1 ** by: Qt User Interface Compiler version 4.8.1
** **
** WARNING! All changes made in this file will be lost when recompiling UI file! ** WARNING! All changes made in this file will be lost when recompiling UI file!
@ -57,42 +57,42 @@ public:
CVisualInspectionPage->resize(1103, 710); CVisualInspectionPage->resize(1103, 710);
label = new QLabel(CVisualInspectionPage); label = new QLabel(CVisualInspectionPage);
label->setObjectName(QString::fromUtf8("label")); label->setObjectName(QString::fromUtf8("label"));
label->setGeometry(QRect(250, 10, 601, 81)); label->setGeometry(QRect(230, 10, 771, 101));
QFont font; QFont font;
font.setPointSize(14); font.setPointSize(14);
label->setFont(font); label->setFont(font);
label_2 = new QLabel(CVisualInspectionPage); label_2 = new QLabel(CVisualInspectionPage);
label_2->setObjectName(QString::fromUtf8("label_2")); label_2->setObjectName(QString::fromUtf8("label_2"));
label_2->setGeometry(QRect(380, 230, 261, 16)); label_2->setGeometry(QRect(380, 230, 411, 21));
QFont font1; label_2->setFont(font);
font1.setPointSize(12);
label_2->setFont(font1);
label_3 = new QLabel(CVisualInspectionPage); label_3 = new QLabel(CVisualInspectionPage);
label_3->setObjectName(QString::fromUtf8("label_3")); label_3->setObjectName(QString::fromUtf8("label_3"));
label_3->setGeometry(QRect(380, 280, 311, 16)); label_3->setGeometry(QRect(380, 280, 441, 31));
label_3->setFont(font1); label_3->setFont(font);
label_4 = new QLabel(CVisualInspectionPage); label_4 = new QLabel(CVisualInspectionPage);
label_4->setObjectName(QString::fromUtf8("label_4")); label_4->setObjectName(QString::fromUtf8("label_4"));
label_4->setGeometry(QRect(380, 330, 311, 16)); label_4->setGeometry(QRect(380, 330, 511, 21));
label_4->setFont(font1); label_4->setFont(font);
label_5 = new QLabel(CVisualInspectionPage); label_5 = new QLabel(CVisualInspectionPage);
label_5->setObjectName(QString::fromUtf8("label_5")); label_5->setObjectName(QString::fromUtf8("label_5"));
label_5->setGeometry(QRect(380, 380, 471, 16)); label_5->setGeometry(QRect(380, 380, 611, 21));
label_5->setFont(font1); label_5->setFont(font);
label_6 = new QLabel(CVisualInspectionPage); label_6 = new QLabel(CVisualInspectionPage);
label_6->setObjectName(QString::fromUtf8("label_6")); label_6->setObjectName(QString::fromUtf8("label_6"));
label_6->setGeometry(QRect(380, 430, 471, 16)); label_6->setGeometry(QRect(380, 430, 591, 21));
label_6->setFont(font1); label_6->setFont(font);
label_7 = new QLabel(CVisualInspectionPage); label_7 = new QLabel(CVisualInspectionPage);
label_7->setObjectName(QString::fromUtf8("label_7")); label_7->setObjectName(QString::fromUtf8("label_7"));
label_7->setGeometry(QRect(120, 140, 811, 20)); label_7->setGeometry(QRect(120, 140, 941, 20));
QFont font1;
font1.setPointSize(12);
label_7->setFont(font1); label_7->setFont(font1);
label_8 = new QLabel(CVisualInspectionPage); label_8 = new QLabel(CVisualInspectionPage);
label_8->setObjectName(QString::fromUtf8("label_8")); label_8->setObjectName(QString::fromUtf8("label_8"));
label_8->setGeometry(QRect(330, 200, 46, 13)); label_8->setGeometry(QRect(330, 200, 81, 16));
label_9 = new QLabel(CVisualInspectionPage); label_9 = new QLabel(CVisualInspectionPage);
label_9->setObjectName(QString::fromUtf8("label_9")); label_9->setObjectName(QString::fromUtf8("label_9"));
label_9->setGeometry(QRect(230, 200, 71, 16)); label_9->setGeometry(QRect(230, 200, 91, 16));
mVerif52DoneChkBx = new QCheckBox(CVisualInspectionPage); mVerif52DoneChkBx = new QCheckBox(CVisualInspectionPage);
mVerif52DoneChkBx->setObjectName(QString::fromUtf8("mVerif52DoneChkBx")); mVerif52DoneChkBx->setObjectName(QString::fromUtf8("mVerif52DoneChkBx"));
mVerif52DoneChkBx->setGeometry(QRect(340, 230, 21, 17)); mVerif52DoneChkBx->setGeometry(QRect(340, 230, 21, 17));
@ -136,16 +136,19 @@ public:
mOKBtn = new QPushButton(CVisualInspectionPage); mOKBtn = new QPushButton(CVisualInspectionPage);
mOKBtn->setObjectName(QString::fromUtf8("mOKBtn")); mOKBtn->setObjectName(QString::fromUtf8("mOKBtn"));
mOKBtn->setGeometry(QRect(110, 580, 75, 23)); mOKBtn->setGeometry(QRect(110, 580, 75, 23));
mOKBtn->setFont(font1);
mNotesTextEditBx = new QTextEdit(CVisualInspectionPage); mNotesTextEditBx = new QTextEdit(CVisualInspectionPage);
mNotesTextEditBx->setObjectName(QString::fromUtf8("mNotesTextEditBx")); mNotesTextEditBx->setObjectName(QString::fromUtf8("mNotesTextEditBx"));
mNotesTextEditBx->setGeometry(QRect(260, 530, 611, 141)); mNotesTextEditBx->setGeometry(QRect(260, 530, 611, 141));
mNotesTextEditBx->setFrameShadow(QFrame::Plain);
label_10 = new QLabel(CVisualInspectionPage); label_10 = new QLabel(CVisualInspectionPage);
label_10->setObjectName(QString::fromUtf8("label_10")); label_10->setObjectName(QString::fromUtf8("label_10"));
label_10->setGeometry(QRect(260, 500, 811, 20)); label_10->setGeometry(QRect(260, 500, 811, 20));
label_10->setFont(font1); label_10->setFont(font1);
mResetInspectionFormBtn = new QPushButton(CVisualInspectionPage); mResetInspectionFormBtn = new QPushButton(CVisualInspectionPage);
mResetInspectionFormBtn->setObjectName(QString::fromUtf8("mResetInspectionFormBtn")); mResetInspectionFormBtn->setObjectName(QString::fromUtf8("mResetInspectionFormBtn"));
mResetInspectionFormBtn->setGeometry(QRect(790, 260, 75, 23)); mResetInspectionFormBtn->setGeometry(QRect(790, 260, 121, 23));
mResetInspectionFormBtn->setFont(font1);
retranslateUi(CVisualInspectionPage); retranslateUi(CVisualInspectionPage);