##// END OF EJS Templates
waveform display added for the normal mode...
leroy -
r19:7f565009af54 default
parent child
Show More
@@ -1,142 +1,142
1 #############################################################################
1 #############################################################################
2 # Makefile for building: PAULs_LPPMON_PLUGINS
2 # Makefile for building: PAULs_LPPMON_PLUGINS
3 # Generated by qmake (2.01a) (Qt 4.8.4) on: Mon Apr 22 17:27:12 2013
3 # Generated by qmake (2.01a) (Qt 4.8.4) on: Thu Apr 25 14:28:34 2013
4 # Project: PAULs_LPPMON_PLUGINS.pro
4 # Project: PAULs_LPPMON_PLUGINS.pro
5 # Template: subdirs
5 # Template: subdirs
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile PAULs_LPPMON_PLUGINS.pro
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile PAULs_LPPMON_PLUGINS.pro
7 #############################################################################
7 #############################################################################
8
8
9 first: make_default
9 first: make_default
10 MAKEFILE = Makefile
10 MAKEFILE = Makefile
11 QMAKE = /usr/bin/qmake-qt4
11 QMAKE = /usr/bin/qmake-qt4
12 DEL_FILE = rm -f
12 DEL_FILE = rm -f
13 CHK_DIR_EXISTS= test -d
13 CHK_DIR_EXISTS= test -d
14 MKDIR = mkdir -p
14 MKDIR = mkdir -p
15 COPY = cp -f
15 COPY = cp -f
16 COPY_FILE = $(COPY)
16 COPY_FILE = $(COPY)
17 COPY_DIR = $(COPY) -r
17 COPY_DIR = $(COPY) -r
18 INSTALL_FILE = install -m 644 -p
18 INSTALL_FILE = install -m 644 -p
19 INSTALL_PROGRAM = install -m 755 -p
19 INSTALL_PROGRAM = install -m 755 -p
20 INSTALL_DIR = $(COPY_DIR)
20 INSTALL_DIR = $(COPY_DIR)
21 DEL_FILE = rm -f
21 DEL_FILE = rm -f
22 SYMLINK = ln -f -s
22 SYMLINK = ln -f -s
23 DEL_DIR = rmdir
23 DEL_DIR = rmdir
24 MOVE = mv -f
24 MOVE = mv -f
25 CHK_DIR_EXISTS= test -d
25 CHK_DIR_EXISTS= test -d
26 MKDIR = mkdir -p
26 MKDIR = mkdir -p
27 SUBTARGETS = \
27 SUBTARGETS = \
28 sub-rmapplugin
28 sub-rmapplugin
29
29
30 rmapplugin/$(MAKEFILE):
30 rmapplugin/$(MAKEFILE):
31 @$(CHK_DIR_EXISTS) rmapplugin/ || $(MKDIR) rmapplugin/
31 @$(CHK_DIR_EXISTS) rmapplugin/ || $(MKDIR) rmapplugin/
32 cd rmapplugin/ && $(QMAKE) /opt/LPPMON_PLUGINS_PAUL/rmapplugin/rmapplugin.pro -spec /usr/lib64/qt4/mkspecs/linux-g++ -o $(MAKEFILE)
32 cd rmapplugin/ && $(QMAKE) /opt/LPPMON_PLUGINS_PAUL/rmapplugin/rmapplugin.pro -spec /usr/lib64/qt4/mkspecs/linux-g++ -o $(MAKEFILE)
33 sub-rmapplugin-qmake_all: FORCE
33 sub-rmapplugin-qmake_all: FORCE
34 @$(CHK_DIR_EXISTS) rmapplugin/ || $(MKDIR) rmapplugin/
34 @$(CHK_DIR_EXISTS) rmapplugin/ || $(MKDIR) rmapplugin/
35 cd rmapplugin/ && $(QMAKE) /opt/LPPMON_PLUGINS_PAUL/rmapplugin/rmapplugin.pro -spec /usr/lib64/qt4/mkspecs/linux-g++ -o $(MAKEFILE)
35 cd rmapplugin/ && $(QMAKE) /opt/LPPMON_PLUGINS_PAUL/rmapplugin/rmapplugin.pro -spec /usr/lib64/qt4/mkspecs/linux-g++ -o $(MAKEFILE)
36 sub-rmapplugin: rmapplugin/$(MAKEFILE) FORCE
36 sub-rmapplugin: rmapplugin/$(MAKEFILE) FORCE
37 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE)
37 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE)
38 sub-rmapplugin-make_default-ordered: rmapplugin/$(MAKEFILE) FORCE
38 sub-rmapplugin-make_default-ordered: rmapplugin/$(MAKEFILE) FORCE
39 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE)
39 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE)
40 sub-rmapplugin-make_default: rmapplugin/$(MAKEFILE) FORCE
40 sub-rmapplugin-make_default: rmapplugin/$(MAKEFILE) FORCE
41 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE)
41 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE)
42 sub-rmapplugin-make_first-ordered: rmapplugin/$(MAKEFILE) FORCE
42 sub-rmapplugin-make_first-ordered: rmapplugin/$(MAKEFILE) FORCE
43 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) first
43 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) first
44 sub-rmapplugin-make_first: rmapplugin/$(MAKEFILE) FORCE
44 sub-rmapplugin-make_first: rmapplugin/$(MAKEFILE) FORCE
45 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) first
45 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) first
46 sub-rmapplugin-all-ordered: rmapplugin/$(MAKEFILE) FORCE
46 sub-rmapplugin-all-ordered: rmapplugin/$(MAKEFILE) FORCE
47 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) all
47 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) all
48 sub-rmapplugin-all: rmapplugin/$(MAKEFILE) FORCE
48 sub-rmapplugin-all: rmapplugin/$(MAKEFILE) FORCE
49 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) all
49 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) all
50 sub-rmapplugin-clean-ordered: rmapplugin/$(MAKEFILE) FORCE
50 sub-rmapplugin-clean-ordered: rmapplugin/$(MAKEFILE) FORCE
51 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) clean
51 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) clean
52 sub-rmapplugin-clean: rmapplugin/$(MAKEFILE) FORCE
52 sub-rmapplugin-clean: rmapplugin/$(MAKEFILE) FORCE
53 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) clean
53 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) clean
54 sub-rmapplugin-distclean-ordered: rmapplugin/$(MAKEFILE) FORCE
54 sub-rmapplugin-distclean-ordered: rmapplugin/$(MAKEFILE) FORCE
55 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) distclean
55 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) distclean
56 sub-rmapplugin-distclean: rmapplugin/$(MAKEFILE) FORCE
56 sub-rmapplugin-distclean: rmapplugin/$(MAKEFILE) FORCE
57 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) distclean
57 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) distclean
58 sub-rmapplugin-install_subtargets-ordered: rmapplugin/$(MAKEFILE) FORCE
58 sub-rmapplugin-install_subtargets-ordered: rmapplugin/$(MAKEFILE) FORCE
59 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) install
59 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) install
60 sub-rmapplugin-install_subtargets: rmapplugin/$(MAKEFILE) FORCE
60 sub-rmapplugin-install_subtargets: rmapplugin/$(MAKEFILE) FORCE
61 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) install
61 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) install
62 sub-rmapplugin-uninstall_subtargets-ordered: rmapplugin/$(MAKEFILE) FORCE
62 sub-rmapplugin-uninstall_subtargets-ordered: rmapplugin/$(MAKEFILE) FORCE
63 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) uninstall
63 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) uninstall
64 sub-rmapplugin-uninstall_subtargets: rmapplugin/$(MAKEFILE) FORCE
64 sub-rmapplugin-uninstall_subtargets: rmapplugin/$(MAKEFILE) FORCE
65 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) uninstall
65 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) uninstall
66
66
67 Makefile: PAULs_LPPMON_PLUGINS.pro /usr/lib64/qt4/mkspecs/linux-g++/qmake.conf /usr/lib64/qt4/mkspecs/common/unix.conf \
67 Makefile: PAULs_LPPMON_PLUGINS.pro /usr/lib64/qt4/mkspecs/linux-g++/qmake.conf /usr/lib64/qt4/mkspecs/common/unix.conf \
68 /usr/lib64/qt4/mkspecs/common/linux.conf \
68 /usr/lib64/qt4/mkspecs/common/linux.conf \
69 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
69 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
70 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
70 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
71 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
71 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
72 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
72 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
73 /usr/lib64/qt4/mkspecs/qconfig.pri \
73 /usr/lib64/qt4/mkspecs/qconfig.pri \
74 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri \
74 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri \
75 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
75 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
76 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
76 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
77 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
77 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
78 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
78 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
79 /usr/lib64/qt4/mkspecs/features/release.prf \
79 /usr/lib64/qt4/mkspecs/features/release.prf \
80 /usr/lib64/qt4/mkspecs/features/default_post.prf \
80 /usr/lib64/qt4/mkspecs/features/default_post.prf \
81 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
81 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
82 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
82 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
83 /usr/lib64/qt4/mkspecs/features/qt.prf \
83 /usr/lib64/qt4/mkspecs/features/qt.prf \
84 /usr/lib64/qt4/mkspecs/features/unix/thread.prf \
84 /usr/lib64/qt4/mkspecs/features/unix/thread.prf \
85 /usr/lib64/qt4/mkspecs/features/moc.prf \
85 /usr/lib64/qt4/mkspecs/features/moc.prf \
86 /usr/lib64/qt4/mkspecs/features/resources.prf \
86 /usr/lib64/qt4/mkspecs/features/resources.prf \
87 /usr/lib64/qt4/mkspecs/features/uic.prf \
87 /usr/lib64/qt4/mkspecs/features/uic.prf \
88 /usr/lib64/qt4/mkspecs/features/yacc.prf \
88 /usr/lib64/qt4/mkspecs/features/yacc.prf \
89 /usr/lib64/qt4/mkspecs/features/lex.prf \
89 /usr/lib64/qt4/mkspecs/features/lex.prf \
90 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf
90 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf
91 $(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile PAULs_LPPMON_PLUGINS.pro
91 $(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile PAULs_LPPMON_PLUGINS.pro
92 /usr/lib64/qt4/mkspecs/common/unix.conf:
92 /usr/lib64/qt4/mkspecs/common/unix.conf:
93 /usr/lib64/qt4/mkspecs/common/linux.conf:
93 /usr/lib64/qt4/mkspecs/common/linux.conf:
94 /usr/lib64/qt4/mkspecs/common/gcc-base.conf:
94 /usr/lib64/qt4/mkspecs/common/gcc-base.conf:
95 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf:
95 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf:
96 /usr/lib64/qt4/mkspecs/common/g++-base.conf:
96 /usr/lib64/qt4/mkspecs/common/g++-base.conf:
97 /usr/lib64/qt4/mkspecs/common/g++-unix.conf:
97 /usr/lib64/qt4/mkspecs/common/g++-unix.conf:
98 /usr/lib64/qt4/mkspecs/qconfig.pri:
98 /usr/lib64/qt4/mkspecs/qconfig.pri:
99 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri:
99 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri:
100 /usr/lib64/qt4/mkspecs/features/qt_functions.prf:
100 /usr/lib64/qt4/mkspecs/features/qt_functions.prf:
101 /usr/lib64/qt4/mkspecs/features/qt_config.prf:
101 /usr/lib64/qt4/mkspecs/features/qt_config.prf:
102 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf:
102 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf:
103 /usr/lib64/qt4/mkspecs/features/default_pre.prf:
103 /usr/lib64/qt4/mkspecs/features/default_pre.prf:
104 /usr/lib64/qt4/mkspecs/features/release.prf:
104 /usr/lib64/qt4/mkspecs/features/release.prf:
105 /usr/lib64/qt4/mkspecs/features/default_post.prf:
105 /usr/lib64/qt4/mkspecs/features/default_post.prf:
106 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf:
106 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf:
107 /usr/lib64/qt4/mkspecs/features/warn_on.prf:
107 /usr/lib64/qt4/mkspecs/features/warn_on.prf:
108 /usr/lib64/qt4/mkspecs/features/qt.prf:
108 /usr/lib64/qt4/mkspecs/features/qt.prf:
109 /usr/lib64/qt4/mkspecs/features/unix/thread.prf:
109 /usr/lib64/qt4/mkspecs/features/unix/thread.prf:
110 /usr/lib64/qt4/mkspecs/features/moc.prf:
110 /usr/lib64/qt4/mkspecs/features/moc.prf:
111 /usr/lib64/qt4/mkspecs/features/resources.prf:
111 /usr/lib64/qt4/mkspecs/features/resources.prf:
112 /usr/lib64/qt4/mkspecs/features/uic.prf:
112 /usr/lib64/qt4/mkspecs/features/uic.prf:
113 /usr/lib64/qt4/mkspecs/features/yacc.prf:
113 /usr/lib64/qt4/mkspecs/features/yacc.prf:
114 /usr/lib64/qt4/mkspecs/features/lex.prf:
114 /usr/lib64/qt4/mkspecs/features/lex.prf:
115 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf:
115 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf:
116 qmake: qmake_all FORCE
116 qmake: qmake_all FORCE
117 @$(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile PAULs_LPPMON_PLUGINS.pro
117 @$(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile PAULs_LPPMON_PLUGINS.pro
118
118
119 qmake_all: sub-rmapplugin-qmake_all FORCE
119 qmake_all: sub-rmapplugin-qmake_all FORCE
120
120
121 make_default: sub-rmapplugin-make_default-ordered FORCE
121 make_default: sub-rmapplugin-make_default-ordered FORCE
122 make_first: sub-rmapplugin-make_first-ordered FORCE
122 make_first: sub-rmapplugin-make_first-ordered FORCE
123 all: sub-rmapplugin-all-ordered FORCE
123 all: sub-rmapplugin-all-ordered FORCE
124 clean: sub-rmapplugin-clean-ordered FORCE
124 clean: sub-rmapplugin-clean-ordered FORCE
125 distclean: sub-rmapplugin-distclean-ordered FORCE
125 distclean: sub-rmapplugin-distclean-ordered FORCE
126 -$(DEL_FILE) Makefile
126 -$(DEL_FILE) Makefile
127 install_subtargets: sub-rmapplugin-install_subtargets-ordered FORCE
127 install_subtargets: sub-rmapplugin-install_subtargets-ordered FORCE
128 uninstall_subtargets: sub-rmapplugin-uninstall_subtargets-ordered FORCE
128 uninstall_subtargets: sub-rmapplugin-uninstall_subtargets-ordered FORCE
129
129
130 sub-rmapplugin-check_ordered: rmapplugin/$(MAKEFILE)
130 sub-rmapplugin-check_ordered: rmapplugin/$(MAKEFILE)
131 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) check
131 cd rmapplugin/ && $(MAKE) -f $(MAKEFILE) check
132 check: sub-rmapplugin-check_ordered
132 check: sub-rmapplugin-check_ordered
133
133
134 mocclean: compiler_moc_header_clean compiler_moc_source_clean
134 mocclean: compiler_moc_header_clean compiler_moc_source_clean
135
135
136 mocables: compiler_moc_header_make_all compiler_moc_source_make_all
136 mocables: compiler_moc_header_make_all compiler_moc_source_make_all
137 install: install_subtargets FORCE
137 install: install_subtargets FORCE
138
138
139 uninstall: uninstall_subtargets FORCE
139 uninstall: uninstall_subtargets FORCE
140
140
141 FORCE:
141 FORCE:
142
142
@@ -1,342 +1,342
1 <?xml version="1.0" encoding="UTF-8"?>
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE QtCreatorProject>
2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by Qt Creator 2.4.1, 2013-04-23T11:06:46. -->
3 <!-- Written by Qt Creator 2.4.1, 2013-04-26T15:28:06. -->
4 <qtcreator>
4 <qtcreator>
5 <data>
5 <data>
6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
7 <value type="int">0</value>
7 <value type="int">0</value>
8 </data>
8 </data>
9 <data>
9 <data>
10 <variable>ProjectExplorer.Project.EditorSettings</variable>
10 <variable>ProjectExplorer.Project.EditorSettings</variable>
11 <valuemap type="QVariantMap">
11 <valuemap type="QVariantMap">
12 <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
12 <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
13 <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
13 <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
14 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
14 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
15 <value type="QString" key="language">Cpp</value>
15 <value type="QString" key="language">Cpp</value>
16 <valuemap type="QVariantMap" key="value">
16 <valuemap type="QVariantMap" key="value">
17 <value type="QString" key="CurrentPreferences">CppGlobal</value>
17 <value type="QString" key="CurrentPreferences">CppGlobal</value>
18 </valuemap>
18 </valuemap>
19 </valuemap>
19 </valuemap>
20 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
20 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
21 <value type="QString" key="language">QmlJS</value>
21 <value type="QString" key="language">QmlJS</value>
22 <valuemap type="QVariantMap" key="value">
22 <valuemap type="QVariantMap" key="value">
23 <value type="QString" key="CurrentPreferences">QmlJSGlobal</value>
23 <value type="QString" key="CurrentPreferences">QmlJSGlobal</value>
24 </valuemap>
24 </valuemap>
25 </valuemap>
25 </valuemap>
26 <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
26 <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
27 <value type="QByteArray" key="EditorConfiguration.Codec">System</value>
27 <value type="QByteArray" key="EditorConfiguration.Codec">System</value>
28 <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
28 <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
29 <value type="int" key="EditorConfiguration.IndentSize">4</value>
29 <value type="int" key="EditorConfiguration.IndentSize">4</value>
30 <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
30 <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
31 <value type="int" key="EditorConfiguration.PaddingMode">1</value>
31 <value type="int" key="EditorConfiguration.PaddingMode">1</value>
32 <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
32 <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
33 <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
33 <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
34 <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
34 <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
35 <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
35 <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
36 <value type="int" key="EditorConfiguration.TabSize">8</value>
36 <value type="int" key="EditorConfiguration.TabSize">8</value>
37 <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
37 <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
38 <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
38 <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
39 <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
39 <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
40 <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
40 <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
41 <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
41 <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
42 <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
42 <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
43 </valuemap>
43 </valuemap>
44 </data>
44 </data>
45 <data>
45 <data>
46 <variable>ProjectExplorer.Project.PluginSettings</variable>
46 <variable>ProjectExplorer.Project.PluginSettings</variable>
47 <valuemap type="QVariantMap"/>
47 <valuemap type="QVariantMap"/>
48 </data>
48 </data>
49 <data>
49 <data>
50 <variable>ProjectExplorer.Project.Target.0</variable>
50 <variable>ProjectExplorer.Project.Target.0</variable>
51 <valuemap type="QVariantMap">
51 <valuemap type="QVariantMap">
52 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
52 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
53 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
53 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value>
54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value>
55 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
55 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
56 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
56 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
57 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
57 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
58 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
58 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
59 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
59 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
60 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
60 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
61 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
61 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
62 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
62 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
63 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
63 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
64 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
64 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
65 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
65 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
66 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
66 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
67 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
67 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
68 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
68 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
69 </valuemap>
69 </valuemap>
70 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
70 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
71 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
71 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
72 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
72 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
73 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
73 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
74 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
74 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
75 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
75 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
76 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
76 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
77 </valuemap>
77 </valuemap>
78 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
78 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
79 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
79 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
80 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
80 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
81 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
81 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
82 </valuemap>
82 </valuemap>
83 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
83 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
84 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
84 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
85 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
85 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
86 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
86 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
87 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
87 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
88 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
88 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
89 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
89 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
90 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
90 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
91 </valuemap>
91 </valuemap>
92 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
92 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
93 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
93 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
94 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
94 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
95 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
95 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
96 </valuemap>
96 </valuemap>
97 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
97 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
98 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
98 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
99 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
99 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
100 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value>
100 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value>
101 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
101 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
102 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
102 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
103 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
103 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
104 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL</value>
104 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL</value>
105 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
105 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
106 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
106 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
107 </valuemap>
107 </valuemap>
108 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
108 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
109 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
109 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
110 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
110 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
111 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
111 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
112 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
112 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
113 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
113 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
114 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
114 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
115 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
115 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
116 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
116 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
117 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
117 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
118 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
118 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
119 </valuemap>
119 </valuemap>
120 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
120 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
121 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
121 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
122 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
122 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
123 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
123 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
124 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
124 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
125 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
125 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
126 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
126 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
127 </valuemap>
127 </valuemap>
128 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
128 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
129 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
129 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
130 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
130 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
131 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
131 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
132 </valuemap>
132 </valuemap>
133 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
133 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
134 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
134 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
135 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
135 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
136 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
136 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
137 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
137 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
138 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
138 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
139 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
139 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
140 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
140 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
141 </valuemap>
141 </valuemap>
142 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
142 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
143 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
143 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
144 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
144 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
145 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
145 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
146 </valuemap>
146 </valuemap>
147 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
147 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
148 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
148 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
149 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
149 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
150 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value>
150 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value>
151 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
151 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
152 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
152 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
153 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
153 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
154 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL</value>
154 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL</value>
155 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
155 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
156 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
156 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
157 </valuemap>
157 </valuemap>
158 <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
158 <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
159 <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
159 <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
160 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
160 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
161 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
161 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
162 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
162 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
163 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
163 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
164 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
164 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
165 </valuemap>
165 </valuemap>
166 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
166 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
167 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value>
167 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value>
168 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
168 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
169 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
169 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
170 </valuemap>
170 </valuemap>
171 <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
171 <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
172 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
172 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
173 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
173 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
174 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
174 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
175 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
175 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
176 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
176 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
177 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
177 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
178 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
178 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
179 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
179 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
180 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
180 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
181 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
181 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
182 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
182 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
183 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
183 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
184 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
184 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
185 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
185 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
186 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
186 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
187 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
187 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
188 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
188 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
189 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
189 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
190 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
190 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
191 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
191 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
192 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
192 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
193 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
193 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
194 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
194 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
195 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
195 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
196 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
196 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
197 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
197 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
198 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
198 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
199 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
199 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
200 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
200 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
201 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
201 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
202 <value type="int">0</value>
202 <value type="int">0</value>
203 <value type="int">1</value>
203 <value type="int">1</value>
204 <value type="int">2</value>
204 <value type="int">2</value>
205 <value type="int">3</value>
205 <value type="int">3</value>
206 <value type="int">4</value>
206 <value type="int">4</value>
207 <value type="int">5</value>
207 <value type="int">5</value>
208 <value type="int">6</value>
208 <value type="int">6</value>
209 <value type="int">7</value>
209 <value type="int">7</value>
210 <value type="int">8</value>
210 <value type="int">8</value>
211 <value type="int">9</value>
211 <value type="int">9</value>
212 <value type="int">10</value>
212 <value type="int">10</value>
213 <value type="int">11</value>
213 <value type="int">11</value>
214 <value type="int">12</value>
214 <value type="int">12</value>
215 <value type="int">13</value>
215 <value type="int">13</value>
216 <value type="int">14</value>
216 <value type="int">14</value>
217 </valuelist>
217 </valuelist>
218 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
218 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
219 <value type="int">0</value>
219 <value type="int">0</value>
220 <value type="int">1</value>
220 <value type="int">1</value>
221 <value type="int">2</value>
221 <value type="int">2</value>
222 <value type="int">3</value>
222 <value type="int">3</value>
223 <value type="int">4</value>
223 <value type="int">4</value>
224 <value type="int">5</value>
224 <value type="int">5</value>
225 <value type="int">6</value>
225 <value type="int">6</value>
226 <value type="int">7</value>
226 <value type="int">7</value>
227 <value type="int">8</value>
227 <value type="int">8</value>
228 <value type="int">9</value>
228 <value type="int">9</value>
229 <value type="int">10</value>
229 <value type="int">10</value>
230 <value type="int">11</value>
230 <value type="int">11</value>
231 <value type="int">12</value>
231 <value type="int">12</value>
232 <value type="int">13</value>
232 <value type="int">13</value>
233 <value type="int">14</value>
233 <value type="int">14</value>
234 </valuelist>
234 </valuelist>
235 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
235 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
236 <value type="int" key="ProjectExplorer.CustomExecutableRunConfiguration.BaseEnvironmentBase">2</value>
236 <value type="int" key="ProjectExplorer.CustomExecutableRunConfiguration.BaseEnvironmentBase">2</value>
237 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable">lppmon</value>
237 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable">lppmon</value>
238 <value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
238 <value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
239 <valuelist type="QVariantList" key="ProjectExplorer.CustomExecutableRunConfiguration.UserEnvironmentChanges"/>
239 <valuelist type="QVariantList" key="ProjectExplorer.CustomExecutableRunConfiguration.UserEnvironmentChanges"/>
240 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
240 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
241 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Run lppmon</value>
241 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Run lppmon</value>
242 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
242 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
243 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
243 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
244 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
244 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
245 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
245 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
246 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
246 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
247 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value>
247 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value>
248 </valuemap>
248 </valuemap>
249 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.1">
249 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.1">
250 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
250 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
251 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
251 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
252 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
252 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
253 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
253 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
254 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
254 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
255 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
255 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
256 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
256 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
257 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
257 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
258 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
258 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
259 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
259 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
260 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
260 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
261 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
261 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
262 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
262 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
263 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
263 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
264 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
264 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
265 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
265 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
266 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
266 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
267 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
267 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
268 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
268 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
269 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
269 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
270 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
270 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
271 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
271 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
272 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
272 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
273 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
273 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
274 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
274 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
275 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
275 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
276 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
276 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
277 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
277 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
278 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
278 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
279 <value type="int">0</value>
279 <value type="int">0</value>
280 <value type="int">1</value>
280 <value type="int">1</value>
281 <value type="int">2</value>
281 <value type="int">2</value>
282 <value type="int">3</value>
282 <value type="int">3</value>
283 <value type="int">4</value>
283 <value type="int">4</value>
284 <value type="int">5</value>
284 <value type="int">5</value>
285 <value type="int">6</value>
285 <value type="int">6</value>
286 <value type="int">7</value>
286 <value type="int">7</value>
287 <value type="int">8</value>
287 <value type="int">8</value>
288 <value type="int">9</value>
288 <value type="int">9</value>
289 <value type="int">10</value>
289 <value type="int">10</value>
290 <value type="int">11</value>
290 <value type="int">11</value>
291 <value type="int">12</value>
291 <value type="int">12</value>
292 <value type="int">13</value>
292 <value type="int">13</value>
293 <value type="int">14</value>
293 <value type="int">14</value>
294 </valuelist>
294 </valuelist>
295 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
295 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
296 <value type="int">0</value>
296 <value type="int">0</value>
297 <value type="int">1</value>
297 <value type="int">1</value>
298 <value type="int">2</value>
298 <value type="int">2</value>
299 <value type="int">3</value>
299 <value type="int">3</value>
300 <value type="int">4</value>
300 <value type="int">4</value>
301 <value type="int">5</value>
301 <value type="int">5</value>
302 <value type="int">6</value>
302 <value type="int">6</value>
303 <value type="int">7</value>
303 <value type="int">7</value>
304 <value type="int">8</value>
304 <value type="int">8</value>
305 <value type="int">9</value>
305 <value type="int">9</value>
306 <value type="int">10</value>
306 <value type="int">10</value>
307 <value type="int">11</value>
307 <value type="int">11</value>
308 <value type="int">12</value>
308 <value type="int">12</value>
309 <value type="int">13</value>
309 <value type="int">13</value>
310 <value type="int">14</value>
310 <value type="int">14</value>
311 </valuelist>
311 </valuelist>
312 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">spwtimegenerator</value>
312 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">spwtimegenerator</value>
313 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
313 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
314 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration</value>
314 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration</value>
315 <value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value>
315 <value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value>
316 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
316 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
317 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">spwtimegenerator/spwtimegenerator/spwtimegenerator.pro</value>
317 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">spwtimegenerator/spwtimegenerator/spwtimegenerator.pro</value>
318 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
318 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
319 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
319 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
320 <valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/>
320 <valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/>
321 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
321 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
322 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
322 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
323 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
323 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
324 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
324 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
325 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
325 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
326 </valuemap>
326 </valuemap>
327 <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">2</value>
327 <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">2</value>
328 </valuemap>
328 </valuemap>
329 </data>
329 </data>
330 <data>
330 <data>
331 <variable>ProjectExplorer.Project.TargetCount</variable>
331 <variable>ProjectExplorer.Project.TargetCount</variable>
332 <value type="int">1</value>
332 <value type="int">1</value>
333 </data>
333 </data>
334 <data>
334 <data>
335 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
335 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
336 <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value>
336 <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value>
337 </data>
337 </data>
338 <data>
338 <data>
339 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
339 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
340 <value type="int">10</value>
340 <value type="int">10</value>
341 </data>
341 </data>
342 </qtcreator>
342 </qtcreator>
@@ -1,486 +1,554
1 #############################################################################
1 #############################################################################
2 # Makefile for building: librmapplugin.so.1.0.0
2 # Makefile for building: librmapplugin.so.1.0.0
3 # Generated by qmake (2.01a) (Qt 4.8.4) on: Mon Apr 22 17:27:12 2013
3 # Generated by qmake (2.01a) (Qt 4.8.4) on: Fri Apr 26 08:31:53 2013
4 # Project: rmapplugin.pro
4 # Project: rmapplugin.pro
5 # Template: lib
5 # Template: lib
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile rmapplugin.pro
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile rmapplugin.pro
7 #############################################################################
7 #############################################################################
8
8
9 ####### Compiler, tools and options
9 ####### Compiler, tools and options
10
10
11 CC = gcc
11 CC = gcc
12 CXX = g++
12 CXX = g++
13 DEFINES = -DPLUGIN=rmapplugin -DPLUGINHEADER="\"rmapplugin.h\"" -Ddriver_Name="\"RMAPPlugin\"" -Ddriver_Author="\"Paul Leroy paul.leroy@lpp.polytechnique.fr\"" -Ddriver_Version="\"1.1.2\"" -Ddriver_Description="\"AHB bus controler, works with Gaisler's AHB plugn' play bus.\"" -Ddriver_can_be_root=1 -Ddriver_can_be_child=0 -Ddriver_VID=0 -Ddriver_PID=0 -DLPPMON_VERSION="\"0.0.1\"" -DUNIXTRANSLATIONPATH -DLPPMON_PLUGINS_INSTALL_PATH="QDir::homePath()+\"/.lppmon/plugins\"" -DLPPMON_CONFIG_PATH="QDir::homePath()+\"/.lppmon/config\"" -DLPPMON_TRANSLATION_PATH="\"/etc/lppmon/translations\"" -DLPPMONPLUGIN_LIBRARY -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED
13 DEFINES = -DPLUGIN=rmapplugin -DPLUGINHEADER="\"rmapplugin.h\"" -Ddriver_Name="\"RMAPPlugin\"" -Ddriver_Author="\"Paul Leroy paul.leroy@lpp.polytechnique.fr\"" -Ddriver_Version="\"1.1.2\"" -Ddriver_Description="\"AHB bus controler, works with Gaisler's AHB plugn' play bus.\"" -Ddriver_can_be_root=1 -Ddriver_can_be_child=0 -Ddriver_VID=0 -Ddriver_PID=0 -DLPPMON_VERSION="\"0.0.1\"" -DUNIXTRANSLATIONPATH -DLPPMON_PLUGINS_INSTALL_PATH="QDir::homePath()+\"/.lppmon/plugins\"" -DLPPMON_CONFIG_PATH="QDir::homePath()+\"/.lppmon/config\"" -DLPPMON_TRANSLATION_PATH="\"/etc/lppmon/translations\"" -DLPPMONPLUGIN_LIBRARY -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED
14 CFLAGS = -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
14 CFLAGS = -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
15 CXXFLAGS = -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 -I/usr/include/python2.7 -I/usr/include/python2.7 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
15 CXXFLAGS = -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -O2 -I/usr/include/python2.7 -I/usr/include/python2.7 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
16 INCPATH = -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -I../common_PLE -I../spw_usb_driver_v2.63/inc -I/usr/include/lppmon/common -I/usr/include/lppmon -I/usr/include/lppmon/pluginsInterface -I/usr/include/PythonQt -Imoc
16 INCPATH = -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtNetwork -I/usr/include/QtGui -I/usr/include/QtXml -I/usr/include -I. -I../common_PLE -I../spw_usb_driver_v2.63/inc -I/usr/include/lppmon/common -I/usr/include/lppmon -I/usr/include/lppmon/pluginsInterface -I/usr/include/PythonQt -Imoc
17 LINK = g++
17 LINK = g++
18 LFLAGS = -Wl,-O1 -Wl,-z,relro -shared -Wl,-soname,librmapplugin.so.1
18 LFLAGS = -Wl,-O1 -Wl,-z,relro -shared -Wl,-soname,librmapplugin.so.1
19 LIBS = $(SUBLIBS) -L/usr/lib64 ../spw_usb_driver_v2.63/lib/x86_64/libSpaceWireUSBAPI.so ../spw_usb_driver_v2.63/lib/x86_64/libConfigLibraryUSB.so -ldl -lutil -lm -lpython2.7 -lPythonQt_QtAll -lPythonQt -lQtXml -lQtGui -lQtNetwork -lQtCore -lpthread
19 LIBS = $(SUBLIBS) -L/usr/lib64 ../spw_usb_driver_v2.63/lib/x86_64/libSpaceWireUSBAPI.so ../spw_usb_driver_v2.63/lib/x86_64/libConfigLibraryUSB.so -ldl -lutil -lm -lpython2.7 -lPythonQt_QtAll -lPythonQt -lQtXml -lQtGui -lQtNetwork -lQtCore -lpthread
20 AR = ar cqs
20 AR = ar cqs
21 RANLIB =
21 RANLIB =
22 QMAKE = /usr/bin/qmake-qt4
22 QMAKE = /usr/bin/qmake-qt4
23 TAR = tar -cf
23 TAR = tar -cf
24 COMPRESS = gzip -9f
24 COMPRESS = gzip -9f
25 COPY = cp -f
25 COPY = cp -f
26 SED = sed
26 SED = sed
27 COPY_FILE = $(COPY)
27 COPY_FILE = $(COPY)
28 COPY_DIR = $(COPY) -r
28 COPY_DIR = $(COPY) -r
29 STRIP =
29 STRIP =
30 INSTALL_FILE = install -m 644 -p
30 INSTALL_FILE = install -m 644 -p
31 INSTALL_DIR = $(COPY_DIR)
31 INSTALL_DIR = $(COPY_DIR)
32 INSTALL_PROGRAM = install -m 755 -p
32 INSTALL_PROGRAM = install -m 755 -p
33 DEL_FILE = rm -f
33 DEL_FILE = rm -f
34 SYMLINK = ln -f -s
34 SYMLINK = ln -f -s
35 DEL_DIR = rmdir
35 DEL_DIR = rmdir
36 MOVE = mv -f
36 MOVE = mv -f
37 CHK_DIR_EXISTS= test -d
37 CHK_DIR_EXISTS= test -d
38 MKDIR = mkdir -p
38 MKDIR = mkdir -p
39
39
40 ####### Output directory
40 ####### Output directory
41
41
42 OBJECTS_DIR = obj/
42 OBJECTS_DIR = obj/
43
43
44 ####### Files
44 ####### Files
45
45
46 SOURCES = rmapplugin.cpp \
46 SOURCES = rmapplugin.cpp \
47 rmappluginui.cpp \
47 rmappluginui.cpp \
48 rmapoperations.cpp \
48 rmapoperations.cpp \
49 ccsds.cpp \
49 ccsds.cpp \
50 ../common_PLE/qipdialogbox.cpp \
50 ../common_PLE/qipdialogbox.cpp \
51 ../common_PLE/gresbstatusenquiry.cpp \
51 ../common_PLE/gresbstatusenquiry.cpp \
52 spectralmatricesdmasimulator.cpp \
53 rmappluginpythonwrapper.cpp \
52 rmappluginpythonwrapper.cpp \
54 stardundee.cpp \
53 stardundee.cpp \
55 gresb.cpp \
54 gresb.cpp \
56 tcpackettosend.cpp \
55 tcpackettosend.cpp \
57 tmpackettoread.cpp \
56 tmpackettoread.cpp \
58 wfdisplay.cpp \
57 wfdisplay.cpp \
58 tmstatistics.cpp \
59 wfplot.cpp \
60 wfpage.cpp \
61 wfpacket.cpp \
59 /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp moc/moc_rmappluginui.cpp \
62 /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp moc/moc_rmappluginui.cpp \
60 moc/moc_rmapplugin.cpp \
63 moc/moc_rmapplugin.cpp \
61 moc/moc_qipdialogbox.cpp \
64 moc/moc_qipdialogbox.cpp \
62 moc/moc_gresbstatusenquiry.cpp \
65 moc/moc_gresbstatusenquiry.cpp \
63 moc/moc_spectralmatricesdmasimulator.cpp \
64 moc/moc_rmappluginpythonwrapper.cpp \
66 moc/moc_rmappluginpythonwrapper.cpp \
65 moc/moc_stardundee.cpp \
67 moc/moc_stardundee.cpp \
66 moc/moc_gresb.cpp \
68 moc/moc_gresb.cpp \
67 moc/moc_tcpackettosend.cpp \
69 moc/moc_tcpackettosend.cpp \
68 moc/moc_tmpackettoread.cpp \
70 moc/moc_tmpackettoread.cpp \
69 moc/moc_wfdisplay.cpp \
71 moc/moc_wfdisplay.cpp \
72 moc/moc_tmstatistics.cpp \
73 moc/moc_wfplot.cpp \
74 moc/moc_wfpage.cpp \
75 moc/moc_wfpacket.cpp \
70 moc/moc_genericPySysdriver.cpp \
76 moc/moc_genericPySysdriver.cpp \
71 moc/moc_lppmonplugin.cpp
77 moc/moc_lppmonplugin.cpp
72 OBJECTS = obj/rmapplugin.o \
78 OBJECTS = obj/rmapplugin.o \
73 obj/rmappluginui.o \
79 obj/rmappluginui.o \
74 obj/rmapoperations.o \
80 obj/rmapoperations.o \
75 obj/ccsds.o \
81 obj/ccsds.o \
76 obj/qipdialogbox.o \
82 obj/qipdialogbox.o \
77 obj/gresbstatusenquiry.o \
83 obj/gresbstatusenquiry.o \
78 obj/spectralmatricesdmasimulator.o \
79 obj/rmappluginpythonwrapper.o \
84 obj/rmappluginpythonwrapper.o \
80 obj/stardundee.o \
85 obj/stardundee.o \
81 obj/gresb.o \
86 obj/gresb.o \
82 obj/tcpackettosend.o \
87 obj/tcpackettosend.o \
83 obj/tmpackettoread.o \
88 obj/tmpackettoread.o \
84 obj/wfdisplay.o \
89 obj/wfdisplay.o \
90 obj/tmstatistics.o \
91 obj/wfplot.o \
92 obj/wfpage.o \
93 obj/wfpacket.o \
85 obj/lppmonplugininterface.o \
94 obj/lppmonplugininterface.o \
86 obj/moc_rmappluginui.o \
95 obj/moc_rmappluginui.o \
87 obj/moc_rmapplugin.o \
96 obj/moc_rmapplugin.o \
88 obj/moc_qipdialogbox.o \
97 obj/moc_qipdialogbox.o \
89 obj/moc_gresbstatusenquiry.o \
98 obj/moc_gresbstatusenquiry.o \
90 obj/moc_spectralmatricesdmasimulator.o \
91 obj/moc_rmappluginpythonwrapper.o \
99 obj/moc_rmappluginpythonwrapper.o \
92 obj/moc_stardundee.o \
100 obj/moc_stardundee.o \
93 obj/moc_gresb.o \
101 obj/moc_gresb.o \
94 obj/moc_tcpackettosend.o \
102 obj/moc_tcpackettosend.o \
95 obj/moc_tmpackettoread.o \
103 obj/moc_tmpackettoread.o \
96 obj/moc_wfdisplay.o \
104 obj/moc_wfdisplay.o \
105 obj/moc_tmstatistics.o \
106 obj/moc_wfplot.o \
107 obj/moc_wfpage.o \
108 obj/moc_wfpacket.o \
97 obj/moc_genericPySysdriver.o \
109 obj/moc_genericPySysdriver.o \
98 obj/moc_lppmonplugin.o
110 obj/moc_lppmonplugin.o
99 DIST = /usr/lib64/qt4/mkspecs/common/unix.conf \
111 DIST = /usr/lib64/qt4/mkspecs/common/unix.conf \
100 /usr/lib64/qt4/mkspecs/common/linux.conf \
112 /usr/lib64/qt4/mkspecs/common/linux.conf \
101 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
113 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
102 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
114 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
103 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
115 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
104 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
116 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
105 /usr/lib64/qt4/mkspecs/qconfig.pri \
117 /usr/lib64/qt4/mkspecs/qconfig.pri \
106 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri \
118 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri \
107 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
119 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
108 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
120 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
109 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
121 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
110 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
122 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
111 /usr/lib64/qt4/mkspecs/features/release.prf \
123 /usr/lib64/qt4/mkspecs/features/release.prf \
112 /usr/lib64/qt4/mkspecs/features/default_post.prf \
124 /usr/lib64/qt4/mkspecs/features/default_post.prf \
113 /usr/lib64/qt4/mkspecs/features/lppmonplugin.prf \
125 /usr/lib64/qt4/mkspecs/features/lppmonplugin.prf \
114 /usr/lib64/qt4/mkspecs/features/pythonqt.prf \
126 /usr/lib64/qt4/mkspecs/features/pythonqt.prf \
115 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
127 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
116 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
128 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
117 /usr/lib64/qt4/mkspecs/features/qt.prf \
129 /usr/lib64/qt4/mkspecs/features/qt.prf \
118 /usr/lib64/qt4/mkspecs/features/unix/thread.prf \
130 /usr/lib64/qt4/mkspecs/features/unix/thread.prf \
119 /usr/lib64/qt4/mkspecs/features/moc.prf \
131 /usr/lib64/qt4/mkspecs/features/moc.prf \
120 /usr/lib64/qt4/mkspecs/features/resources.prf \
132 /usr/lib64/qt4/mkspecs/features/resources.prf \
121 /usr/lib64/qt4/mkspecs/features/uic.prf \
133 /usr/lib64/qt4/mkspecs/features/uic.prf \
122 /usr/lib64/qt4/mkspecs/features/yacc.prf \
134 /usr/lib64/qt4/mkspecs/features/yacc.prf \
123 /usr/lib64/qt4/mkspecs/features/lex.prf \
135 /usr/lib64/qt4/mkspecs/features/lex.prf \
124 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf \
136 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf \
125 rmapplugin.pro
137 rmapplugin.pro
126 QMAKE_TARGET = rmapplugin
138 QMAKE_TARGET = rmapplugin
127 DESTDIR = bin/
139 DESTDIR = bin/
128 TARGET = librmapplugin.so.1.0.0
140 TARGET = librmapplugin.so.1.0.0
129 TARGETA = bin/librmapplugin.a
141 TARGETA = bin/librmapplugin.a
130 TARGETD = librmapplugin.so.1.0.0
142 TARGETD = librmapplugin.so.1.0.0
131 TARGET0 = librmapplugin.so
143 TARGET0 = librmapplugin.so
132 TARGET1 = librmapplugin.so.1
144 TARGET1 = librmapplugin.so.1
133 TARGET2 = librmapplugin.so.1.0
145 TARGET2 = librmapplugin.so.1.0
134
146
135 first: all
147 first: all
136 ####### Implicit rules
148 ####### Implicit rules
137
149
138 .SUFFIXES: .o .c .cpp .cc .cxx .C
150 .SUFFIXES: .o .c .cpp .cc .cxx .C
139
151
140 .cpp.o:
152 .cpp.o:
141 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
153 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
142
154
143 .cc.o:
155 .cc.o:
144 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
156 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
145
157
146 .cxx.o:
158 .cxx.o:
147 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
159 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
148
160
149 .C.o:
161 .C.o:
150 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
162 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
151
163
152 .c.o:
164 .c.o:
153 $(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
165 $(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
154
166
155 ####### Build rules
167 ####### Build rules
156
168
157 all: Makefile bin/$(TARGET)
169 all: Makefile bin/$(TARGET)
158
170
159 bin/$(TARGET): $(OBJECTS) $(SUBLIBS) $(OBJCOMP)
171 bin/$(TARGET): $(OBJECTS) $(SUBLIBS) $(OBJCOMP)
160 @$(CHK_DIR_EXISTS) bin/ || $(MKDIR) bin/
172 @$(CHK_DIR_EXISTS) bin/ || $(MKDIR) bin/
161 -$(DEL_FILE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2)
173 -$(DEL_FILE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2)
162 $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS) $(OBJCOMP)
174 $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS) $(OBJCOMP)
163 -ln -s $(TARGET) $(TARGET0)
175 -ln -s $(TARGET) $(TARGET0)
164 -ln -s $(TARGET) $(TARGET1)
176 -ln -s $(TARGET) $(TARGET1)
165 -ln -s $(TARGET) $(TARGET2)
177 -ln -s $(TARGET) $(TARGET2)
166 -$(DEL_FILE) bin/$(TARGET)
178 -$(DEL_FILE) bin/$(TARGET)
167 -$(DEL_FILE) bin/$(TARGET0)
179 -$(DEL_FILE) bin/$(TARGET0)
168 -$(DEL_FILE) bin/$(TARGET1)
180 -$(DEL_FILE) bin/$(TARGET1)
169 -$(DEL_FILE) bin/$(TARGET2)
181 -$(DEL_FILE) bin/$(TARGET2)
170 -$(MOVE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2) bin/
182 -$(MOVE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2) bin/
171
183
172
184
173
185
174 staticlib: $(TARGETA)
186 staticlib: $(TARGETA)
175
187
176 $(TARGETA): $(OBJECTS) $(OBJCOMP)
188 $(TARGETA): $(OBJECTS) $(OBJCOMP)
177 -$(DEL_FILE) $(TARGETA)
189 -$(DEL_FILE) $(TARGETA)
178 $(AR) $(TARGETA) $(OBJECTS)
190 $(AR) $(TARGETA) $(OBJECTS)
179
191
180 Makefile: rmapplugin.pro /usr/lib64/qt4/mkspecs/linux-g++/qmake.conf /usr/lib64/qt4/mkspecs/common/unix.conf \
192 Makefile: rmapplugin.pro /usr/lib64/qt4/mkspecs/linux-g++/qmake.conf /usr/lib64/qt4/mkspecs/common/unix.conf \
181 /usr/lib64/qt4/mkspecs/common/linux.conf \
193 /usr/lib64/qt4/mkspecs/common/linux.conf \
182 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
194 /usr/lib64/qt4/mkspecs/common/gcc-base.conf \
183 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
195 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf \
184 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
196 /usr/lib64/qt4/mkspecs/common/g++-base.conf \
185 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
197 /usr/lib64/qt4/mkspecs/common/g++-unix.conf \
186 /usr/lib64/qt4/mkspecs/qconfig.pri \
198 /usr/lib64/qt4/mkspecs/qconfig.pri \
187 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri \
199 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri \
188 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
200 /usr/lib64/qt4/mkspecs/features/qt_functions.prf \
189 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
201 /usr/lib64/qt4/mkspecs/features/qt_config.prf \
190 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
202 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf \
191 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
203 /usr/lib64/qt4/mkspecs/features/default_pre.prf \
192 /usr/lib64/qt4/mkspecs/features/release.prf \
204 /usr/lib64/qt4/mkspecs/features/release.prf \
193 /usr/lib64/qt4/mkspecs/features/default_post.prf \
205 /usr/lib64/qt4/mkspecs/features/default_post.prf \
194 /usr/lib64/qt4/mkspecs/features/lppmonplugin.prf \
206 /usr/lib64/qt4/mkspecs/features/lppmonplugin.prf \
195 /usr/lib64/qt4/mkspecs/features/pythonqt.prf \
207 /usr/lib64/qt4/mkspecs/features/pythonqt.prf \
196 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
208 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf \
197 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
209 /usr/lib64/qt4/mkspecs/features/warn_on.prf \
198 /usr/lib64/qt4/mkspecs/features/qt.prf \
210 /usr/lib64/qt4/mkspecs/features/qt.prf \
199 /usr/lib64/qt4/mkspecs/features/unix/thread.prf \
211 /usr/lib64/qt4/mkspecs/features/unix/thread.prf \
200 /usr/lib64/qt4/mkspecs/features/moc.prf \
212 /usr/lib64/qt4/mkspecs/features/moc.prf \
201 /usr/lib64/qt4/mkspecs/features/resources.prf \
213 /usr/lib64/qt4/mkspecs/features/resources.prf \
202 /usr/lib64/qt4/mkspecs/features/uic.prf \
214 /usr/lib64/qt4/mkspecs/features/uic.prf \
203 /usr/lib64/qt4/mkspecs/features/yacc.prf \
215 /usr/lib64/qt4/mkspecs/features/yacc.prf \
204 /usr/lib64/qt4/mkspecs/features/lex.prf \
216 /usr/lib64/qt4/mkspecs/features/lex.prf \
205 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf \
217 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf \
206 /usr/lib64/libQtXml.prl \
218 /usr/lib64/libQtXml.prl \
207 /usr/lib64/libQtCore.prl \
219 /usr/lib64/libQtCore.prl \
208 /usr/lib64/libQtGui.prl \
220 /usr/lib64/libQtGui.prl \
209 /usr/lib64/libQtNetwork.prl
221 /usr/lib64/libQtNetwork.prl
210 $(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile rmapplugin.pro
222 $(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile rmapplugin.pro
211 /usr/lib64/qt4/mkspecs/common/unix.conf:
223 /usr/lib64/qt4/mkspecs/common/unix.conf:
212 /usr/lib64/qt4/mkspecs/common/linux.conf:
224 /usr/lib64/qt4/mkspecs/common/linux.conf:
213 /usr/lib64/qt4/mkspecs/common/gcc-base.conf:
225 /usr/lib64/qt4/mkspecs/common/gcc-base.conf:
214 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf:
226 /usr/lib64/qt4/mkspecs/common/gcc-base-unix.conf:
215 /usr/lib64/qt4/mkspecs/common/g++-base.conf:
227 /usr/lib64/qt4/mkspecs/common/g++-base.conf:
216 /usr/lib64/qt4/mkspecs/common/g++-unix.conf:
228 /usr/lib64/qt4/mkspecs/common/g++-unix.conf:
217 /usr/lib64/qt4/mkspecs/qconfig.pri:
229 /usr/lib64/qt4/mkspecs/qconfig.pri:
218 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri:
230 /usr/lib64/qt4/mkspecs/modules/qt_webkit_version.pri:
219 /usr/lib64/qt4/mkspecs/features/qt_functions.prf:
231 /usr/lib64/qt4/mkspecs/features/qt_functions.prf:
220 /usr/lib64/qt4/mkspecs/features/qt_config.prf:
232 /usr/lib64/qt4/mkspecs/features/qt_config.prf:
221 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf:
233 /usr/lib64/qt4/mkspecs/features/exclusive_builds.prf:
222 /usr/lib64/qt4/mkspecs/features/default_pre.prf:
234 /usr/lib64/qt4/mkspecs/features/default_pre.prf:
223 /usr/lib64/qt4/mkspecs/features/release.prf:
235 /usr/lib64/qt4/mkspecs/features/release.prf:
224 /usr/lib64/qt4/mkspecs/features/default_post.prf:
236 /usr/lib64/qt4/mkspecs/features/default_post.prf:
225 /usr/lib64/qt4/mkspecs/features/lppmonplugin.prf:
237 /usr/lib64/qt4/mkspecs/features/lppmonplugin.prf:
226 /usr/lib64/qt4/mkspecs/features/pythonqt.prf:
238 /usr/lib64/qt4/mkspecs/features/pythonqt.prf:
227 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf:
239 /usr/lib64/qt4/mkspecs/features/unix/gdb_dwarf_index.prf:
228 /usr/lib64/qt4/mkspecs/features/warn_on.prf:
240 /usr/lib64/qt4/mkspecs/features/warn_on.prf:
229 /usr/lib64/qt4/mkspecs/features/qt.prf:
241 /usr/lib64/qt4/mkspecs/features/qt.prf:
230 /usr/lib64/qt4/mkspecs/features/unix/thread.prf:
242 /usr/lib64/qt4/mkspecs/features/unix/thread.prf:
231 /usr/lib64/qt4/mkspecs/features/moc.prf:
243 /usr/lib64/qt4/mkspecs/features/moc.prf:
232 /usr/lib64/qt4/mkspecs/features/resources.prf:
244 /usr/lib64/qt4/mkspecs/features/resources.prf:
233 /usr/lib64/qt4/mkspecs/features/uic.prf:
245 /usr/lib64/qt4/mkspecs/features/uic.prf:
234 /usr/lib64/qt4/mkspecs/features/yacc.prf:
246 /usr/lib64/qt4/mkspecs/features/yacc.prf:
235 /usr/lib64/qt4/mkspecs/features/lex.prf:
247 /usr/lib64/qt4/mkspecs/features/lex.prf:
236 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf:
248 /usr/lib64/qt4/mkspecs/features/include_source_dir.prf:
237 /usr/lib64/libQtXml.prl:
249 /usr/lib64/libQtXml.prl:
238 /usr/lib64/libQtCore.prl:
250 /usr/lib64/libQtCore.prl:
239 /usr/lib64/libQtGui.prl:
251 /usr/lib64/libQtGui.prl:
240 /usr/lib64/libQtNetwork.prl:
252 /usr/lib64/libQtNetwork.prl:
241 qmake: FORCE
253 qmake: FORCE
242 @$(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile rmapplugin.pro
254 @$(QMAKE) -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile rmapplugin.pro
243
255
244 dist:
256 dist:
245 @$(CHK_DIR_EXISTS) obj/rmapplugin1.0.0 || $(MKDIR) obj/rmapplugin1.0.0
257 @$(CHK_DIR_EXISTS) obj/rmapplugin1.0.0 || $(MKDIR) obj/rmapplugin1.0.0
246 $(COPY_FILE) --parents $(SOURCES) $(DIST) obj/rmapplugin1.0.0/ && $(COPY_FILE) --parents rmappluginui.h rmapplugin.h rmapoperations.h ccsds.h ../common_PLE/qipdialogbox.h ../common_PLE/gresbstatusenquiry.h spectralmatricesdmasimulator.h rmappluginpythonwrapper.h stardundee.h ../spw_usb_driver_v2.61/inc/spw_usb_api.h ../spw_usb_driver_v2.61/inc/spw_config_library.h gresb.h tcpackettosend.h tmpackettoread.h wfdisplay.h /usr/include/lppmon/genericPySysdriver.h /usr/include/lppmon/lppmonplugin.h obj/rmapplugin1.0.0/ && $(COPY_FILE) --parents rmapplugin.cpp rmappluginui.cpp rmapoperations.cpp ccsds.cpp ../common_PLE/qipdialogbox.cpp ../common_PLE/gresbstatusenquiry.cpp spectralmatricesdmasimulator.cpp rmappluginpythonwrapper.cpp stardundee.cpp gresb.cpp tcpackettosend.cpp tmpackettoread.cpp wfdisplay.cpp /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp obj/rmapplugin1.0.0/ && (cd `dirname obj/rmapplugin1.0.0` && $(TAR) rmapplugin1.0.0.tar rmapplugin1.0.0 && $(COMPRESS) rmapplugin1.0.0.tar) && $(MOVE) `dirname obj/rmapplugin1.0.0`/rmapplugin1.0.0.tar.gz . && $(DEL_FILE) -r obj/rmapplugin1.0.0
258 $(COPY_FILE) --parents $(SOURCES) $(DIST) obj/rmapplugin1.0.0/ && $(COPY_FILE) --parents rmappluginui.h rmapplugin.h rmapoperations.h ccsds.h ../common_PLE/qipdialogbox.h ../common_PLE/gresbstatusenquiry.h rmappluginpythonwrapper.h stardundee.h ../spw_usb_driver_v2.61/inc/spw_usb_api.h ../spw_usb_driver_v2.61/inc/spw_config_library.h gresb.h tcpackettosend.h tmpackettoread.h wfdisplay.h tmstatistics.h wfplot.h wfpage.h wfpacket.h params.h /usr/include/lppmon/genericPySysdriver.h /usr/include/lppmon/lppmonplugin.h obj/rmapplugin1.0.0/ && $(COPY_FILE) --parents rmapplugin.cpp rmappluginui.cpp rmapoperations.cpp ccsds.cpp ../common_PLE/qipdialogbox.cpp ../common_PLE/gresbstatusenquiry.cpp rmappluginpythonwrapper.cpp stardundee.cpp gresb.cpp tcpackettosend.cpp tmpackettoread.cpp wfdisplay.cpp tmstatistics.cpp wfplot.cpp wfpage.cpp wfpacket.cpp /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp obj/rmapplugin1.0.0/ && (cd `dirname obj/rmapplugin1.0.0` && $(TAR) rmapplugin1.0.0.tar rmapplugin1.0.0 && $(COMPRESS) rmapplugin1.0.0.tar) && $(MOVE) `dirname obj/rmapplugin1.0.0`/rmapplugin1.0.0.tar.gz . && $(DEL_FILE) -r obj/rmapplugin1.0.0
247
259
248
260
249 clean:compiler_clean
261 clean:compiler_clean
250 -$(DEL_FILE) $(OBJECTS)
262 -$(DEL_FILE) $(OBJECTS)
251 -$(DEL_FILE) *~ core *.core
263 -$(DEL_FILE) *~ core *.core
252
264
253
265
254 ####### Sub-libraries
266 ####### Sub-libraries
255
267
256 distclean: clean
268 distclean: clean
257 -$(DEL_FILE) bin/$(TARGET)
269 -$(DEL_FILE) bin/$(TARGET)
258 -$(DEL_FILE) bin/$(TARGET0) bin/$(TARGET1) bin/$(TARGET2) $(TARGETA)
270 -$(DEL_FILE) bin/$(TARGET0) bin/$(TARGET1) bin/$(TARGET2) $(TARGETA)
259 -$(DEL_FILE) Makefile
271 -$(DEL_FILE) Makefile
260
272
261
273
262 check: first
274 check: first
263
275
264 mocclean: compiler_moc_header_clean compiler_moc_source_clean
276 mocclean: compiler_moc_header_clean compiler_moc_source_clean
265
277
266 mocables: compiler_moc_header_make_all compiler_moc_source_make_all
278 mocables: compiler_moc_header_make_all compiler_moc_source_make_all
267
279
268 compiler_moc_header_make_all: moc/moc_rmappluginui.cpp moc/moc_rmapplugin.cpp moc/moc_qipdialogbox.cpp moc/moc_gresbstatusenquiry.cpp moc/moc_spectralmatricesdmasimulator.cpp moc/moc_rmappluginpythonwrapper.cpp moc/moc_stardundee.cpp moc/moc_gresb.cpp moc/moc_tcpackettosend.cpp moc/moc_tmpackettoread.cpp moc/moc_wfdisplay.cpp moc/moc_genericPySysdriver.cpp moc/moc_lppmonplugin.cpp
280 compiler_moc_header_make_all: moc/moc_rmappluginui.cpp moc/moc_rmapplugin.cpp moc/moc_qipdialogbox.cpp moc/moc_gresbstatusenquiry.cpp moc/moc_rmappluginpythonwrapper.cpp moc/moc_stardundee.cpp moc/moc_gresb.cpp moc/moc_tcpackettosend.cpp moc/moc_tmpackettoread.cpp moc/moc_wfdisplay.cpp moc/moc_tmstatistics.cpp moc/moc_wfplot.cpp moc/moc_wfpage.cpp moc/moc_wfpacket.cpp moc/moc_genericPySysdriver.cpp moc/moc_lppmonplugin.cpp
269 compiler_moc_header_clean:
281 compiler_moc_header_clean:
270 -$(DEL_FILE) moc/moc_rmappluginui.cpp moc/moc_rmapplugin.cpp moc/moc_qipdialogbox.cpp moc/moc_gresbstatusenquiry.cpp moc/moc_spectralmatricesdmasimulator.cpp moc/moc_rmappluginpythonwrapper.cpp moc/moc_stardundee.cpp moc/moc_gresb.cpp moc/moc_tcpackettosend.cpp moc/moc_tmpackettoread.cpp moc/moc_wfdisplay.cpp moc/moc_genericPySysdriver.cpp moc/moc_lppmonplugin.cpp
282 -$(DEL_FILE) moc/moc_rmappluginui.cpp moc/moc_rmapplugin.cpp moc/moc_qipdialogbox.cpp moc/moc_gresbstatusenquiry.cpp moc/moc_rmappluginpythonwrapper.cpp moc/moc_stardundee.cpp moc/moc_gresb.cpp moc/moc_tcpackettosend.cpp moc/moc_tmpackettoread.cpp moc/moc_wfdisplay.cpp moc/moc_tmstatistics.cpp moc/moc_wfplot.cpp moc/moc_wfpage.cpp moc/moc_wfpacket.cpp moc/moc_genericPySysdriver.cpp moc/moc_lppmonplugin.cpp
271 moc/moc_rmappluginui.cpp: rmapoperations.h \
283 moc/moc_rmappluginui.cpp: rmapoperations.h \
272 spectralmatricesdmasimulator.h \
273 stardundee.h \
284 stardundee.h \
274 ccsds.h \
285 ccsds.h \
275 tmpackettoread.h \
286 tmpackettoread.h \
276 gresb.h \
287 gresb.h \
277 wfdisplay.h \
288 wfdisplay.h \
289 wfplot.h \
290 params.h \
291 wfpage.h \
292 tmstatistics.h \
278 rmappluginui.h
293 rmappluginui.h
279 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) rmappluginui.h -o moc/moc_rmappluginui.cpp
294 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) rmappluginui.h -o moc/moc_rmappluginui.cpp
280
295
281 moc/moc_rmapplugin.cpp: rmappluginui.h \
296 moc/moc_rmapplugin.cpp: rmappluginui.h \
282 rmapoperations.h \
297 rmapoperations.h \
283 spectralmatricesdmasimulator.h \
284 stardundee.h \
298 stardundee.h \
285 ccsds.h \
299 ccsds.h \
286 tmpackettoread.h \
300 tmpackettoread.h \
287 gresb.h \
301 gresb.h \
288 wfdisplay.h \
302 wfdisplay.h \
303 wfplot.h \
304 params.h \
305 wfpage.h \
306 tmstatistics.h \
307 wfpacket.h \
289 rmapplugin.h
308 rmapplugin.h
290 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) rmapplugin.h -o moc/moc_rmapplugin.cpp
309 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) rmapplugin.h -o moc/moc_rmapplugin.cpp
291
310
292 moc/moc_qipdialogbox.cpp: ../common_PLE/qipdialogbox.h
311 moc/moc_qipdialogbox.cpp: ../common_PLE/qipdialogbox.h
293 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) ../common_PLE/qipdialogbox.h -o moc/moc_qipdialogbox.cpp
312 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) ../common_PLE/qipdialogbox.h -o moc/moc_qipdialogbox.cpp
294
313
295 moc/moc_gresbstatusenquiry.cpp: ../common_PLE/gresbstatusenquiry.h
314 moc/moc_gresbstatusenquiry.cpp: ../common_PLE/gresbstatusenquiry.h
296 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) ../common_PLE/gresbstatusenquiry.h -o moc/moc_gresbstatusenquiry.cpp
315 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) ../common_PLE/gresbstatusenquiry.h -o moc/moc_gresbstatusenquiry.cpp
297
316
298 moc/moc_spectralmatricesdmasimulator.cpp: spectralmatricesdmasimulator.h
299 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) spectralmatricesdmasimulator.h -o moc/moc_spectralmatricesdmasimulator.cpp
300
301 moc/moc_rmappluginpythonwrapper.cpp: rmapoperations.h \
317 moc/moc_rmappluginpythonwrapper.cpp: rmapoperations.h \
302 ccsds.h \
318 ccsds.h \
303 tcpackettosend.h \
319 tcpackettosend.h \
304 tmpackettoread.h \
320 tmpackettoread.h \
305 rmappluginpythonwrapper.h
321 rmappluginpythonwrapper.h
306 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) rmappluginpythonwrapper.h -o moc/moc_rmappluginpythonwrapper.cpp
322 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) rmappluginpythonwrapper.h -o moc/moc_rmappluginpythonwrapper.cpp
307
323
308 moc/moc_stardundee.cpp: rmapoperations.h \
324 moc/moc_stardundee.cpp: rmapoperations.h \
309 ccsds.h \
325 ccsds.h \
310 tmpackettoread.h \
326 tmpackettoread.h \
311 stardundee.h
327 stardundee.h
312 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) stardundee.h -o moc/moc_stardundee.cpp
328 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) stardundee.h -o moc/moc_stardundee.cpp
313
329
314 moc/moc_gresb.cpp: rmapoperations.h \
330 moc/moc_gresb.cpp: rmapoperations.h \
315 ccsds.h \
331 ccsds.h \
316 tmpackettoread.h \
332 tmpackettoread.h \
317 gresb.h
333 gresb.h
318 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) gresb.h -o moc/moc_gresb.cpp
334 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) gresb.h -o moc/moc_gresb.cpp
319
335
320 moc/moc_tcpackettosend.cpp: tcpackettosend.h
336 moc/moc_tcpackettosend.cpp: tcpackettosend.h
321 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) tcpackettosend.h -o moc/moc_tcpackettosend.cpp
337 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) tcpackettosend.h -o moc/moc_tcpackettosend.cpp
322
338
323 moc/moc_tmpackettoread.cpp: tmpackettoread.h
339 moc/moc_tmpackettoread.cpp: tmpackettoread.h
324 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) tmpackettoread.h -o moc/moc_tmpackettoread.cpp
340 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) tmpackettoread.h -o moc/moc_tmpackettoread.cpp
325
341
326 moc/moc_wfdisplay.cpp: wfdisplay.h
342 moc/moc_wfdisplay.cpp: wfplot.h \
343 params.h \
344 wfpage.h \
345 wfdisplay.h
327 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) wfdisplay.h -o moc/moc_wfdisplay.cpp
346 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) wfdisplay.h -o moc/moc_wfdisplay.cpp
328
347
348 moc/moc_tmstatistics.cpp: tmstatistics.h
349 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) tmstatistics.h -o moc/moc_tmstatistics.cpp
350
351 moc/moc_wfplot.cpp: params.h \
352 wfplot.h
353 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) wfplot.h -o moc/moc_wfplot.cpp
354
355 moc/moc_wfpage.cpp: wfplot.h \
356 params.h \
357 wfpage.h
358 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) wfpage.h -o moc/moc_wfpage.cpp
359
360 moc/moc_wfpacket.cpp: params.h \
361 wfpacket.h
362 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) wfpacket.h -o moc/moc_wfpacket.cpp
363
329 moc/moc_genericPySysdriver.cpp: /usr/include/lppmon/genericPySysdriver.h
364 moc/moc_genericPySysdriver.cpp: /usr/include/lppmon/genericPySysdriver.h
330 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) /usr/include/lppmon/genericPySysdriver.h -o moc/moc_genericPySysdriver.cpp
365 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) /usr/include/lppmon/genericPySysdriver.h -o moc/moc_genericPySysdriver.cpp
331
366
332 moc/moc_lppmonplugin.cpp: /usr/include/lppmon/lppmonplugin.h
367 moc/moc_lppmonplugin.cpp: /usr/include/lppmon/lppmonplugin.h
333 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) /usr/include/lppmon/lppmonplugin.h -o moc/moc_lppmonplugin.cpp
368 /usr/lib64/qt4/bin/moc $(DEFINES) $(INCPATH) /usr/include/lppmon/lppmonplugin.h -o moc/moc_lppmonplugin.cpp
334
369
335 compiler_rcc_make_all:
370 compiler_rcc_make_all:
336 compiler_rcc_clean:
371 compiler_rcc_clean:
337 compiler_image_collection_make_all: qmake_image_collection.cpp
372 compiler_image_collection_make_all: qmake_image_collection.cpp
338 compiler_image_collection_clean:
373 compiler_image_collection_clean:
339 -$(DEL_FILE) qmake_image_collection.cpp
374 -$(DEL_FILE) qmake_image_collection.cpp
340 compiler_moc_source_make_all:
375 compiler_moc_source_make_all:
341 compiler_moc_source_clean:
376 compiler_moc_source_clean:
342 compiler_uic_make_all:
377 compiler_uic_make_all:
343 compiler_uic_clean:
378 compiler_uic_clean:
344 compiler_yacc_decl_make_all:
379 compiler_yacc_decl_make_all:
345 compiler_yacc_decl_clean:
380 compiler_yacc_decl_clean:
346 compiler_yacc_impl_make_all:
381 compiler_yacc_impl_make_all:
347 compiler_yacc_impl_clean:
382 compiler_yacc_impl_clean:
348 compiler_lex_make_all:
383 compiler_lex_make_all:
349 compiler_lex_clean:
384 compiler_lex_clean:
350 compiler_clean: compiler_moc_header_clean
385 compiler_clean: compiler_moc_header_clean
351
386
352 ####### Compile
387 ####### Compile
353
388
354 obj/rmapplugin.o: rmapplugin.cpp rmapplugin.h \
389 obj/rmapplugin.o: rmapplugin.cpp rmapplugin.h \
355 rmappluginui.h \
390 rmappluginui.h \
356 rmapoperations.h \
391 rmapoperations.h \
357 spectralmatricesdmasimulator.h \
358 stardundee.h \
392 stardundee.h \
359 ccsds.h \
393 ccsds.h \
360 tmpackettoread.h \
394 tmpackettoread.h \
361 gresb.h \
395 gresb.h \
362 wfdisplay.h \
396 wfdisplay.h \
397 wfplot.h \
398 params.h \
399 wfpage.h \
400 tmstatistics.h \
401 wfpacket.h \
363 rmappluginpythonwrapper.h \
402 rmappluginpythonwrapper.h \
364 tcpackettosend.h
403 tcpackettosend.h
365 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmapplugin.o rmapplugin.cpp
404 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmapplugin.o rmapplugin.cpp
366
405
367 obj/rmappluginui.o: rmappluginui.cpp rmapplugin.h \
406 obj/rmappluginui.o: rmappluginui.cpp rmapplugin.h \
368 rmappluginui.h \
407 rmappluginui.h \
369 rmapoperations.h \
408 rmapoperations.h \
370 spectralmatricesdmasimulator.h \
371 stardundee.h \
409 stardundee.h \
372 ccsds.h \
410 ccsds.h \
373 tmpackettoread.h \
411 tmpackettoread.h \
374 gresb.h \
412 gresb.h \
375 wfdisplay.h
413 wfdisplay.h \
414 wfplot.h \
415 params.h \
416 wfpage.h \
417 tmstatistics.h \
418 wfpacket.h
376 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmappluginui.o rmappluginui.cpp
419 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmappluginui.o rmappluginui.cpp
377
420
378 obj/rmapoperations.o: rmapoperations.cpp rmapoperations.h
421 obj/rmapoperations.o: rmapoperations.cpp rmapoperations.h
379 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmapoperations.o rmapoperations.cpp
422 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmapoperations.o rmapoperations.cpp
380
423
381 obj/ccsds.o: ccsds.cpp ccsds.h
424 obj/ccsds.o: ccsds.cpp ccsds.h
382 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/ccsds.o ccsds.cpp
425 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/ccsds.o ccsds.cpp
383
426
384 obj/qipdialogbox.o: ../common_PLE/qipdialogbox.cpp ../common_PLE/qipdialogbox.h
427 obj/qipdialogbox.o: ../common_PLE/qipdialogbox.cpp ../common_PLE/qipdialogbox.h
385 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/qipdialogbox.o ../common_PLE/qipdialogbox.cpp
428 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/qipdialogbox.o ../common_PLE/qipdialogbox.cpp
386
429
387 obj/gresbstatusenquiry.o: ../common_PLE/gresbstatusenquiry.cpp ../common_PLE/gresbstatusenquiry.h
430 obj/gresbstatusenquiry.o: ../common_PLE/gresbstatusenquiry.cpp ../common_PLE/gresbstatusenquiry.h
388 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/gresbstatusenquiry.o ../common_PLE/gresbstatusenquiry.cpp
431 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/gresbstatusenquiry.o ../common_PLE/gresbstatusenquiry.cpp
389
432
390 obj/spectralmatricesdmasimulator.o: spectralmatricesdmasimulator.cpp spectralmatricesdmasimulator.h
391 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/spectralmatricesdmasimulator.o spectralmatricesdmasimulator.cpp
392
393 obj/rmappluginpythonwrapper.o: rmappluginpythonwrapper.cpp rmappluginpythonwrapper.h \
433 obj/rmappluginpythonwrapper.o: rmappluginpythonwrapper.cpp rmappluginpythonwrapper.h \
394 rmapoperations.h \
434 rmapoperations.h \
395 ccsds.h \
435 ccsds.h \
396 tcpackettosend.h \
436 tcpackettosend.h \
397 tmpackettoread.h
437 tmpackettoread.h
398 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmappluginpythonwrapper.o rmappluginpythonwrapper.cpp
438 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/rmappluginpythonwrapper.o rmappluginpythonwrapper.cpp
399
439
400 obj/stardundee.o: stardundee.cpp stardundee.h \
440 obj/stardundee.o: stardundee.cpp stardundee.h \
401 rmapoperations.h \
441 rmapoperations.h \
402 ccsds.h \
442 ccsds.h \
403 tmpackettoread.h
443 tmpackettoread.h
404 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/stardundee.o stardundee.cpp
444 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/stardundee.o stardundee.cpp
405
445
406 obj/gresb.o: gresb.cpp gresb.h \
446 obj/gresb.o: gresb.cpp gresb.h \
407 rmapoperations.h \
447 rmapoperations.h \
408 ccsds.h \
448 ccsds.h \
409 tmpackettoread.h
449 tmpackettoread.h
410 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/gresb.o gresb.cpp
450 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/gresb.o gresb.cpp
411
451
412 obj/tcpackettosend.o: tcpackettosend.cpp tcpackettosend.h
452 obj/tcpackettosend.o: tcpackettosend.cpp tcpackettosend.h
413 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/tcpackettosend.o tcpackettosend.cpp
453 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/tcpackettosend.o tcpackettosend.cpp
414
454
415 obj/tmpackettoread.o: tmpackettoread.cpp tmpackettoread.h
455 obj/tmpackettoread.o: tmpackettoread.cpp tmpackettoread.h
416 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/tmpackettoread.o tmpackettoread.cpp
456 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/tmpackettoread.o tmpackettoread.cpp
417
457
418 obj/wfdisplay.o: wfdisplay.cpp wfdisplay.h
458 obj/wfdisplay.o: wfdisplay.cpp wfdisplay.h \
459 wfplot.h \
460 params.h \
461 wfpage.h
419 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/wfdisplay.o wfdisplay.cpp
462 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/wfdisplay.o wfdisplay.cpp
420
463
464 obj/tmstatistics.o: tmstatistics.cpp tmstatistics.h
465 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/tmstatistics.o tmstatistics.cpp
466
467 obj/wfplot.o: wfplot.cpp wfplot.h \
468 params.h
469 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/wfplot.o wfplot.cpp
470
471 obj/wfpage.o: wfpage.cpp wfpage.h \
472 wfplot.h \
473 params.h
474 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/wfpage.o wfpage.cpp
475
476 obj/wfpacket.o: wfpacket.cpp wfpacket.h \
477 params.h
478 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/wfpacket.o wfpacket.cpp
479
421 obj/lppmonplugininterface.o: /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp /usr/include/lppmon/pluginsInterface/lppmonplugininterface.h \
480 obj/lppmonplugininterface.o: /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp /usr/include/lppmon/pluginsInterface/lppmonplugininterface.h \
422 /usr/include/lppmon/pluginsInterface/lppmonplugininterface_global.h
481 /usr/include/lppmon/pluginsInterface/lppmonplugininterface_global.h
423 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/lppmonplugininterface.o /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp
482 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/lppmonplugininterface.o /usr/include/lppmon/pluginsInterface/lppmonplugininterface.cpp
424
483
425 obj/moc_rmappluginui.o: moc/moc_rmappluginui.cpp
484 obj/moc_rmappluginui.o: moc/moc_rmappluginui.cpp
426 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_rmappluginui.o moc/moc_rmappluginui.cpp
485 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_rmappluginui.o moc/moc_rmappluginui.cpp
427
486
428 obj/moc_rmapplugin.o: moc/moc_rmapplugin.cpp
487 obj/moc_rmapplugin.o: moc/moc_rmapplugin.cpp
429 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_rmapplugin.o moc/moc_rmapplugin.cpp
488 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_rmapplugin.o moc/moc_rmapplugin.cpp
430
489
431 obj/moc_qipdialogbox.o: moc/moc_qipdialogbox.cpp
490 obj/moc_qipdialogbox.o: moc/moc_qipdialogbox.cpp
432 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_qipdialogbox.o moc/moc_qipdialogbox.cpp
491 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_qipdialogbox.o moc/moc_qipdialogbox.cpp
433
492
434 obj/moc_gresbstatusenquiry.o: moc/moc_gresbstatusenquiry.cpp
493 obj/moc_gresbstatusenquiry.o: moc/moc_gresbstatusenquiry.cpp
435 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_gresbstatusenquiry.o moc/moc_gresbstatusenquiry.cpp
494 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_gresbstatusenquiry.o moc/moc_gresbstatusenquiry.cpp
436
495
437 obj/moc_spectralmatricesdmasimulator.o: moc/moc_spectralmatricesdmasimulator.cpp
438 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_spectralmatricesdmasimulator.o moc/moc_spectralmatricesdmasimulator.cpp
439
440 obj/moc_rmappluginpythonwrapper.o: moc/moc_rmappluginpythonwrapper.cpp
496 obj/moc_rmappluginpythonwrapper.o: moc/moc_rmappluginpythonwrapper.cpp
441 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_rmappluginpythonwrapper.o moc/moc_rmappluginpythonwrapper.cpp
497 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_rmappluginpythonwrapper.o moc/moc_rmappluginpythonwrapper.cpp
442
498
443 obj/moc_stardundee.o: moc/moc_stardundee.cpp
499 obj/moc_stardundee.o: moc/moc_stardundee.cpp
444 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_stardundee.o moc/moc_stardundee.cpp
500 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_stardundee.o moc/moc_stardundee.cpp
445
501
446 obj/moc_gresb.o: moc/moc_gresb.cpp
502 obj/moc_gresb.o: moc/moc_gresb.cpp
447 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_gresb.o moc/moc_gresb.cpp
503 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_gresb.o moc/moc_gresb.cpp
448
504
449 obj/moc_tcpackettosend.o: moc/moc_tcpackettosend.cpp
505 obj/moc_tcpackettosend.o: moc/moc_tcpackettosend.cpp
450 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_tcpackettosend.o moc/moc_tcpackettosend.cpp
506 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_tcpackettosend.o moc/moc_tcpackettosend.cpp
451
507
452 obj/moc_tmpackettoread.o: moc/moc_tmpackettoread.cpp
508 obj/moc_tmpackettoread.o: moc/moc_tmpackettoread.cpp
453 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_tmpackettoread.o moc/moc_tmpackettoread.cpp
509 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_tmpackettoread.o moc/moc_tmpackettoread.cpp
454
510
455 obj/moc_wfdisplay.o: moc/moc_wfdisplay.cpp
511 obj/moc_wfdisplay.o: moc/moc_wfdisplay.cpp
456 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_wfdisplay.o moc/moc_wfdisplay.cpp
512 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_wfdisplay.o moc/moc_wfdisplay.cpp
457
513
514 obj/moc_tmstatistics.o: moc/moc_tmstatistics.cpp
515 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_tmstatistics.o moc/moc_tmstatistics.cpp
516
517 obj/moc_wfplot.o: moc/moc_wfplot.cpp
518 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_wfplot.o moc/moc_wfplot.cpp
519
520 obj/moc_wfpage.o: moc/moc_wfpage.cpp
521 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_wfpage.o moc/moc_wfpage.cpp
522
523 obj/moc_wfpacket.o: moc/moc_wfpacket.cpp
524 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_wfpacket.o moc/moc_wfpacket.cpp
525
458 obj/moc_genericPySysdriver.o: moc/moc_genericPySysdriver.cpp
526 obj/moc_genericPySysdriver.o: moc/moc_genericPySysdriver.cpp
459 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_genericPySysdriver.o moc/moc_genericPySysdriver.cpp
527 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_genericPySysdriver.o moc/moc_genericPySysdriver.cpp
460
528
461 obj/moc_lppmonplugin.o: moc/moc_lppmonplugin.cpp
529 obj/moc_lppmonplugin.o: moc/moc_lppmonplugin.cpp
462 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_lppmonplugin.o moc/moc_lppmonplugin.cpp
530 $(CXX) -c $(CXXFLAGS) $(INCPATH) -o obj/moc_lppmonplugin.o moc/moc_lppmonplugin.cpp
463
531
464 ####### Install
532 ####### Install
465
533
466 install_target: first FORCE
534 install_target: first FORCE
467 @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/home/paul/.lppmon/plugins/ || $(MKDIR) $(INSTALL_ROOT)/home/paul/.lppmon/plugins/
535 @$(CHK_DIR_EXISTS) $(INSTALL_ROOT)/home/paul/.lppmon/plugins/ || $(MKDIR) $(INSTALL_ROOT)/home/paul/.lppmon/plugins/
468 -$(INSTALL_PROGRAM) "bin/$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET)"
536 -$(INSTALL_PROGRAM) "bin/$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET)"
469 -$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET0)"
537 -$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET0)"
470 -$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET1)"
538 -$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET1)"
471 -$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET2)"
539 -$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET2)"
472
540
473 uninstall_target: FORCE
541 uninstall_target: FORCE
474 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET)"
542 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET)"
475 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET0)"
543 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET0)"
476 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET1)"
544 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET1)"
477 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET2)"
545 -$(DEL_FILE) "$(INSTALL_ROOT)/home/paul/.lppmon/plugins/$(TARGET2)"
478 -$(DEL_DIR) $(INSTALL_ROOT)/home/paul/.lppmon/plugins/
546 -$(DEL_DIR) $(INSTALL_ROOT)/home/paul/.lppmon/plugins/
479
547
480
548
481 install: install_target FORCE
549 install: install_target FORCE
482
550
483 uninstall: uninstall_target FORCE
551 uninstall: uninstall_target FORCE
484
552
485 FORCE:
553 FORCE:
486
554
@@ -1,108 +1,108
1 #ifndef GRESB_H
1 #ifndef GRESB_H
2 #define GRESB_H
2 #define GRESB_H
3
3
4 #include <QWidget>
4 #include <QWidget>
5 #include <QLabel>
5 #include <QLabel>
6 #include <QPushButton>
6 #include <QPushButton>
7 #include <QSpinBox>
7 #include <QSpinBox>
8 #include <QGridLayout>
8 #include <QGridLayout>
9 #include <QTcpSocket>
9 #include <QTcpSocket>
10 #include <QDialog>
10 #include <QDialog>
11 #include <QSemaphore>
11 #include <QSemaphore>
12
12
13 #include "gresbstatusenquiry.h"
13 #include "gresbstatusenquiry.h"
14 #include "rmapoperations.h"
14 #include "rmapoperations.h"
15 #include "qipdialogbox.h"
15 #include "qipdialogbox.h"
16 #include "ccsds.h"
16 #include "ccsds.h"
17 #include "tmpackettoread.h"
17 #include "tmpackettoread.h"
18
18
19 class gresb : public QWidget
19 class gresb : public QWidget
20 {
20 {
21 Q_OBJECT
21 Q_OBJECT
22 public:
22 public:
23 explicit gresb(QWidget *parent = 0);
23 explicit gresb(QWidget *parent = 0);
24 ~gresb();
24 ~gresb();
25 unsigned int Write(unsigned int *Value,unsigned int count,unsigned int address=0);
25 unsigned int Write(unsigned int *Value,unsigned int count,unsigned int address=0);
26 unsigned int Read(unsigned int *Value,unsigned int count,unsigned int address=0);
26 unsigned int Read(unsigned int *Value,unsigned int count,unsigned int address=0);
27 unsigned int WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication);
27 unsigned int WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication);
28
28
29 unsigned int storeCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size);
29 unsigned int storeCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size);
30
31 gresbStatusEnquiry* spwLinkStatusEnquiry;
30
32
31 signals:
33 signals:
32 void sendMessage(QString message);
34 void sendMessage(QString message);
33 void sendPacket(TMPacketToRead*);
35 void sendPacket(TMPacketToRead*);
34 void isOpen(bool);
36 void isOpen(bool);
35 void RMAP_write_reply_setText(QString);
37 void RMAP_write_reply_setText(QString);
36 void appendToLog(QString);
38 void appendToLog(QString);
37
39
38 public slots:
40 public slots:
39 void Open();
41 void Open();
40 void Close();
42 void Close();
41 int receiveSPWPacketLoop(unsigned char requestID=0);
43 int receiveSPWPacketLoop(unsigned char requestID=0);
42 int receiveSPWPacket(unsigned char requestID=0);
44 int receiveSPWPacket(unsigned char requestID=0);
43 void commandCodeHasChanged(RMAP_command_codes code) {this->commandCode = code;}
45 void commandCodeHasChanged(RMAP_command_codes code) {this->commandCode = code;}
44 void targetHasChanged(int target) {rmapTargetLogicalAddress = (unsigned char) target;}
46 void targetHasChanged(int target) {rmapTargetLogicalAddress = (unsigned char) target;}
45 void sourceHasChanged(int source) {rmapSourceLogicalAddress = (unsigned char) source;}
47 void sourceHasChanged(int source) {rmapSourceLogicalAddress = (unsigned char) source;}
46 void ccsdsPacketIsProcessed() {ccsdsPacketSEMAPHORE->tryAcquire();}
48 void ccsdsPacketIsProcessed() {ccsdsPacketSEMAPHORE->tryAcquire();}
47 void reTestSPWLink();
49 void reTestSPWLink();
48 //
50 //
49 void RMAPSendConnectionState(QAbstractSocket::SocketState socketState);
51 void RMAPSendConnectionState(QAbstractSocket::SocketState socketState);
50 void RMAPReceiveConnectionState(QAbstractSocket::SocketState socketState);
52 void RMAPReceiveConnectionState(QAbstractSocket::SocketState socketState);
51 void GRESBConnectionState(QAbstractSocket::SocketState socketState);
53 void GRESBConnectionState(QAbstractSocket::SocketState socketState);
52 //
54 //
53 void setIP(unsigned char address1, unsigned char address2, unsigned char address3, unsigned char address4)
55 void setIP(unsigned char address1, unsigned char address2, unsigned char address3, unsigned char address4)
54 {this->gresbBridgeIPDialogBox->setIP(address1, address2, address3, address4);}
56 {this->gresbBridgeIPDialogBox->setIP(address1, address2, address3, address4);}
55
57
56 private slots:
58 private slots:
57 int GRESBStatusQuery();
59 int GRESBStatusQuery();
58
60
59 private:
61 private:
60 unsigned int WriteBLOCK(char *data,unsigned int nbBytes,unsigned int address=0);
62 unsigned int WriteBLOCK(char *data,unsigned int nbBytes,unsigned int address=0);
61 unsigned int ReadBLOCK(unsigned int nbBytes,unsigned int address=0);
63 unsigned int ReadBLOCK(unsigned int nbBytes,unsigned int address=0);
62 void acquireRMAPSemaphore() {rmapPacketSEMAPHORE->tryAcquire();}
64 void acquireRMAPSemaphore() {rmapPacketSEMAPHORE->tryAcquire();}
63 void acquireCCSDSSemaphore() {ccsdsPacketSEMAPHORE->tryAcquire();}
65 void acquireCCSDSSemaphore() {ccsdsPacketSEMAPHORE->tryAcquire();}
64 int GRESBStatusQueryRequest(GresbStatusQueryOption option, char link);
66 int GRESBStatusQueryRequest(GresbStatusQueryOption option, char link);
65
67
66 unsigned char rmapTargetLogicalAddress ;
68 unsigned char rmapTargetLogicalAddress ;
67 unsigned char rmapSourceLogicalAddress ;
69 unsigned char rmapSourceLogicalAddress ;
68
70
69 RMAP_command_codes commandCode;
71 RMAP_command_codes commandCode;
70
72
71 QPushButton *gresbStatusQueryRetryButton;
73 QPushButton *gresbStatusQueryRetryButton;
72 QPushButton *gresbStatusQueryAbortButton;
74 QPushButton *gresbStatusQueryAbortButton;
73
75
74 QLabel *gresbBridgeIPLabel;
76 QLabel *gresbBridgeIPLabel;
75 QLabel *gresbVirtualLinkLabel;
77 QLabel *gresbVirtualLinkLabel;
76 QLabel *spwLinkLabel;
78 QLabel *spwLinkLabel;
77 QLabel *rmapSendStateLabel;
79 QLabel *rmapSendStateLabel;
78 QLabel *rmapReceiveStateLabel;
80 QLabel *rmapReceiveStateLabel;
79 QLabel *gresbStatusQueryLabel;
81 QLabel *gresbStatusQueryLabel;
80 QLabel *gresbStatusQueryDialogLabel;
82 QLabel *gresbStatusQueryDialogLabel;
81
83
82 QDialog *gresbStatusQueryDialog;
84 QDialog *gresbStatusQueryDialog;
83
85
84 QIPDialogBox* gresbBridgeIPDialogBox;
86 QIPDialogBox* gresbBridgeIPDialogBox;
85
87
86 QSpinBox *gresbVirtualLinkSpinBox;
88 QSpinBox *gresbVirtualLinkSpinBox;
87 QSpinBox *spwLinkSpinBox;
89 QSpinBox *spwLinkSpinBox;
88
90
89 QGridLayout *connectionLayout;
91 QGridLayout *connectionLayout;
90 QGridLayout *gresbStatusQueryDialogLayout;
92 QGridLayout *gresbStatusQueryDialogLayout;
91
93
92 QTcpSocket *RMAPSend_SOCKET;
94 QTcpSocket *RMAPSend_SOCKET;
93 QTcpSocket *RMAPReceive_SOCKET;
95 QTcpSocket *RMAPReceive_SOCKET;
94 QTcpSocket *GRESBStatusQuery_SOCKET;
96 QTcpSocket *GRESBStatusQuery_SOCKET;
95
97
96 gresbStatusEnquiry* spwLinkStatusEnquiry;
97
98 // Packet receiver
98 // Packet receiver
99 QSemaphore *rmapPacketSEMAPHORE;
99 QSemaphore *rmapPacketSEMAPHORE;
100 QSemaphore *ccsdsPacketSEMAPHORE;
100 QSemaphore *ccsdsPacketSEMAPHORE;
101 char* rmapPacket; // The buffer to receive RMAP READ packets
101 char* rmapPacket; // The buffer to receive RMAP READ packets
102 unsigned char *ccsdsPacket;
102 unsigned char *ccsdsPacket;
103 char *spwPacket;
103 char *spwPacket;
104 unsigned int rmapPacketSize;
104 unsigned int rmapPacketSize;
105 unsigned int ccsdsPacketSize;
105 unsigned int ccsdsPacketSize;
106 };
106 };
107
107
108 #endif // GRESB_H
108 #endif // GRESB_H
@@ -1,460 +1,400
1 /*------------------------------------------------------------------------------
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the LPPMON Software
2 -- This file is a part of the LPPMON Software
3 -- Copyright (C) 2012, Laboratory of Plasma Physics - CNRS
3 -- Copyright (C) 2012, Laboratory of Plasma Physics - CNRS
4 --
4 --
5 -- This program is free software; you can redistribute it and/or modify
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
8 -- (at your option) any later version.
9 --
9 --
10 -- This program is distributed in the hope that it will be useful,
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
13 -- GNU General Public License for more details.
14 --
14 --
15 -- You should have received a copy of the GNU General Public License
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------*/
18 -------------------------------------------------------------------------------*/
19 /*-- Author : Paul LEROY
19 /*-- Author : Paul LEROY
20 -- Mail : paul.leroy@lpp.polytechnique.fr
20 -- Mail : paul.leroy@lpp.polytechnique.fr
21 ----------------------------------------------------------------------------*/
21 ----------------------------------------------------------------------------*/
22 #include "rmapplugin.h"
22 #include "rmapplugin.h"
23 #include <QHostAddress>
23 #include <QHostAddress>
24 #include <QIODevice>
24 #include <QIODevice>
25 #include <QApplication>
25 #include <QApplication>
26 #include <rmappluginpythonwrapper.h>
26 #include <rmappluginpythonwrapper.h>
27 #include <PythonQt.h>
27 #include <PythonQt.h>
28 #include <QTimer>
28 #include <QTimer>
29
29
30 rmapplugin::rmapplugin(QWidget *parent)
30 rmapplugin::rmapplugin(QWidget *parent)
31 :lppmonplugin(parent,false)
31 :lppmonplugin(parent,false)
32 {
32 {
33 this->UI = new rmapPluginUI();
33 this->UI = new rmapPluginUI();
34 this->setWindowTitle(tr("RMAP and SPW Communication"));
34 this->setWindowTitle(tr("RMAP and SPW Communication"));
35 this->setWidget((QWidget*)this->UI);
35 this->setWidget((QWidget*)this->UI);
36
36
37 timeCode = 0;
37 timeCode = 0;
38 time_COARSE = 0;
38 time_COARSE = 0;
39 time_FINE = 0;
39 time_FINE = 0;
40 currentBridge = selectedBridgeIsUnknown;
40 currentBridge = selectedBridgeIsUnknown;
41
41
42 //**************
42 //**************
43 //Python wrapper
43 //Python wrapper
44 this->pyObject = new rmappluginPythonWrapper();
44 this->pyObject = new rmappluginPythonWrapper();
45 connect(this->pyObject,SIGNAL(ReadSig(uint*,uint,uint)),this,SLOT(Read(uint*,uint,uint)));
45 connect(this->pyObject,SIGNAL(ReadSig(uint*,uint,uint)),this,SLOT(Read(uint*,uint,uint)));
46 connect(this->pyObject,SIGNAL(WriteSig(uint*,uint,uint)),this,SLOT(Write(uint*,uint,uint)));
46 connect(this->pyObject,SIGNAL(WriteSig(uint*,uint,uint)),this,SLOT(Write(uint*,uint,uint)));
47 //**
47 //**
48 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( WriteSPWSig(char*,uint,char,char) ),
48 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( WriteSPWSig(char*,uint,char,char) ),
49 this, SLOT( WriteSPW(char*,uint,char,char)), Qt::DirectConnection );
49 this, SLOT( WriteSPW(char*,uint,char,char)), Qt::DirectConnection );
50 //**
50 //**
51 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( updateTargetAddress(unsigned char) ),
51 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( updateTargetAddress(unsigned char) ),
52 this, SLOT( setValueTargetAddress(unsigned char)) );
52 this, SLOT( setValueTargetAddress(unsigned char)) );
53 //**
53 //**
54 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( updateSourceAddress(unsigned char) ),
54 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( updateSourceAddress(unsigned char) ),
55 this, SLOT( setValueSourceAddress(unsigned char)) );
55 this, SLOT( setValueSourceAddress(unsigned char)) );
56 //**
56 //**
57 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(sendMessage(QString)),
57 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(sendMessage(QString)),
58 this, SLOT(displayOnConsole(QString)) );
58 this, SLOT(displayOnConsole(QString)) );
59 //**
59 //**
60 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(fetchPacketSig()),
60 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(fetchPacketSig()),
61 this, SLOT(fetchPacket()), Qt::DirectConnection );
61 this, SLOT(fetchPacket()), Qt::DirectConnection );
62 //***
63 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(nbPacketHasChanged(int)),
64 this, SLOT(nbPacketHasChanged(int)));
62 //**************
65 //**************
63
66
64 //**************
67 //**************
65 // get a smart pointer to the __main__ module of the Python interpreter
68 // get a smart pointer to the __main__ module of the Python interpreter
66 PythonQtObjectPtr context = PythonQt::self()->getMainModule();
69 PythonQtObjectPtr context = PythonQt::self()->getMainModule();
67 // add a QObject as variable of name "BUTTON_rmapOpenCommunication" to the namespace of the __main__ module
70 // add a QObject as variable of name "BUTTON_rmapOpenCommunication" to the namespace of the __main__ module
68 context.addObject("BUTTON_rmapOpenCommunication", UI->rmapOpenCommunicationButton);
71 context.addObject("BUTTON_rmapOpenCommunication", UI->rmapOpenCommunicationButton);
69 context.addObject("BUTTON_rmapCloseCommunication", UI->rmapCloseCommunicationButton);
72 context.addObject("BUTTON_rmapCloseCommunication", UI->rmapCloseCommunicationButton);
70 context.addObject("BUTTON_selectStarDundee", UI->selectStarDundee_BUTTON);
73 context.addObject("BUTTON_selectStarDundee", UI->selectStarDundee_BUTTON);
71 context.addObject("BUTTON_selectGRESB", UI->selectGRESB_BUTTON);
74 context.addObject("BUTTON_selectGRESB", UI->selectGRESB_BUTTON);
72 context.addObject("GRESB_Bridge", UI->gresbBridge);
75 context.addObject("GRESB_Bridge", UI->gresbBridge);
73 //**************
76 //**************
74
77
75 connect(UI->rmapOpenCommunicationButton, SIGNAL(clicked()), this, SLOT(openBridge()));
78 connect(UI->rmapOpenCommunicationButton, SIGNAL(clicked()), this, SLOT(openBridge()));
76 connect(UI->rmapCloseCommunicationButton, SIGNAL(clicked()), this, SLOT(closeBridge()));
79 connect(UI->rmapCloseCommunicationButton, SIGNAL(clicked()), this, SLOT(closeBridge()));
77
80 connect(this, SIGNAL(
78 // CCSDS
81 updateStatistics(unsigned char,unsigned char,unsigned char,unsigned char,uint,uint,uint,uint)
79 connect(this->UI->sendCCSDSCommandButton, SIGNAL(clicked()), this, SLOT(sendCCSDS()));
82 ),
80 connect(this->UI->send_TC_LFR_UPDATE_TIME_Button, SIGNAL(clicked()), this, SLOT(send_TC_LFR_UPDATE_TIME()));
83 this->UI->tmStatistics, SLOT(
81 connect(this->UI->reset_TC_LFR_UPDATE_TIME_Button, SIGNAL(clicked()), this, SLOT(reset_TC_LFR_UPDATE_TIME()));
84 updateStatistics(unsigned char,unsigned char,unsigned char,unsigned char,uint,uint,uint,uint)
82
85 ));
83 // spectralMAtricesDMASimulator
84 connect(this->UI->spectralMatricesDMASimulator, SIGNAL(rmapplugginRead(uint*,uint,uint)), this, SLOT(Read(uint*,uint,uint)));
85 connect(this->UI->spectralMatricesDMASimulator, SIGNAL(rmapplugginWrite(uint*,uint,uint)), this, SLOT(Write(uint*,uint,uint)));
86 connect(this->UI->spectralMatricesDMASimulator, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
87
86
88 //******
87 //******
89 // GRESB
88 // GRESB
90 connect(this->UI->gresbBridge, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
89 connect(this->UI->gresbBridge, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
91 connect(this->UI->gresbBridge, SIGNAL(isOpen(bool)), this, SLOT(activatePlugin(bool)));
90 connect(this->UI->gresbBridge, SIGNAL(isOpen(bool)), this, SLOT(activatePlugin(bool)));
92 connect(this->UI->gresbBridge, SIGNAL(RMAP_write_reply_setText(QString)), this, SLOT(RMAP_write_reply_setText(QString)));
91 connect(this->UI->gresbBridge, SIGNAL(RMAP_write_reply_setText(QString)), this, SLOT(RMAP_write_reply_setText(QString)));
93 connect(this->UI->gresbBridge, SIGNAL(appendToLog(QString)), this, SLOT(appendToLog(QString)));
92 connect(this->UI->gresbBridge, SIGNAL(appendToLog(QString)), this, SLOT(appendToLog(QString)));
94 connect(this, SIGNAL(ccsdsPacketIsProcessed()), this->UI->gresbBridge, SLOT(ccsdsPacketIsProcessed()));
93 connect(this, SIGNAL(ccsdsPacketIsProcessed()), this->UI->gresbBridge, SLOT(ccsdsPacketIsProcessed()));
95 connect(this->UI->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
94 connect(this->UI->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
96 this->UI->gresbBridge, SLOT(targetHasChanged(int)));
95 this->UI->gresbBridge, SLOT(targetHasChanged(int)));
97 connect(this->UI->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
96 connect(this->UI->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
98 this->UI->gresbBridge, SLOT(sourceHasChanged(int)));
97 this->UI->gresbBridge, SLOT(sourceHasChanged(int)));
99 connect(this->UI->gresbBridge, SIGNAL(sendPacket(TMPacketToRead*)),
98 connect(this->UI->gresbBridge, SIGNAL(sendPacket(TMPacketToRead*)),
100 this, SLOT(receivePacketFromBridge(TMPacketToRead*)));
99 this, SLOT(receivePacketFromBridge(TMPacketToRead*)));
101
100
102 //************
101 //************
103 // Star Dundee
102 // Star Dundee
104 connect(this->UI->starDundee, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
103 connect(this->UI->starDundee, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
105 connect(this->UI->starDundee, SIGNAL(isOpen(bool)), this, SLOT(activatePlugin(bool)));
104 connect(this->UI->starDundee, SIGNAL(isOpen(bool)), this, SLOT(activatePlugin(bool)));
106 connect(this->UI->starDundee, SIGNAL(RMAP_write_reply_setText(QString)), this, SLOT(RMAP_write_reply_setText(QString)));
105 connect(this->UI->starDundee, SIGNAL(RMAP_write_reply_setText(QString)), this, SLOT(RMAP_write_reply_setText(QString)));
107 connect(this->UI->starDundee, SIGNAL(appendToLog(QString)), this, SLOT(appendToLog(QString)));
106 connect(this->UI->starDundee, SIGNAL(appendToLog(QString)), this, SLOT(appendToLog(QString)));
108 connect(this, SIGNAL(ccsdsPacketIsProcessed()), this->UI->starDundee, SLOT(ccsdsPacketIsProcessed()));
107 connect(this, SIGNAL(ccsdsPacketIsProcessed()), this->UI->starDundee, SLOT(ccsdsPacketIsProcessed()));
109 connect(this->UI->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
108 connect(this->UI->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
110 this->UI->starDundee, SLOT(targetHasChanged(int)));
109 this->UI->starDundee, SLOT(targetHasChanged(int)));
111 connect(this->UI->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
110 connect(this->UI->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
112 this->UI->starDundee, SLOT(sourceHasChanged(int)));
111 this->UI->starDundee, SLOT(sourceHasChanged(int)));
113 connect(this->UI->starDundee, SIGNAL(sendPacket(TMPacketToRead*)),
112 connect(this->UI->starDundee, SIGNAL(sendPacket(TMPacketToRead*)),
114 this, SLOT(receivePacketFromBridge(TMPacketToRead*)));
113 this, SLOT(receivePacketFromBridge(TMPacketToRead*)));
115
114
116 connect(this->UI, SIGNAL(bridgeHasChanged(selectedBridge)), this, SLOT(bridgeHasChanged(selectedBridge)));
115 connect(this->UI, SIGNAL(bridgeHasChanged(selectedBridge)), this, SLOT(bridgeHasChanged(selectedBridge)));
117
116
118 ((rmappluginPythonWrapper*)this->pyObject)->ccsdsPacketStore = &(this->generalCCSDSPacketStore);
117 ((rmappluginPythonWrapper*)this->pyObject)->ccsdsPacketStore = &(this->generalCCSDSPacketStore);
119 }
118 }
120
119
121 rmapplugin::~rmapplugin()
120 rmapplugin::~rmapplugin()
122 {
121 {
123 switch(currentBridge)
122 switch(currentBridge)
124 {
123 {
125 case selectedBridgeIsGRESB :
124 case selectedBridgeIsGRESB :
126 if (RMAPSend_SOCKET->isOpen()) RMAPSend_SOCKET->disconnectFromHost();
125 if (RMAPSend_SOCKET->isOpen()) RMAPSend_SOCKET->disconnectFromHost();
127 if (RMAPReceive_SOCKET->isOpen()) RMAPReceive_SOCKET->disconnectFromHost();
126 if (RMAPReceive_SOCKET->isOpen()) RMAPReceive_SOCKET->disconnectFromHost();
128 if (GRESBStatusQuery_SOCKET->isOpen()) GRESBStatusQuery_SOCKET->disconnectFromHost();
127 if (GRESBStatusQuery_SOCKET->isOpen()) GRESBStatusQuery_SOCKET->disconnectFromHost();
129 break;
128 break;
130 case selectedBridgeIsStarDundee :
129 case selectedBridgeIsStarDundee :
131 break;
130 break;
132 default:
131 default:
133 break;
132 break;
134 }
133 }
135 }
134 }
136
135
137 unsigned int rmapplugin::Write(unsigned int *Value, unsigned int count, unsigned int address)
136 unsigned int rmapplugin::Write(unsigned int *Value, unsigned int count, unsigned int address)
138 {
137 {
139 unsigned int result;
138 unsigned int result;
140 switch(currentBridge)
139 switch(currentBridge)
141 {
140 {
142 case selectedBridgeIsGRESB :
141 case selectedBridgeIsGRESB :
143 result = UI->gresbBridge->Write(Value, count, address);
142 result = UI->gresbBridge->Write(Value, count, address);
144 break;
143 break;
145 case selectedBridgeIsStarDundee :
144 case selectedBridgeIsStarDundee :
146 result = UI->starDundee->Write(Value, count, address);
145 result = UI->starDundee->Write(Value, count, address);
147 break;
146 break;
148 default:
147 default:
149 result = 1;
148 result = 1;
150 break;
149 break;
151 }
150 }
152 return result;
151 return result;
153 }
152 }
154
153
155 unsigned int rmapplugin::Read(unsigned int *Value, unsigned int count, unsigned int address)
154 unsigned int rmapplugin::Read(unsigned int *Value, unsigned int count, unsigned int address)
156 {
155 {
157 unsigned int result;
156 unsigned int result;
158 switch(currentBridge)
157 switch(currentBridge)
159 {
158 {
160 case selectedBridgeIsGRESB :
159 case selectedBridgeIsGRESB :
161 result = UI->gresbBridge->Read(Value, count, address);
160 result = UI->gresbBridge->Read(Value, count, address);
162 break;
161 break;
163 case selectedBridgeIsStarDundee :
162 case selectedBridgeIsStarDundee :
164 result = UI->starDundee->Read(Value, count, address);
163 result = UI->starDundee->Read(Value, count, address);
165 break;
164 break;
166 default:
165 default:
167 result = 1;
166 result = 1;
168 break;
167 break;
169 }
168 }
170 return result;
169 return result;
171 }
170 }
172
171
173 ////////
172 ////////
174 // SLOTS
173 // SLOTS
175
174
176 unsigned int rmapplugin::WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication) // SLOT
175 unsigned int rmapplugin::WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication) // SLOT
177 {
176 {
178 unsigned int result;
177 unsigned int result;
179 switch(currentBridge)
178 switch(currentBridge)
180 {
179 {
181 case selectedBridgeIsGRESB :
180 case selectedBridgeIsGRESB :
182 result = UI->gresbBridge->WriteSPW(Value, count, targetLogicalAddress, userApplication);
181 result = UI->gresbBridge->WriteSPW(Value, count, targetLogicalAddress, userApplication);
183 break;
182 break;
184 case selectedBridgeIsStarDundee :
183 case selectedBridgeIsStarDundee :
185 result = UI->starDundee->WriteSPW(Value, count, targetLogicalAddress, userApplication);
184 result = UI->starDundee->WriteSPW(Value, count, targetLogicalAddress, userApplication);
186 break;
185 break;
187 default:
186 default:
188 result = 1;
187 result = 1;
189 break;
188 break;
190 }
189 }
191 return result;
190 return result;
192 }
191 }
193
192
194 void rmapplugin::sendCCSDS() // SLOT
195 {
196 unsigned int nbBYTES_application_data = 8;
197 unsigned int count;
198 char *tab;
199 unsigned char packetErrorControl1 = 0xaa;
200 unsigned char packetErrorControl0 = 0xbb;
201
202 ccsds_command = new ccsds(1, 0, 0, nbBYTES_application_data+12, 0, 0, 0, 0, 0); // +12 => packet header 6 bytes + data field header 4 bytes + packet error control 2 bytes
203 /* unsigned char data_field_header,
204 unsigned char processID,
205 unsigned int sequence_count,
206 unsigned int packet_length,
207 unsigned char acceptance,
208 unsigned int completion,
209 unsigned char service_type,
210 unsigned char service_subtype,
211 unsigned char sourceID*/
212
213 count = nbBYTES_application_data+12; // 12 is the size in bytes of the header
214 tab = (char*) malloc(count);
215 tab[0] = ccsds_command->ccsds_header->packetId1;
216 tab[1] = ccsds_command->ccsds_header->packetId0;
217 tab[2] = ccsds_command->ccsds_header->packetSequenceControl1;
218 tab[3] = ccsds_command->ccsds_header->packetSequenceControl0;
219 tab[4] = ccsds_command->ccsds_header->packetLength1;
220 tab[5] = ccsds_command->ccsds_header->packetLength0;
221 tab[6] = ccsds_command->ccsds_header->dataFieldHeader3;
222 tab[7] = ccsds_command->ccsds_header->dataFieldHeader2;
223 tab[8] = ccsds_command->ccsds_header->dataFieldHeader1;
224 tab[9] = ccsds_command->ccsds_header->dataFieldHeader0;
225 tab[10]=0x00;
226 tab[11]=0x00;
227 tab[12]=0x00;
228 tab[13]=0x00;
229 tab[14]=0x00;
230 tab[15]=0x00;
231 tab[nbBYTES_application_data+10] = packetErrorControl1;
232 tab[nbBYTES_application_data+11] = packetErrorControl0;
233
234 WriteSPW(tab, count, UI->CCSDSTargetLogicalAddressSpinBox->value(), 0x00);
235
236 free(tab);
237 }
238
239 void rmapplugin::openBridge()
193 void rmapplugin::openBridge()
240 {
194 {
241 switch(currentBridge)
195 switch(currentBridge)
242 {
196 {
243 case selectedBridgeIsGRESB :
197 case selectedBridgeIsGRESB :
244 this->UI->gresbBridge->Open();
198 this->UI->gresbBridge->Open();
245 break;
199 break;
246 case selectedBridgeIsStarDundee :
200 case selectedBridgeIsStarDundee :
247 this->UI->starDundee->Open();
201 this->UI->starDundee->Open();
248 break;
202 break;
249 default:
203 default:
250 break;
204 break;
251 }
205 }
252 }
206 }
253
207
254 void rmapplugin::closeBridge()
208 void rmapplugin::closeBridge()
255 {
209 {
256 switch(currentBridge)
210 switch(currentBridge)
257 {
211 {
258 case selectedBridgeIsGRESB :
212 case selectedBridgeIsGRESB :
259 this->UI->gresbBridge->Close();
213 this->UI->gresbBridge->Close();
260 break;
214 break;
261 case selectedBridgeIsStarDundee :
215 case selectedBridgeIsStarDundee :
262 this->UI->starDundee->Close();
216 this->UI->starDundee->Close();
263 break;
217 break;
264 default:
218 default:
265 break;
219 break;
266 }
220 }
267 }
221 }
268
222
269 void rmapplugin::send_TC_LFR_UPDATE_TIME()
270 {
271 unsigned int nbBYTES_application_data = 6; // Time at CUC format is on 48 bits / 6 bytes
272 unsigned int count;
273 char *tab;
274 unsigned char packetErrorControl1 = 0xaa;
275 unsigned char packetErrorControl0 = 0xbb;
276
277 ccsds_command = new ccsds(1, 11, 0, nbBYTES_application_data, 1, 1, 9, 129, 0);
278 /* unsigned char data_field_header,
279 unsigned char processID,
280 unsigned int sequence_count,
281 unsigned int packet_length,
282 unsigned char acceptance,
283 unsigned int completion,
284 unsigned char service_type,
285 unsigned char service_subtype,
286 unsigned char sourceID*/
287
288 count = nbBYTES_application_data+12; // +12 => packet header 6 bytes + data field header 4 bytes + packet error control 2 bytes
289 tab = (char*) malloc(count);
290 tab[0] = ccsds_command->ccsds_header->packetId1;
291 tab[1] = ccsds_command->ccsds_header->packetId0;
292 tab[2] = ccsds_command->ccsds_header->packetSequenceControl1;
293 tab[3] = ccsds_command->ccsds_header->packetSequenceControl0;
294 tab[4] = ccsds_command->ccsds_header->packetLength1;
295 tab[5] = ccsds_command->ccsds_header->packetLength0;
296 tab[6] = ccsds_command->ccsds_header->dataFieldHeader3;
297 tab[7] = ccsds_command->ccsds_header->dataFieldHeader2;
298 tab[8] = ccsds_command->ccsds_header->dataFieldHeader1;
299 tab[9] = ccsds_command->ccsds_header->dataFieldHeader0;
300 tab[10] = (unsigned char) (time_COARSE>>24);
301 tab[11] = (unsigned char) (time_COARSE>>18);
302 tab[12] = (unsigned char) (time_COARSE>>8);
303 tab[13] = (unsigned char) (time_COARSE);
304 tab[14] = (unsigned char) (time_FINE>>8);
305 tab[15] = (unsigned char) (time_FINE);
306 tab[nbBYTES_application_data+10] = packetErrorControl1;
307 tab[nbBYTES_application_data+11] = packetErrorControl0;
308
309 WriteSPW(tab, count, UI->CCSDSTargetLogicalAddressSpinBox->value(), 0x00);
310
311 time_COARSE = time_COARSE+1;
312
313 free(tab);
314 }
315
316 void rmapplugin::reset_TC_LFR_UPDATE_TIME()
317 {
318 time_COARSE = 0;
319 time_FINE = 0;
320 }
321
322 void rmapplugin::RMAP_write_reply_setText(QString text)
223 void rmapplugin::RMAP_write_reply_setText(QString text)
323 {
224 {
324 this->UI->RMAP_write_reply->setText(text);
225 this->UI->RMAP_write_reply->setText(text);
325 }
226 }
326
227
327 void rmapplugin::appendToLog(QString text)
228 void rmapplugin::appendToLog(QString text)
328 {
229 {
329 APPENDTOLOG(text);
230 APPENDTOLOG(text);
330 }
231 }
331
232
332 void rmapplugin::setValueTargetAddress(unsigned char newAddress)
233 void rmapplugin::setValueTargetAddress(unsigned char newAddress)
333 {
234 {
334 this->UI->rmapTargetLogicalAddressSpinBox->setValue(newAddress);
235 this->UI->rmapTargetLogicalAddressSpinBox->setValue(newAddress);
335 }
236 }
336
237
337 void rmapplugin::setValueSourceAddress(unsigned char newAddress)
238 void rmapplugin::setValueSourceAddress(unsigned char newAddress)
338 {
239 {
339 this->UI->rmapSourceLogicalAddressSpinBox->setValue(newAddress);
240 this->UI->rmapSourceLogicalAddressSpinBox->setValue(newAddress);
340 }
241 }
341
242
342 void rmapplugin::receivePacketFromBridge(TMPacketToRead *packet)
243 void rmapplugin::receivePacketFromBridge(TMPacketToRead *packet)
343 {
244 {
344 preProcessPacket(packet);
245 preProcessPacket(packet);
345 this->generalCCSDSPacketStore.append(packet);
246 this->generalCCSDSPacketStore.append(packet);
346 this->UI->nbPacketInStore->setText("nb packets in store: " + QString::number(generalCCSDSPacketStore.count()));
247 this->UI->nbPacketInStore->setText("nb packets in store: " + QString::number(generalCCSDSPacketStore.size()));
347 processPacketStore();
248 processPacketStore();
348 }
249 }
349
250
350 void rmapplugin::preProcessPacket(TMPacketToRead *packet)
251 void rmapplugin::preProcessPacket(TMPacketToRead *packet)
351 {
252 {
253 unsigned char pid = 0;
254 unsigned char cat = 0;
352 unsigned char typ = 0;
255 unsigned char typ = 0;
353 unsigned char sub = 0;
256 unsigned char sub = 0;
354 unsigned char sid = 0;
257 unsigned int sid = 0;
355 unsigned char pkt_nr = 0;
258 unsigned int length = 0;
356 unsigned int blk_nr = 0;
259 unsigned int coarse_t = 0;
357 unsigned int i = 0;
260 unsigned int fine_t = 0;
358 unsigned int j = 0;
359 unsigned char *data;
360
261
361 typ = packet->Value[11]; // TYPE
262 //*********************************
362 sub = packet->Value[12]; // SUBTYPE
263 // get the parameters of the packet
264 pid = ((packet->Value[4] & 0x07) << 4) + ((packet->Value[5] & 0xf0) >> 4);
265 cat = packet->Value[5] & 0x0f;
266 typ = packet->Value[11]; // TYPE
267 sub = packet->Value[12]; // SUBTYPE
268 sid = 0;
269 length = packet->Value[8] * 256 + packet->Value[9];
270 coarse_t = packet->Value[14] * pow(2, 24) + packet->Value[15] * pow(2, 16)
271 + packet->Value[16] * pow(2, 8) + packet->Value[17];
272 fine_t = packet->Value[18] * pow(2, 8) + packet->Value[19];
273
274 if ((pid == 76) & (cat == 1) & (typ == 1) & (sub == 8))
275 sid = packet->Value[20] * 256 + packet->Value[21];
276 else if ((pid == 76) & (cat == 12) & (typ == 21) & (sub == 3))
277 sid = packet->Value[20];
278 else if ((pid == 76) & (cat == 4) & (typ == 3) & (sub == 25))
279 sid = 1;
280
281 emit updateStatistics(pid, cat, typ, sub, sid, length, coarse_t, fine_t);
282
283
284 //****************************************
285 // if the packet is a waveform, display it
363 if ( (typ == 21) & (sub == 3) )
286 if ( (typ == 21) & (sub == 3) )
364 {
287 {
365 sid = packet->Value[20]; // SID
288 sid = packet->Value[20]; // SID
366 pkt_nr = packet->Value[23]; // PKT_NR
367 blk_nr = packet->Value[24] * 256 + packet->Value[25];
368 switch (sid){
289 switch (sid){
369 case SID_NORMAL_SWF_F0:
290 case SID_NORMAL_SWF_F0:
370 emit displayOnConsole("wf packet received, sid: " + QString::number(sid)
291 buildWFAndDisplay(packet, &wfPacketNormal[0], 0);
371 + ", pkt_nr: " + QString::number(pkt_nr)
372 + ", blk_nr: " + QString::number(blk_nr)
373 );
374 data = &packet->Value[26]; // start of the first data block;
375 j = (pkt_nr-1) * 340;
376 for ( i=0; i<blk_nr; i++ ){
377 normal_swf_f0_v[j + i] = (short) ( (data[i * BLK_SIZE ] << 8) + (data[i*BLK_SIZE + 1]) );
378 normal_swf_f0_e1[j + i] = (short) ( (data[i * BLK_SIZE + 2] << 8) + (data[i*BLK_SIZE + 3]) );
379 normal_swf_f0_e2[j + i] = (short) ( (data[i * BLK_SIZE + 4] << 8) + (data[i*BLK_SIZE + 5]) );
380 normal_swf_f0_b1[j + i] = (short) ( (data[i * BLK_SIZE + 6] << 8) + (data[i*BLK_SIZE + 7]) );
381 normal_swf_f0_b2[j + i] = (short) ( (data[i * BLK_SIZE + 8] << 8) + (data[i*BLK_SIZE + 9]) );
382 normal_swf_f0_b3[j + i] = (short) ( (data[i * BLK_SIZE + 10] << 8) + (data[i*BLK_SIZE + 11]) );
383 }
384 if (pkt_nr == 7)
385 {
386 emit displayOnConsole("all packets received, display waveform");
387 this->UI->wfDisplay->displayOnPlot(normal_swf_f0_v, 0);
388 this->UI->wfDisplay->displayOnPlot(normal_swf_f0_e1, 1);
389 this->UI->wfDisplay->displayOnPlot(normal_swf_f0_e2, 2);
390 this->UI->wfDisplay->displayOnPlot(normal_swf_f0_b1, 3);
391 }
392 break;
292 break;
393 case SID_NORMAL_SWF_F1:
293 case SID_NORMAL_SWF_F1:
294 buildWFAndDisplay(packet, &wfPacketNormal[1], 1);
394 break;
295 break;
395 case SID_NORMAL_SWF_F2:
296 case SID_NORMAL_SWF_F2:
297 buildWFAndDisplay(packet, &wfPacketNormal[2], 2);
396 break;
298 break;
397 case SID_NORMAL_CWF_F3:
299 case SID_NORMAL_CWF_F3:
300 buildWFAndDisplay(packet, &wfPacketNormal[3], 3);
398 break;
301 break;
399 }
302 }
400 }
303 }
401 }
304 }
402
305
306 void rmapplugin::nbPacketHasChanged(int nb)
307 {
308 this->UI->nbPacketInStore->setText("nb packets in store: " + QString::number(nb));
309 }
310
311 void rmapplugin::buildWFAndDisplay(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page)
312 {
313 unsigned int i = 0;
314 unsigned int j = 0;
315 unsigned char *data;
316 unsigned char pkt_nr = 0;
317 unsigned int blk_nr = 0;
318
319 pkt_nr = packet->Value[23]; // PKT_NR
320 blk_nr = packet->Value[24] * 256 + packet->Value[25];
321 data = &packet->Value[26]; // start of the first data block;
322 j = (pkt_nr-1) * 340;
323 for ( i=0; i<blk_nr; i++ ){
324 wfPacket->wf_v[j + i] = (short) ( (data[i * BLK_SIZE ] << 8) + (data[i*BLK_SIZE + 1]) );
325 wfPacket->wf_e1[j + i] = (short) ( (data[i * BLK_SIZE + 2] << 8) + (data[i*BLK_SIZE + 3]) );
326 wfPacket->wf_e2[j + i] = (short) ( (data[i * BLK_SIZE + 4] << 8) + (data[i*BLK_SIZE + 5]) );
327 wfPacket->wf_b1[j + i] = (short) ( (data[i * BLK_SIZE + 6] << 8) + (data[i*BLK_SIZE + 7]) );
328 wfPacket->wf_b2[j + i] = (short) ( (data[i * BLK_SIZE + 8] << 8) + (data[i*BLK_SIZE + 9]) );
329 wfPacket->wf_b3[j + i] = (short) ( (data[i * BLK_SIZE + 10] << 8) + (data[i*BLK_SIZE + 11]) );
330 }
331 if (pkt_nr == 7)
332 {
333 emit displayOnConsole("all packets received, display waveform f" + QString::number(num_page));
334 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_v, num_page, 0);
335 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_e1, num_page, 1);
336 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_e2, num_page, 2);
337 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b1, num_page, 3);
338 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b2, num_page, 4);
339 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b3, num_page, 5);
340 }
341 }
342
403 /////////////////////
343 /////////////////////
404 // INTERNAL FUNCTIONS
344 // INTERNAL FUNCTIONS
405
345
406 void rmapplugin::processCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size) // SLOT
346 void rmapplugin::processCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size) // SLOT
407 {
347 {
408 QString message;
348 QString message;
409 unsigned int fine_time_value = 0;
349 unsigned int fine_time_value = 0;
410 fine_time_value = ((unsigned int) ccsdsPacket[7]<<24)
350 fine_time_value = ((unsigned int) ccsdsPacket[7]<<24)
411 + ((unsigned int) ccsdsPacket[6]<<16)
351 + ((unsigned int) ccsdsPacket[6]<<16)
412 + ((unsigned int) ccsdsPacket[5]<<8)
352 + ((unsigned int) ccsdsPacket[5]<<8)
413 + ((unsigned int) ccsdsPacket[4]);
353 + ((unsigned int) ccsdsPacket[4]);
414 message.append(QTime::currentTime().toString() +":" + QString::number(QTime::currentTime().msec()) + ": ");
354 message.append(QTime::currentTime().toString() +":" + QString::number(QTime::currentTime().msec()) + ": ");
415 message.append("size "
355 message.append("size "
416 + QString::number(size)
356 + QString::number(size)
417 +" *** header "
357 +" *** header "
418 + QString::number(ccsdsPacket[0], 16)
358 + QString::number(ccsdsPacket[0], 16)
419 + " "
359 + " "
420 + QString::number(ccsdsPacket[1], 16)
360 + QString::number(ccsdsPacket[1], 16)
421 + " "
361 + " "
422 + QString::number(ccsdsPacket[2], 16)
362 + QString::number(ccsdsPacket[2], 16)
423 + " "
363 + " "
424 + QString::number(ccsdsPacket[3], 16)
364 + QString::number(ccsdsPacket[3], 16)
425 + " *** coarse time "
365 + " *** coarse time "
426 + QString::number(fine_time_value));
366 + QString::number(fine_time_value));
427 //+ QString::number(ccsdsPacket[4], 16)
367 //+ QString::number(ccsdsPacket[4], 16)
428 //+" "
368 //+" "
429 //+ QString::number(ccsdsPacket[5], 16)
369 //+ QString::number(ccsdsPacket[5], 16)
430 //+" "
370 //+" "
431 //+ QString::number(ccsdsPacket[6], 16)
371 //+ QString::number(ccsdsPacket[6], 16)
432 //+" "
372 //+" "
433 //+ QString::number(ccsdsPacket[7], 16));
373 //+ QString::number(ccsdsPacket[7], 16));
434 displayOnConsole(message);
374 displayOnConsole(message);
435 //((rmappluginPythonWrapper*)this->pyObject)->storeCCSDSPacket(ccsdsPacket, size);
375 //((rmappluginPythonWrapper*)this->pyObject)->storeCCSDSPacket(ccsdsPacket, size);
436 emit ccsdsPacketIsProcessed();
376 emit ccsdsPacketIsProcessed();
437 }
377 }
438
378
439 void rmapplugin::processPacketStore()
379 void rmapplugin::processPacketStore()
440 {
380 {
441 ((rmappluginPythonWrapper*)this->pyObject)->processPacketStore();
381 ((rmappluginPythonWrapper*)this->pyObject)->processPacketStore();
442 }
382 }
443
383
444 int rmapplugin::fetchPacket()
384 int rmapplugin::fetchPacket()
445 {
385 {
446 int ret = 0;
386 int ret = 0;
447
387
448 switch(currentBridge)
388 switch(currentBridge)
449 {
389 {
450 case selectedBridgeIsGRESB :
390 case selectedBridgeIsGRESB :
451 break;
391 break;
452 case selectedBridgeIsStarDundee :
392 case selectedBridgeIsStarDundee :
453 ret = this->UI->starDundee->receiveSPWPacketLoop();
393 ret = this->UI->starDundee->receiveSPWPacketLoop();
454 break;
394 break;
455 default:
395 default:
456 break;
396 break;
457 }
397 }
458
398
459 return ret;
399 return ret;
460 }
400 }
@@ -1,104 +1,103
1 /*------------------------------------------------------------------------------
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the LPPMON Software
2 -- This file is a part of the LPPMON Software
3 -- Copyright (C) 2011, Laboratory of Plasmas Physic - CNRS
3 -- Copyright (C) 2011, Laboratory of Plasmas Physic - CNRS
4 --
4 --
5 -- This program is free software; you can redistribute it and/or modify
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
8 -- (at your option) any later version.
9 --
9 --
10 -- This program is distributed in the hope that it will be useful,
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
13 -- GNU General Public License for more details.
14 --
14 --
15 -- You should have received a copy of the GNU General Public License
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------*/
18 -------------------------------------------------------------------------------*/
19 /*-- Author : Alexis Jeandet
19 /*-- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
21 ----------------------------------------------------------------------------*/
21 ----------------------------------------------------------------------------*/
22 #ifndef DRIVER1_H
22 #ifndef DRIVER1_H
23 #define DRIVER1_H
23 #define DRIVER1_H
24 #include <rmappluginui.h>
24 #include <rmappluginui.h>
25 #include <rmapoperations.h>
25 #include <rmapoperations.h>
26 #include <QMenuBar>
26 #include <QMenuBar>
27 #include <QMenu>
27 #include <QMenu>
28 #include <QAction>
28 #include <QAction>
29 #include <QMainWindow>
29 #include <QMainWindow>
30 #include <QTcpSocket>
30 #include <QTcpSocket>
31 #include <QTime>
31 #include <QTime>
32 #include <ccsds.h>
32 #include <ccsds.h>
33 #include <QSemaphore>
33 #include <QSemaphore>
34 #include <wfpacket.h>
34
35
35 #include <lppmonplugin.h>
36 #include <lppmonplugin.h>
36
37
37 #include "tmpackettoread.h"
38 #include "tmpackettoread.h"
38
39
39 #define APPENDTOLOG(message) this->UI->appendToLogFile(QTime::currentTime().toString() +":" + QString::number(QTime::currentTime().msec()) + ": " + message)
40 #define APPENDTOLOG(message) this->UI->appendToLogFile(QTime::currentTime().toString() +":" + QString::number(QTime::currentTime().msec()) + ": " + message)
40
41
41 #define READ_WRITE_MAX_COUNTS 4096 // in words
42 #define READ_WRITE_MAX_COUNTS 4096 // in words
42 #define RMAP_MAX_DATA_LENGTH 4*READ_WRITE_MAX_COUNTS // in bytes, shall be lower than the limit size of SPW packet of the GRESB bridge
43 #define RMAP_MAX_DATA_LENGTH 4*READ_WRITE_MAX_COUNTS // in bytes, shall be lower than the limit size of SPW packet of the GRESB bridge
43 #define RMAP_READ_REPLY_HEADER_LENGTH 12 // in bytes => ECSS
44 #define RMAP_READ_REPLY_HEADER_LENGTH 12 // in bytes => ECSS
44 #define RMAP_READ_COMMAND_HEADER_LENGTH 16 // in bytes => ECSS
45 #define RMAP_READ_COMMAND_HEADER_LENGTH 16 // in bytes => ECSS
45 #define RMAP_DATA_CRC_LENGTH 1 // in bytes => ECSS
46 #define RMAP_DATA_CRC_LENGTH 1 // in bytes => ECSS
46 #define CCSDS_MAX_PACKET_LENGTH 4412 // in bytes, specified in the LFR Software Requirements Specification
47 #define CCSDS_MAX_PACKET_LENGTH 4412 // in bytes, specified in the LFR Software Requirements Specification
47
48
48 class rmapplugin : public lppmonplugin
49 class rmapplugin : public lppmonplugin
49 {
50 {
50 Q_OBJECT
51 Q_OBJECT
51 public:
52 public:
52 explicit rmapplugin(QWidget *parent = 0);
53 explicit rmapplugin(QWidget *parent = 0);
53 ~rmapplugin();
54 ~rmapplugin();
54 QList<TMPacketToRead*> generalCCSDSPacketStore;
55 QList<TMPacketToRead*> generalCCSDSPacketStore;
55 void preProcessPacket(TMPacketToRead *packet);
56 void preProcessPacket(TMPacketToRead *packet);
56 short normal_swf_f0_v[2048];
57 WFPacket wfPacketNormal[4];
57 short normal_swf_f0_e1[2048];
58 void buildWFAndDisplay(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page);
58 short normal_swf_f0_e2[2048];
59 short normal_swf_f0_b1[2048];
60 short normal_swf_f0_b2[2048];
61 short normal_swf_f0_b3[2048];
62
59
63 public slots:
60 public slots:
64 unsigned int Write(unsigned int *Value,unsigned int count,unsigned int address=0);
61 unsigned int Write(unsigned int *Value,unsigned int count,unsigned int address=0);
65 unsigned int Read(unsigned int *Value,unsigned int count,unsigned int address=0);
62 unsigned int Read(unsigned int *Value,unsigned int count,unsigned int address=0);
66 unsigned int WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication);
63 unsigned int WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication);
67 void setValueTargetAddress(unsigned char newAddress);
64 void setValueTargetAddress(unsigned char newAddress);
68 void setValueSourceAddress(unsigned char newAddress);
65 void setValueSourceAddress(unsigned char newAddress);
69 void openBridge();
66 void openBridge();
70 void closeBridge();
67 void closeBridge();
71 void processCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size);
68 void processCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size);
72 void processPacketStore();
69 void processPacketStore();
73 void updatePacketStore(selectedBridge bridge);
70 void updatePacketStore(selectedBridge bridge);
71 void nbPacketHasChanged(int nb);
74 int fetchPacket();
72 int fetchPacket();
75 void receivePacketFromBridge(TMPacketToRead* packet);
73 void receivePacketFromBridge(TMPacketToRead* packet);
76 //
74 //
77 void sendCCSDS();
78 void send_TC_LFR_UPDATE_TIME();
79 void reset_TC_LFR_UPDATE_TIME();
80 void displayOnConsole(QString message) {this->UI->console->append(message);}
75 void displayOnConsole(QString message) {this->UI->console->append(message);}
81 //
76 //
82 void RMAP_write_reply_setText(QString text);
77 void RMAP_write_reply_setText(QString text);
83 void appendToLog(QString text);
78 void appendToLog(QString text);
84 //
79 //
85 void activatePlugin(bool flag) {emit activateSig(flag);}
80 void activatePlugin(bool flag) {emit activateSig(flag);}
86 void bridgeHasChanged(selectedBridge bridge) {currentBridge = bridge;}
81 void bridgeHasChanged(selectedBridge bridge) {currentBridge = bridge;}
87
82
88 signals:
83 signals:
89 void ccsdsPacketIsProcessed();
84 void ccsdsPacketIsProcessed();
85 void updateStatistics(unsigned char pid, unsigned char cat,
86 unsigned char typ, unsigned char sub,
87 unsigned int sid, unsigned int length,
88 unsigned int coarse_t, unsigned int fine_t);
90
89
91 private:
90 private:
92 selectedBridge currentBridge;
91 selectedBridge currentBridge;
93 rmapPluginUI* UI;
92 rmapPluginUI* UI;
94 QTcpSocket* GRESBStatusQuery_SOCKET;
93 QTcpSocket* GRESBStatusQuery_SOCKET;
95 QTcpSocket* RMAPSend_SOCKET;
94 QTcpSocket* RMAPSend_SOCKET;
96 QTcpSocket* RMAPReceive_SOCKET;
95 QTcpSocket* RMAPReceive_SOCKET;
97 ccsds* ccsds_command;
96 ccsds* ccsds_command;
98 unsigned int rmapPacketSize;
97 unsigned int rmapPacketSize;
99 unsigned int time_COARSE;
98 unsigned int time_COARSE;
100 unsigned int time_FINE;
99 unsigned int time_FINE;
101 char timeCode;
100 char timeCode;
102 };
101 };
103
102
104 #endif // DRIVER1_H
103 #endif // DRIVER1_H
@@ -1,74 +1,81
1 #
1 #
2 # Project created by QtCreator 2011-09-20T08:15:30
2 # Project created by QtCreator 2011-09-20T08:15:30
3 #
3 #
4 #-------------------------------------------------
4 #-------------------------------------------------
5
5
6 #include(/etc/lppmon/lppmonplugin.prf)
6 #include(/etc/lppmon/lppmonplugin.prf)
7 CONFIG += lppmonplugin
7 CONFIG += lppmonplugin
8 TARGET = rmapplugin
8 TARGET = rmapplugin
9
9
10 DEFINES += PLUGIN=rmapplugin
10 DEFINES += PLUGIN=rmapplugin
11 DEFINES += PLUGINHEADER="\"\\\"rmapplugin.h"\\\"\"
11 DEFINES += PLUGINHEADER="\"\\\"rmapplugin.h"\\\"\"
12 DEFINES += driver_Name="\"\\\"RMAPPlugin"\\\"\"
12 DEFINES += driver_Name="\"\\\"RMAPPlugin"\\\"\"
13 DEFINES += driver_Author="\"\\\"Paul Leroy paul.leroy@lpp.polytechnique.fr"\\\"\"
13 DEFINES += driver_Author="\"\\\"Paul Leroy paul.leroy@lpp.polytechnique.fr"\\\"\"
14 DEFINES += driver_Version="\"\\\"1.1.2"\\\"\"
14 DEFINES += driver_Version="\"\\\"1.1.2"\\\"\"
15 DEFINES += driver_Description="\"\\\"AHB bus controler, works with Gaisler's AHB plugn' play bus."\\\"\"
15 DEFINES += driver_Description="\"\\\"AHB bus controler, works with Gaisler's AHB plugn' play bus."\\\"\"
16 DEFINES += driver_can_be_root=1
16 DEFINES += driver_can_be_root=1
17 DEFINES += driver_can_be_child=0
17 DEFINES += driver_can_be_child=0
18 DEFINES += driver_VID=0
18 DEFINES += driver_VID=0
19 DEFINES += driver_PID=0
19 DEFINES += driver_PID=0
20
20
21 QT += network
21 QT += network
22
22
23 LIBS += ../spw_usb_driver_v2.63/lib/x86_64/libSpaceWireUSBAPI.so \
23 LIBS += ../spw_usb_driver_v2.63/lib/x86_64/libSpaceWireUSBAPI.so \
24 ../spw_usb_driver_v2.63/lib/x86_64/libConfigLibraryUSB.so
24 ../spw_usb_driver_v2.63/lib/x86_64/libConfigLibraryUSB.so
25
25
26
26
27 INCLUDEPATH += \
27 INCLUDEPATH += \
28 $${PWD} \
28 $${PWD} \
29 ../common_PLE \
29 ../common_PLE \
30 ../spw_usb_driver_v2.63/inc
30 ../spw_usb_driver_v2.63/inc
31
31
32
32
33 HEADERS += \
33 HEADERS += \
34 rmappluginui.h \
34 rmappluginui.h \
35 rmapplugin.h \
35 rmapplugin.h \
36 rmapoperations.h \
36 rmapoperations.h \
37 ccsds.h \
37 ccsds.h \
38 ../common_PLE/qipdialogbox.h \
38 ../common_PLE/qipdialogbox.h \
39 ../common_PLE/gresbstatusenquiry.h \
39 ../common_PLE/gresbstatusenquiry.h \
40 spectralmatricesdmasimulator.h \
41 rmappluginpythonwrapper.h \
40 rmappluginpythonwrapper.h \
42 stardundee.h \
41 stardundee.h \
43 ../spw_usb_driver_v2.61/inc/spw_usb_api.h \
42 ../spw_usb_driver_v2.61/inc/spw_usb_api.h \
44 ../spw_usb_driver_v2.61/inc/spw_config_library.h \
43 ../spw_usb_driver_v2.61/inc/spw_config_library.h \
45 gresb.h \
44 gresb.h \
46 tcpackettosend.h \
45 tcpackettosend.h \
47 tmpackettoread.h \
46 tmpackettoread.h \
48 wfdisplay.h
47 wfdisplay.h \
48 tmstatistics.h \
49 wfplot.h \
50 wfpage.h \
51 wfpacket.h \
52 params.h
49
53
50
54
51 SOURCES += \
55 SOURCES += \
52 rmapplugin.cpp \
56 rmapplugin.cpp \
53 rmappluginui.cpp \
57 rmappluginui.cpp \
54 rmapoperations.cpp \
58 rmapoperations.cpp \
55 ccsds.cpp \
59 ccsds.cpp \
56 ../common_PLE/qipdialogbox.cpp \
60 ../common_PLE/qipdialogbox.cpp \
57 ../common_PLE/gresbstatusenquiry.cpp \
61 ../common_PLE/gresbstatusenquiry.cpp \
58 spectralmatricesdmasimulator.cpp \
59 rmappluginpythonwrapper.cpp \
62 rmappluginpythonwrapper.cpp \
60 stardundee.cpp \
63 stardundee.cpp \
61 gresb.cpp \
64 gresb.cpp \
62 tcpackettosend.cpp \
65 tcpackettosend.cpp \
63 tmpackettoread.cpp \
66 tmpackettoread.cpp \
64 wfdisplay.cpp
67 wfdisplay.cpp \
68 tmstatistics.cpp \
69 wfplot.cpp \
70 wfpage.cpp \
71 wfpacket.cpp
65
72
66
73
67
74
68
75
69
76
70
77
71
78
72
79
73
80
74
81
@@ -1,146 +1,146
1 #include "rmappluginpythonwrapper.h"
1 #include "rmappluginpythonwrapper.h"
2 #include <math.h>
2 #include <math.h>
3 #include <QApplication>
3 #include <QApplication>
4
4
5 rmappluginPythonWrapper::rmappluginPythonWrapper(QObject *parent) :
5 rmappluginPythonWrapper::rmappluginPythonWrapper(QObject *parent) :
6 genericPySysdriver(parent)
6 genericPySysdriver(parent)
7 {
7 {
8 timer = new QTimer;
8 timer = new QTimer;
9 timer->setSingleShot(true);
9 timer->setSingleShot(true);
10 connect(timer, SIGNAL(timeout()), this, SLOT(sendTC()));
10 connect(timer, SIGNAL(timeout()), this, SLOT(sendTC()));
11 connect(this, SIGNAL(activateTCLoopSig()), this, SLOT(sendTCLoop()));
11 connect(this, SIGNAL(activateTCLoopSig()), this, SLOT(sendTCLoop()));
12 }
12 }
13
13
14 QList<QVariant> rmappluginPythonWrapper::ReadSPW(unsigned int size) // size is not used
14 QList<QVariant> rmappluginPythonWrapper::ReadSPW(unsigned int size) // size is not used
15 {
15 {
16 QList<QVariant> result;
16 QList<QVariant> result;
17 TMPacketToRead *ccsdsPacket;
17 TMPacketToRead *ccsdsPacket;
18
18
19 if (!ccsdsPacketStore->isEmpty())
19 if (!ccsdsPacketStore->isEmpty())
20 {
20 {
21 ccsdsPacket = ccsdsPacketStore->takeFirst();
21 ccsdsPacket = ccsdsPacketStore->takeFirst();
22 for(unsigned int i = 0;i<ccsdsPacket->size;i++)
22 for(unsigned int i = 0;i<ccsdsPacket->size;i++)
23 {
23 {
24 result.append((QVariant)ccsdsPacket->Value[i]);
24 result.append((QVariant)ccsdsPacket->Value[i]);
25 }
25 }
26 delete(ccsdsPacket);
26 delete(ccsdsPacket);
27 }
27 }
28
28 emit nbPacketHasChanged(ccsdsPacketStore->size());
29 return result;
29 return result;
30 }
30 }
31
31
32 void rmappluginPythonWrapper::WriteSPW(QList<int> dataList)
32 void rmappluginPythonWrapper::WriteSPW(QList<int> dataList)
33 {
33 {
34 char targetLogicalAddress;
34 char targetLogicalAddress;
35 char userApplication;
35 char userApplication;
36 unsigned int count;
36 unsigned int count;
37 char *Value;
37 char *Value;
38
38
39 unsigned char data[dataList.count()];
39 unsigned char data[dataList.count()];
40
40
41 for(int i = 0; i<dataList.count(); i++) // get the data as unsigned char
41 for(int i = 0; i<dataList.count(); i++) // get the data as unsigned char
42 {
42 {
43 data[i] = (unsigned char)dataList.at(i);
43 data[i] = (unsigned char)dataList.at(i);
44 }
44 }
45 // read the first bytes of the data to get the targetLogicalAddress and the userApplication parameters
45 // read the first bytes of the data to get the targetLogicalAddress and the userApplication parameters
46 targetLogicalAddress = data[0];
46 targetLogicalAddress = data[0];
47 userApplication = data[3];
47 userApplication = data[3];
48
48
49 count = dataList.count() - 4; // the CCSDS header (4 bytes) is added by LPPMON
49 count = dataList.count() - 4; // the CCSDS header (4 bytes) is added by LPPMON
50 Value = (char*) &data[4];
50 Value = (char*) &data[4];
51
51
52 emit WriteSPWSig(Value, count, targetLogicalAddress, userApplication);
52 emit WriteSPWSig(Value, count, targetLogicalAddress, userApplication);
53 }
53 }
54
54
55 void rmappluginPythonWrapper::WriteSPWDelay(QList<int> dataList, unsigned int delay)
55 void rmappluginPythonWrapper::WriteSPWDelay(QList<int> dataList, unsigned int delay)
56 {
56 {
57 char targetLogicalAddress;
57 char targetLogicalAddress;
58 char userApplication;
58 char userApplication;
59 unsigned int count;
59 unsigned int count;
60 char *Value;
60 char *Value;
61 TCPacketToSend *packet;
61 TCPacketToSend *packet;
62
62
63 unsigned char data[dataList.count()];
63 unsigned char data[dataList.count()];
64
64
65 for(int i = 0; i<dataList.count(); i++) // get the data as unsigned char
65 for(int i = 0; i<dataList.count(); i++) // get the data as unsigned char
66 {
66 {
67 data[i] = (unsigned char)dataList.at(i);
67 data[i] = (unsigned char)dataList.at(i);
68 }
68 }
69 // read the first bytes of the data to get the targetLogicalAddress and the userApplication parameters
69 // read the first bytes of the data to get the targetLogicalAddress and the userApplication parameters
70 targetLogicalAddress = data[0];
70 targetLogicalAddress = data[0];
71 userApplication = data[3];
71 userApplication = data[3];
72
72
73 count = dataList.count() - 4; // the CCSDS header (4 bytes) is added by LPPMON
73 count = dataList.count() - 4; // the CCSDS header (4 bytes) is added by LPPMON
74 Value = (char*) &data[4];
74 Value = (char*) &data[4];
75
75
76 packet = new TCPacketToSend(Value, count, targetLogicalAddress, userApplication, delay);
76 packet = new TCPacketToSend(Value, count, targetLogicalAddress, userApplication, delay);
77 TCPacketStore.append(packet);
77 TCPacketStore.append(packet);
78
78
79 emit(activateTCLoopSig());
79 emit(activateTCLoopSig());
80
80
81 }
81 }
82
82
83 void rmappluginPythonWrapper::processPacketStoreLater(unsigned int delay)
83 void rmappluginPythonWrapper::processPacketStoreLater(unsigned int delay)
84 {
84 {
85 emit sendMessage(
85 emit sendMessage(
86 "*** process packet store in " + QString::number(delay) + " ms"
86 "*** process packet store in " + QString::number(delay) + " ms"
87 );
87 );
88 QTimer::singleShot(delay, this, SLOT(sendProcessPacketStoreNowSig()));
88 QTimer::singleShot(delay, this, SLOT(sendProcessPacketStoreNowSig()));
89 }
89 }
90
90
91 void rmappluginPythonWrapper::sendTCLoop()
91 void rmappluginPythonWrapper::sendTCLoop()
92 {
92 {
93 unsigned int delay;
93 unsigned int delay;
94
94
95 if (!timer->isActive())
95 if (!timer->isActive())
96 {
96 {
97 if (!TCPacketStore.isEmpty())
97 if (!TCPacketStore.isEmpty())
98 {
98 {
99 delay = TCPacketStore.at(0)->delay;
99 delay = TCPacketStore.at(0)->delay;
100 timer->setInterval(delay);
100 timer->setInterval(delay);
101 timer->start();
101 timer->start();
102 }
102 }
103 }
103 }
104 }
104 }
105
105
106 void rmappluginPythonWrapper::sendTC()
106 void rmappluginPythonWrapper::sendTC()
107 {
107 {
108 TCPacketToSend *packet;
108 TCPacketToSend *packet;
109 unsigned int delay;
109 unsigned int delay;
110
110
111 packet = TCPacketStore.takeFirst();
111 packet = TCPacketStore.takeFirst();
112 // the signal is connected with the option Qt::DirectConnection, thus it is processed immediately
112 // the signal is connected with the option Qt::DirectConnection, thus it is processed immediately
113 emit(WriteSPWSig(packet->Value, packet->count,packet->targetLogicalAddress, packet->userApplication));
113 emit(WriteSPWSig(packet->Value, packet->count,packet->targetLogicalAddress, packet->userApplication));
114 delete(packet);
114 delete(packet);
115 if (!TCPacketStore.isEmpty())
115 if (!TCPacketStore.isEmpty())
116 {
116 {
117 delay = TCPacketStore.at(0)->delay;
117 delay = TCPacketStore.at(0)->delay;
118 timer->setInterval(delay);
118 timer->setInterval(delay);
119 timer->start();
119 timer->start();
120 }
120 }
121 }
121 }
122
122
123 void rmappluginPythonWrapper::processPacketStore()
123 void rmappluginPythonWrapper::processPacketStore()
124 {
124 {
125 emit ccsdsPacketIsAvailable(ccsdsPacketStore->at(0)->size);
125 emit ccsdsPacketIsAvailable(ccsdsPacketStore->at(0)->size);
126 }
126 }
127
127
128 void rmappluginPythonWrapper::setTargetAddressValue(unsigned int address)
128 void rmappluginPythonWrapper::setTargetAddressValue(unsigned int address)
129 {
129 {
130 unsigned char newAddress;
130 unsigned char newAddress;
131 newAddress = (unsigned char) address;
131 newAddress = (unsigned char) address;
132 emit updateTargetAddress(newAddress);
132 emit updateTargetAddress(newAddress);
133 }
133 }
134
134
135 void rmappluginPythonWrapper::setSourceAddressValue(unsigned int address)
135 void rmappluginPythonWrapper::setSourceAddressValue(unsigned int address)
136 {
136 {
137 unsigned char newAddress;
137 unsigned char newAddress;
138 newAddress = (unsigned char) address;
138 newAddress = (unsigned char) address;
139 emit updateSourceAddress(newAddress);
139 emit updateSourceAddress(newAddress);
140 }
140 }
141
141
142 void rmappluginPythonWrapper::ProcessPendingEvents()
142 void rmappluginPythonWrapper::ProcessPendingEvents()
143 {
143 {
144 QCoreApplication::processEvents();
144 QCoreApplication::processEvents();
145 }
145 }
146
146
@@ -1,57 +1,58
1 #ifndef RMAPPLUGINPYTHONWRAPPER_H
1 #ifndef RMAPPLUGINPYTHONWRAPPER_H
2 #define RMAPPLUGINPYTHONWRAPPER_H
2 #define RMAPPLUGINPYTHONWRAPPER_H
3
3
4 #include <QObject>
4 #include <QObject>
5 #include <genericPySysdriver.h>
5 #include <genericPySysdriver.h>
6 #include <QList>
6 #include <QList>
7 #include <QVariant>
7 #include <QVariant>
8 #include "rmapoperations.h"
8 #include "rmapoperations.h"
9 #include "ccsds.h"
9 #include "ccsds.h"
10 #include <tcpackettosend.h>
10 #include <tcpackettosend.h>
11 #include <tmpackettoread.h>
11 #include <tmpackettoread.h>
12 #include <QTimer>
12 #include <QTimer>
13
13
14 class rmappluginPythonWrapper : public genericPySysdriver
14 class rmappluginPythonWrapper : public genericPySysdriver
15 {
15 {
16 Q_OBJECT
16 Q_OBJECT
17 public:
17 public:
18 explicit rmappluginPythonWrapper(QObject *parent = 0);
18 explicit rmappluginPythonWrapper(QObject *parent = 0);
19
19
20 QList<TMPacketToRead*> *ccsdsPacketStore;
20 QList<TMPacketToRead*> *ccsdsPacketStore;
21 void processPacketStore();
21 void processPacketStore();
22 unsigned int storeCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size);
22 unsigned int storeCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size);
23
23
24 QList<TCPacketToSend*> TCPacketStore;
24 QList<TCPacketToSend*> TCPacketStore;
25 QTimer *timer;
25 QTimer *timer;
26
26
27 signals:
27 signals:
28 void ccsdsPacketIsAvailable(unsigned int size);
28 void ccsdsPacketIsAvailable(unsigned int size);
29 void wakeUpCallingThread();
29 void wakeUpCallingThread();
30 unsigned int WriteSPWSig(char *Value, unsigned int count, char targetLogicalAddress, char userApplication);
30 unsigned int WriteSPWSig(char *Value, unsigned int count, char targetLogicalAddress, char userApplication);
31 void updateTargetAddress(unsigned char newAddress);
31 void updateTargetAddress(unsigned char newAddress);
32 void updateSourceAddress(unsigned char newAddress);
32 void updateSourceAddress(unsigned char newAddress);
33 void activateTCLoopSig();
33 void activateTCLoopSig();
34 void processPacketStoreNowSig();
34 void processPacketStoreNowSig();
35 void sendMessage(QString message);
35 void sendMessage(QString message);
36 int fetchPacketSig();
36 int fetchPacketSig();
37 void nbPacketHasChanged(int nb);
37
38
38 public slots:
39 public slots:
39 QList<QVariant> ReadSPW(unsigned int size=0);
40 QList<QVariant> ReadSPW(unsigned int size=0);
40 int fetchPacket() {return emit fetchPacketSig();}
41 int fetchPacket() {return emit fetchPacketSig();}
41 void WriteSPW(QList<int> dataList);
42 void WriteSPW(QList<int> dataList);
42 void WriteSPWDelay(QList<int> dataList, unsigned int delay=0);
43 void WriteSPWDelay(QList<int> dataList, unsigned int delay=0);
43 void processPacketStoreLater(unsigned int delay);
44 void processPacketStoreLater(unsigned int delay);
44 void sendProcessPacketStoreNowSig(){emit processPacketStoreNowSig();}
45 void sendProcessPacketStoreNowSig(){emit processPacketStoreNowSig();}
45 void sendTCLoop();
46 void sendTCLoop();
46 void sendTC();
47 void sendTC();
47 void reEmitWriteSPWSig(char *Value, unsigned int count, char targetLogicalAddress, char userApplication)
48 void reEmitWriteSPWSig(char *Value, unsigned int count, char targetLogicalAddress, char userApplication)
48 {emit WriteSPWSig(Value, count, targetLogicalAddress, userApplication);}
49 {emit WriteSPWSig(Value, count, targetLogicalAddress, userApplication);}
49
50
50 void setTargetAddressValue(unsigned int address);
51 void setTargetAddressValue(unsigned int address);
51 void setSourceAddressValue(unsigned int address);
52 void setSourceAddressValue(unsigned int address);
52 void ProcessPendingEvents();
53 void ProcessPendingEvents();
53 void BlockAllSignals();
54 void BlockAllSignals();
54
55
55 };
56 };
56
57
57 #endif // RMAPPLUGINPYTHONWRAPPER_H
58 #endif // RMAPPLUGINPYTHONWRAPPER_H
@@ -1,309 +1,290
1 /*------------------------------------------------------------------------------
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the LPPMON Software
2 -- This file is a part of the LPPMON Software
3 -- Copyright (C) 2011, Laboratory of Plasmas Physic - CNRS
3 -- Copyright (C) 2011, Laboratory of Plasmas Physic - CNRS
4 --
4 --
5 -- This program is free software; you can redistribute it and/or modify
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
8 -- (at your option) any later version.
9 --
9 --
10 -- This program is distributed in the hope that it will be useful,
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
13 -- GNU General Public License for more details.
14 --
14 --
15 -- You should have received a copy of the GNU General Public License
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------*/
18 -------------------------------------------------------------------------------*/
19 /*-- Author : Alexis Jeandet
19 /*-- Author : Alexis Jeandet
20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
20 -- Mail : alexis.jeandet@lpp.polytechnique.fr
21 ----------------------------------------------------------------------------*/
21 ----------------------------------------------------------------------------*/
22 #include "rmapplugin.h"
22 #include "rmapplugin.h"
23
23
24 rmapPluginUI::rmapPluginUI(QWidget *parent) :
24 rmapPluginUI::rmapPluginUI(QWidget *parent) :
25 QWidget(parent)
25 QWidget(parent)
26 {
26 {
27 spectralMatricesDMASimulator = new SpectralMatricesDMASimulator;
28 spwTabWidget = new QTabWidget;
27 spwTabWidget = new QTabWidget;
28 //
29 QWidget* spwTabWidgetPage0 = new QWidget;
29 QWidget* spwTabWidgetPage0 = new QWidget;
30 QWidget* spwTabWidgetPage1 = new QWidget;
31 QWidget* spwTabWidgetPage2 = new QWidget;
30 QWidget* spwTabWidgetPage2 = new QWidget;
32 QWidget* spwTabWidgetPage3 = new QWidget;
31 QWidget* spwTabWidgetPage3 = new QWidget;
33 QWidget* spwTabWidgetPage4 = new QWidget;
32 QWidget* spwTabWidgetPage4 = new QWidget;
34 QWidget* spwTabWidgetPage5 = new QWidget;
33 QWidget* spwTabWidgetPage5 = new QWidget;
34 //
35 bridgeWidget = new QWidget;
35 bridgeWidget = new QWidget;
36 mainLayout = new QVBoxLayout;
36 mainLayout = new QVBoxLayout;
37 ccsdsLayout = new QVBoxLayout;
37 ccsdsLayout = new QVBoxLayout;
38 consoleLayout = new QVBoxLayout;
38 consoleLayout = new QVBoxLayout;
39 selectionLayout = new QVBoxLayout;
39 selectionLayout = new QVBoxLayout;
40 connectionLayout = new QGridLayout;
40 connectionLayout = new QGridLayout;
41 bridgeSelection_LAYOUT = new QGridLayout;
41 bridgeSelection_LAYOUT = new QGridLayout;
42 generalParameters_LAYOUT = new QGridLayout;
42 generalParameters_LAYOUT = new QGridLayout;
43
43
44 gresb_GROUPBOX = new QGroupBox(tr("GRESB bridge parameters"));
44 gresb_GROUPBOX = new QGroupBox(tr("GRESB bridge parameters"));
45 stardundee_GROUPBOX = new QGroupBox(tr("Star Dundee brick parameters"));
45 stardundee_GROUPBOX = new QGroupBox(tr("Star Dundee brick parameters"));
46 selection_GROUPBOX = new QGroupBox(tr("Bridge selection"));
46 selection_GROUPBOX = new QGroupBox(tr("Bridge selection"));
47 generalParameters_GROUPBOX = new QGroupBox(tr("General parameters"));
47 generalParameters_GROUPBOX = new QGroupBox(tr("General parameters"));
48
48
49 //*** QLABEL ***//
49 //*** QLABEL ***//
50 gresbBridgeIPLabel = new QLabel(tr("Bridge IP: "));
50 gresbBridgeIPLabel = new QLabel(tr("Bridge IP: "));
51 gresbVirtualLinkLabel = new QLabel(tr("Virtual Link: "));
51 gresbVirtualLinkLabel = new QLabel(tr("Virtual Link: "));
52 spwLinkLabel = new QLabel(tr("SPW Link: "));
52 spwLinkLabel = new QLabel(tr("SPW Link: "));
53 rmapSourceLogicalAddressLabel = new QLabel(tr("RMAP Source Logical Address: "));
53 rmapSourceLogicalAddressLabel = new QLabel(tr("RMAP Source Logical Address: "));
54 rmapTargetLogicalAddressLabel = new QLabel(tr("RMAP Target Logical Address: "));
54 rmapTargetLogicalAddressLabel = new QLabel(tr("RMAP Target Logical Address: "));
55 logFileName = new QLabel;
55 logFileName = new QLabel;
56 gresbStatusQueryLabel = new QLabel(tr("Status query socket (port 3010): waiting for connection"));
56 gresbStatusQueryLabel = new QLabel(tr("Status query socket (port 3010): waiting for connection"));
57 gresbStatusQueryDialogLabel = new QLabel(tr("sockets opened but SpaceWire link not running"));
57 gresbStatusQueryDialogLabel = new QLabel(tr("sockets opened but SpaceWire link not running"));
58 sendCCSDSCommandLabel = new QLabel(tr("Address of the target"));
59 nbPacketInStore = new QLabel(tr("nb packets in store: -"));
58 nbPacketInStore = new QLabel(tr("nb packets in store: -"));
60
59
61 //*** QPUSHBUTTON ***//
60 //*** QPUSHBUTTON ***//
62 rmapOpenCommunicationButton = new QPushButton(tr("Open selected bridge"));
61 rmapOpenCommunicationButton = new QPushButton(tr("Open selected bridge"));
63 rmapCloseCommunicationButton = new QPushButton(tr("Close selected bridge"));
62 rmapCloseCommunicationButton = new QPushButton(tr("Close selected bridge"));
64 rmapOpenCommunicationButton->setEnabled(false);
63 rmapOpenCommunicationButton->setEnabled(false);
65 rmapCloseCommunicationButton->setEnabled(false);
64 rmapCloseCommunicationButton->setEnabled(false);
66 logFileChooseButton = new QPushButton(tr("Choose file"));
65 logFileChooseButton = new QPushButton(tr("Choose file"));
67 gresbStatusQueryRetryButton = new QPushButton(tr("Retry"));
66 gresbStatusQueryRetryButton = new QPushButton(tr("Retry"));
68 gresbStatusQueryAbortButton = new QPushButton(tr("Abort"));
67 gresbStatusQueryAbortButton = new QPushButton(tr("Abort"));
69 sendCCSDSCommandButton = new QPushButton(tr("Send CCSDS Command"));
70 send_TC_LFR_UPDATE_TIME_Button = new QPushButton(tr("Send TC_LFR_UPDATE_TIME Packet"));
71 reset_TC_LFR_UPDATE_TIME_Button = new QPushButton(tr("reset the TC_LFR_UPDATE_TIME Packet coarse and fine times"));
72 clearConsoleButton = new QPushButton(tr("Clear"));
68 clearConsoleButton = new QPushButton(tr("Clear"));
73
69
74 selectGRESB_BUTTON = new QRadioButton(tr("GRESB"));
70 selectGRESB_BUTTON = new QRadioButton(tr("GRESB"));
75 selectStarDundee_BUTTON = new QRadioButton(tr("Star Dundee"));
71 selectStarDundee_BUTTON = new QRadioButton(tr("Star Dundee"));
76
72
77 //*** SPINBOX ***//
73 //*** SPINBOX ***//
78 gresbVirtualLinkSpinBox = new QSpinBox;
74 gresbVirtualLinkSpinBox = new QSpinBox;
79 rmapSourceLogicalAddressSpinBox = new QSpinBox;
75 rmapSourceLogicalAddressSpinBox = new QSpinBox;
80 rmapTargetLogicalAddressSpinBox = new QSpinBox;
76 rmapTargetLogicalAddressSpinBox = new QSpinBox;
81 spwLinkSpinBox = new QSpinBox;;
77 spwLinkSpinBox = new QSpinBox;;
82 CCSDSTargetLogicalAddressSpinBox = new QSpinBox;
78 CCSDSTargetLogicalAddressSpinBox = new QSpinBox;
83 gresbVirtualLinkSpinBox->setRange(0, 4);
79 gresbVirtualLinkSpinBox->setRange(0, 4);
84 gresbVirtualLinkSpinBox->setValue(1);
80 gresbVirtualLinkSpinBox->setValue(1);
85 rmapSourceLogicalAddressSpinBox->setRange(0, 255);
81 rmapSourceLogicalAddressSpinBox->setRange(0, 255);
86 rmapSourceLogicalAddressSpinBox->setValue(0);
82 rmapSourceLogicalAddressSpinBox->setValue(RMAP_DEFAULT_SOURCE_ADDRESS);
87 rmapTargetLogicalAddressSpinBox->setRange(0, 255);
83 rmapTargetLogicalAddressSpinBox->setRange(0, 255);
88 spwLinkSpinBox->setRange(0, 2);
84 spwLinkSpinBox->setRange(0, 2);
89 spwLinkSpinBox->setValue(0);
85 spwLinkSpinBox->setValue(0);
90 CCSDSTargetLogicalAddressSpinBox->setRange(0,255);
91 CCSDSTargetLogicalAddressSpinBox->setValue(0);
92
86
93 //*** MISC **//
87 //*** MISC **//
94 starDundee = new StarDundee;
88 starDundee = new StarDundee;
95 gresbBridge = new gresb;
89 gresbBridge = new gresb;
96 console = new QTextEdit;
90 console = new QTextEdit;
97 //gresbBridgeIPDialogBox = new QIPDialogBox;
98 gresbStatusQueryDialog = new QDialog;
91 gresbStatusQueryDialog = new QDialog;
99 logEnableCheckBox = new QCheckBox(tr("Enable Logs"));
92 logEnableCheckBox = new QCheckBox(tr("Enable Logs"));
100 RMAP_write_verify = new QCheckBox(tr("data checked before write\nlimited to 4 bytes\nNOT IMPLEMENTED"));
93 RMAP_write_verify = new QCheckBox(tr("data checked before write\nlimited to 4 bytes\nNOT IMPLEMENTED"));
101 RMAP_write_reply = new QCheckBox(tr("reply to the write command required\nlast reply status: unavailable"));
94 RMAP_write_reply = new QCheckBox(tr("reply to the write command required\nlast reply status: unavailable"));
102 spwLinkStatusEnquiry = new gresbStatusEnquiry;
103 logFile = new QFile();
95 logFile = new QFile();
104 wfDisplay = new WFDisplay();
96 wfDisplay = new WFDisplay();
97 tmStatistics = new TMStatistics();
105
98
106 logFileEn = false;
99 logFileEn = false;
107
100
108 connectionLayout->setRowStretch(7, 1);
101 connectionLayout->setRowStretch(7, 1);
109 connectionLayout->setColumnStretch(2, 1);
102 connectionLayout->setColumnStretch(2, 1);
110
103
111 bridgeSelection_LAYOUT->addWidget(selectGRESB_BUTTON, 0, 0, 1, 1);
104 bridgeSelection_LAYOUT->addWidget(selectGRESB_BUTTON, 0, 0, 1, 1);
112 bridgeSelection_LAYOUT->addWidget(selectStarDundee_BUTTON, 0, 1, 1, 1);
105 bridgeSelection_LAYOUT->addWidget(selectStarDundee_BUTTON, 0, 1, 1, 1);
113 bridgeSelection_LAYOUT->setRowStretch(1, 1);
114 bridgeSelection_LAYOUT->setColumnStretch(2, 1);
115
106
116 generalParameters_LAYOUT->addWidget(logEnableCheckBox, 0, 0, 1, 1);
107 generalParameters_LAYOUT->addWidget(logEnableCheckBox, 0, 0, 1, 1);
117 generalParameters_LAYOUT->addWidget(logFileChooseButton, 0, 1, 1, 1);
108 generalParameters_LAYOUT->addWidget(logFileChooseButton, 0, 1, 1, 1);
118 generalParameters_LAYOUT->addWidget(rmapSourceLogicalAddressLabel, 1, 0, 0);
109 generalParameters_LAYOUT->addWidget(rmapSourceLogicalAddressLabel, 1, 0, 0);
119 generalParameters_LAYOUT->addWidget(rmapSourceLogicalAddressSpinBox, 1, 1, 0);
110 generalParameters_LAYOUT->addWidget(rmapSourceLogicalAddressSpinBox, 1, 1, 0);
120 generalParameters_LAYOUT->addWidget(rmapTargetLogicalAddressLabel, 2, 0, 0);
111 generalParameters_LAYOUT->addWidget(rmapTargetLogicalAddressLabel, 2, 0, 0);
121 generalParameters_LAYOUT->addWidget(rmapTargetLogicalAddressSpinBox, 2, 1, 0);
112 generalParameters_LAYOUT->addWidget(rmapTargetLogicalAddressSpinBox, 2, 1, 0);
122 generalParameters_LAYOUT->addWidget(rmapOpenCommunicationButton, 3, 0, 1, 1);
113 generalParameters_LAYOUT->addWidget(rmapOpenCommunicationButton, 3, 0, 1, 1);
123 generalParameters_LAYOUT->addWidget(rmapCloseCommunicationButton, 3, 1, 1, 1);
114 generalParameters_LAYOUT->addWidget(rmapCloseCommunicationButton, 3, 1, 1, 1);
124 generalParameters_LAYOUT->addWidget(RMAP_write_verify, 4, 0, 1, 2);
115 generalParameters_LAYOUT->addWidget(RMAP_write_verify, 4, 0, 1, 2);
125 generalParameters_LAYOUT->addWidget(RMAP_write_reply, 5, 0, 1, 2);
116 generalParameters_LAYOUT->addWidget(RMAP_write_reply, 5, 0, 1, 2);
126
117
127 generalParameters_LAYOUT->setRowStretch(6, 1);
118 generalParameters_LAYOUT->setRowStretch(6, 1);
128 generalParameters_LAYOUT->setColumnStretch(2, 1);
119 generalParameters_LAYOUT->setColumnStretch(2, 1);
129
120
130 gresb_GROUPBOX->setLayout(gresbBridge->layout());
121 gresb_GROUPBOX->setLayout(gresbBridge->layout());
131 gresb_GROUPBOX->setVisible(false);
122 gresb_GROUPBOX->setVisible(false);
132 stardundee_GROUPBOX->setLayout(starDundee->layout());
123 stardundee_GROUPBOX->setLayout(starDundee->layout());
133 stardundee_GROUPBOX->setVisible(false);
124 stardundee_GROUPBOX->setVisible(false);
134 selection_GROUPBOX->setLayout(bridgeSelection_LAYOUT);
125 selection_GROUPBOX->setLayout(bridgeSelection_LAYOUT);
135 generalParameters_GROUPBOX->setLayout(generalParameters_LAYOUT);
126 generalParameters_GROUPBOX->setLayout(generalParameters_LAYOUT);
136 selectionLayout->addWidget(selection_GROUPBOX);
127 selectionLayout->addWidget(selection_GROUPBOX);
137 selectionLayout->addWidget(generalParameters_GROUPBOX);
128 selectionLayout->addWidget(generalParameters_GROUPBOX);
138 selectionLayout->addWidget(gresb_GROUPBOX);
129 selectionLayout->addWidget(gresb_GROUPBOX);
139 selectionLayout->addWidget(stardundee_GROUPBOX);
130 selectionLayout->addWidget(stardundee_GROUPBOX);
140
131
141 //******
142 // CCSDS
143 ccsdsLayout->addWidget(sendCCSDSCommandButton);
144 ccsdsLayout->addWidget(send_TC_LFR_UPDATE_TIME_Button);
145 ccsdsLayout->addWidget(reset_TC_LFR_UPDATE_TIME_Button);
146 ccsdsLayout->addWidget(sendCCSDSCommandLabel);
147 ccsdsLayout->addWidget(CCSDSTargetLogicalAddressSpinBox);
148
149 //********
132 //********
150 // CONSOLE
133 // CONSOLE
151 consoleLayout->addWidget(console);
134 consoleLayout->addWidget(console);
152 consoleLayout->addWidget(clearConsoleButton);
135 consoleLayout->addWidget(clearConsoleButton);
153 consoleLayout->addWidget(nbPacketInStore);
136 consoleLayout->addWidget(nbPacketInStore);
154
137
155 connect(this->logFileChooseButton, SIGNAL(clicked()), this, SLOT(chooseLogFile()));
138 connect(this->logFileChooseButton, SIGNAL(clicked()), this, SLOT(chooseLogFile()));
156 connect(this, SIGNAL(setLogFileName(QString)), this->logFileName, SLOT(setText(QString)));
139 connect(this, SIGNAL(setLogFileName(QString)), this->logFileName, SLOT(setText(QString)));
157 connect(this->logEnableCheckBox, SIGNAL(stateChanged(int)), this, SLOT(logFileEnDisable(int)));
140 connect(this->logEnableCheckBox, SIGNAL(stateChanged(int)), this, SLOT(logFileEnDisable(int)));
158
141
159 spwTabWidget->addTab(spwTabWidgetPage0, tr("connection"));
142 spwTabWidget->addTab(spwTabWidgetPage0, tr("connection"));
160 spwTabWidget->addTab(spwTabWidgetPage1, tr("ccsds"));
161 spwTabWidget->addTab(spwTabWidgetPage2, tr("status"));
143 spwTabWidget->addTab(spwTabWidgetPage2, tr("status"));
162 spwTabWidget->addTab(spwTabWidgetPage3, tr("console"));
144 spwTabWidget->addTab(spwTabWidgetPage3, tr("console"));
163 spwTabWidget->addTab(spwTabWidgetPage4, tr("DMA"));
145 spwTabWidget->addTab(spwTabWidgetPage4, tr("TM statistics"));
164 spwTabWidget->addTab(spwTabWidgetPage5, tr("waveforms"));
146 spwTabWidget->addTab(spwTabWidgetPage5, tr("waveforms"));
165
147
166 spwTabWidgetPage0->setLayout(selectionLayout);
148 spwTabWidgetPage0->setLayout(selectionLayout);
167 spwTabWidgetPage1->setLayout(ccsdsLayout);
149 spwTabWidgetPage2->setLayout(this->gresbBridge->spwLinkStatusEnquiry->mainLayout);
168 spwTabWidgetPage2->setLayout(this->spwLinkStatusEnquiry->mainLayout);
169 spwTabWidgetPage3->setLayout(consoleLayout);
150 spwTabWidgetPage3->setLayout(consoleLayout);
170 spwTabWidgetPage4->setLayout(spectralMatricesDMASimulator->mainLayout);
151 spwTabWidgetPage4->setLayout(tmStatistics->layout());
171 spwTabWidgetPage5->setLayout(wfDisplay->layout());
152 spwTabWidgetPage5->setLayout(wfDisplay->layout());
172
153
173 mainLayout->addWidget(spwTabWidget);
154 mainLayout->addWidget(spwTabWidget);
174 setLayout(mainLayout);
155 setLayout(mainLayout);
175
156
176 connect(this->clearConsoleButton, SIGNAL(clicked()), this->console, SLOT(clear()));
157 connect(this->clearConsoleButton, SIGNAL(clicked()), this->console, SLOT(clear()));
177
158
178 // briges
159 // briges
179 connect(this->selectGRESB_BUTTON, SIGNAL(clicked()), this, SLOT(selectionBetweenGresbAndStarDundee()));
160 connect(this->selectGRESB_BUTTON, SIGNAL(clicked()), this, SLOT(selectionBetweenGresbAndStarDundee()));
180 connect(this->selectStarDundee_BUTTON, SIGNAL(clicked()), this, SLOT(selectionBetweenGresbAndStarDundee()));
161 connect(this->selectStarDundee_BUTTON, SIGNAL(clicked()), this, SLOT(selectionBetweenGresbAndStarDundee()));
181 connect(this->starDundee, SIGNAL(isOpen(bool)), this, SLOT(isOpen(bool)));
162 connect(this->starDundee, SIGNAL(isOpen(bool)), this, SLOT(isOpen(bool)));
182 connect(this->gresbBridge, SIGNAL(isOpen(bool)), this, SLOT(isOpen(bool)));
163 connect(this->gresbBridge, SIGNAL(isOpen(bool)), this, SLOT(isOpen(bool)));
183
164
184 connect(this->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->gresbBridge, SLOT(sourceHasChanged(int)));
165 connect(this->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->gresbBridge, SLOT(sourceHasChanged(int)));
185 connect(this->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->gresbBridge, SLOT(targetHasChanged(int)));
166 connect(this->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->gresbBridge, SLOT(targetHasChanged(int)));
186 connect(this->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->starDundee, SLOT(sourceHasChanged(int)));
167 connect(this->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->starDundee, SLOT(sourceHasChanged(int)));
187 connect(this->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->starDundee, SLOT(targetHasChanged(int)));
168 connect(this->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)), this->starDundee, SLOT(targetHasChanged(int)));
188
169
189 // command code
170 // command code
190 connect(this->RMAP_write_reply, SIGNAL(clicked()), this, SLOT(getCommandCode()));
171 connect(this->RMAP_write_reply, SIGNAL(clicked()), this, SLOT(getCommandCode()));
191 connect(this->RMAP_write_verify, SIGNAL(clicked()), this, SLOT(getCommandCode()));
172 connect(this->RMAP_write_verify, SIGNAL(clicked()), this, SLOT(getCommandCode()));
192 connect(this, SIGNAL(commandCodeHasChanged(RMAP_command_codes)),
173 connect(this, SIGNAL(commandCodeHasChanged(RMAP_command_codes)),
193 this->starDundee, SLOT(commandCodeHasChanged(RMAP_command_codes)));
174 this->starDundee, SLOT(commandCodeHasChanged(RMAP_command_codes)));
194 connect(this, SIGNAL(commandCodeHasChanged(RMAP_command_codes)),
175 connect(this, SIGNAL(commandCodeHasChanged(RMAP_command_codes)),
195 this->gresbBridge, SLOT(commandCodeHasChanged(RMAP_command_codes)));
176 this->gresbBridge, SLOT(commandCodeHasChanged(RMAP_command_codes)));
196
177
197 getCommandCode(); // init the command code value
178 getCommandCode(); // init the command code value
198 rmapSourceLogicalAddressSpinBox->setValue(DEFAULT_SOURCE);
179 rmapSourceLogicalAddressSpinBox->setValue(DEFAULT_SOURCE);
199 rmapTargetLogicalAddressSpinBox->setValue(DEFAULT_TARGET);
180 rmapTargetLogicalAddressSpinBox->setValue(DEFAULT_TARGET);
200 }
181 }
201
182
202 rmapPluginUI::~rmapPluginUI()
183 rmapPluginUI::~rmapPluginUI()
203 {
184 {
204 //delete ui;
185 //delete ui;
205 }
186 }
206
187
207 void rmapPluginUI::chooseLogFile()
188 void rmapPluginUI::chooseLogFile()
208 {
189 {
209 if(this->logFile->isOpen())
190 if(this->logFile->isOpen())
210 this->logFile->close();
191 this->logFile->close();
211 this->logFile->setFileName(QFileDialog::getSaveFileName(this,tr("Open Log file"),
192 this->logFile->setFileName(QFileDialog::getSaveFileName(this,tr("Open Log file"),
212 QDir::homePath()
193 QDir::homePath()
213 + "/"
194 + "/"
214 + QDate::currentDate().toString()
195 + QDate::currentDate().toString()
215 + "_"
196 + "_"
216 + QTime::currentTime().toString()
197 + QTime::currentTime().toString()
217 + "_rmapPluginUI.log",
198 + "_rmapPluginUI.log",
218 tr("Log Files (*.txt *.log)")));
199 tr("Log Files (*.txt *.log)")));
219 if(this->logFile->open(QIODevice::WriteOnly))
200 if(this->logFile->open(QIODevice::WriteOnly))
220 {
201 {
221 this->logFileStrm = new QTextStream(this->logFile);
202 this->logFileStrm = new QTextStream(this->logFile);
222 emit this->setLogFileName(this->logFile->fileName());
203 emit this->setLogFileName(this->logFile->fileName());
223 }
204 }
224 }
205 }
225
206
226 void rmapPluginUI::logFileEnDisable(int state)
207 void rmapPluginUI::logFileEnDisable(int state)
227 {
208 {
228 if(state==Qt::Checked)
209 if(state==Qt::Checked)
229 {
210 {
230 this->logFileEn = true;
211 this->logFileEn = true;
231 }
212 }
232 else if(state==Qt::Unchecked)
213 else if(state==Qt::Unchecked)
233 {
214 {
234 this->logFileEn = false;
215 this->logFileEn = false;
235 }
216 }
236 }
217 }
237
218
238 bool rmapPluginUI::islogfileenable()
219 bool rmapPluginUI::islogfileenable()
239 {
220 {
240 return this->logFileEn;
221 return this->logFileEn;
241 }
222 }
242
223
243 void rmapPluginUI::appendToLogFile(const QString & text)
224 void rmapPluginUI::appendToLogFile(const QString & text)
244 {
225 {
245 if(this->logFileEn && this->logFile->isOpen())
226 if(this->logFileEn && this->logFile->isOpen())
246 {
227 {
247 *(this->logFileStrm) << text << endl;
228 *(this->logFileStrm) << text << endl;
248 }
229 }
249 }
230 }
250
231
251 void rmapPluginUI::closeEvent(QCloseEvent *event)
232 void rmapPluginUI::closeEvent(QCloseEvent *event)
252 {
233 {
253 if(this->logFile->isOpen())
234 if(this->logFile->isOpen())
254 {
235 {
255 this->logFileStrm->flush();
236 this->logFileStrm->flush();
256 this->logFile->waitForBytesWritten(3000);
237 this->logFile->waitForBytesWritten(3000);
257 this->logFile->close();
238 this->logFile->close();
258 }
239 }
259 event->accept();
240 event->accept();
260 }
241 }
261
242
262 RMAP_command_codes rmapPluginUI::getCommandCode()
243 RMAP_command_codes rmapPluginUI::getCommandCode()
263 {
244 {
264 RMAP_command_codes commandCode = invalid0;
245 RMAP_command_codes commandCode = invalid0;
265 if (RMAP_write_verify->isChecked() and RMAP_write_reply->isChecked()) commandCode = writeSingle_ver_rep;
246 if (RMAP_write_verify->isChecked() and RMAP_write_reply->isChecked()) commandCode = writeSingle_ver_rep;
266 if (RMAP_write_verify->isChecked() and !RMAP_write_reply->isChecked()) commandCode = writeSingle_ver_noRep;
247 if (RMAP_write_verify->isChecked() and !RMAP_write_reply->isChecked()) commandCode = writeSingle_ver_noRep;
267 if (!RMAP_write_verify->isChecked() and RMAP_write_reply->isChecked()) commandCode = writeSingle_noVer_Rep;
248 if (!RMAP_write_verify->isChecked() and RMAP_write_reply->isChecked()) commandCode = writeSingle_noVer_Rep;
268 if (!RMAP_write_verify->isChecked() and !RMAP_write_reply->isChecked()) commandCode = writeSingle_noVer_noRep;
249 if (!RMAP_write_verify->isChecked() and !RMAP_write_reply->isChecked()) commandCode = writeSingle_noVer_noRep;
269 emit commandCodeHasChanged(commandCode);
250 emit commandCodeHasChanged(commandCode);
270 return commandCode;
251 return commandCode;
271 }
252 }
272
253
273 // SLOT
254 // SLOT
274
255
275 void rmapPluginUI::selectionBetweenGresbAndStarDundee() //SLOT
256 void rmapPluginUI::selectionBetweenGresbAndStarDundee() //SLOT
276 {
257 {
277 if (selectGRESB_BUTTON->isChecked())
258 if (selectGRESB_BUTTON->isChecked())
278 {
259 {
279 gresb_GROUPBOX->setVisible(true);
260 gresb_GROUPBOX->setVisible(true);
280 stardundee_GROUPBOX->setVisible(false);
261 stardundee_GROUPBOX->setVisible(false);
281 rmapOpenCommunicationButton->setEnabled(true);
262 rmapOpenCommunicationButton->setEnabled(true);
282 emit bridgeHasChanged(selectedBridgeIsGRESB);
263 emit bridgeHasChanged(selectedBridgeIsGRESB);
283 }
264 }
284 if (selectStarDundee_BUTTON->isChecked())
265 if (selectStarDundee_BUTTON->isChecked())
285 {
266 {
286 stardundee_GROUPBOX->setVisible(true);
267 stardundee_GROUPBOX->setVisible(true);
287 gresb_GROUPBOX->setVisible(false);
268 gresb_GROUPBOX->setVisible(false);
288 rmapOpenCommunicationButton->setEnabled(true);
269 rmapOpenCommunicationButton->setEnabled(true);
289 emit bridgeHasChanged(selectedBridgeIsStarDundee);
270 emit bridgeHasChanged(selectedBridgeIsStarDundee);
290 }
271 }
291 }
272 }
292
273
293 void rmapPluginUI::isOpen(bool flag)
274 void rmapPluginUI::isOpen(bool flag)
294 {
275 {
295 if (flag == true)
276 if (flag == true)
296 {
277 {
297 selection_GROUPBOX->setEnabled(false);
278 selection_GROUPBOX->setEnabled(false);
298 this->rmapOpenCommunicationButton->setEnabled(false);
279 this->rmapOpenCommunicationButton->setEnabled(false);
299 this->rmapCloseCommunicationButton->setEnabled(true);
280 this->rmapCloseCommunicationButton->setEnabled(true);
300 }
281 }
301 if (flag == false)
282 if (flag == false)
302 {
283 {
303 selection_GROUPBOX->setEnabled(true);
284 selection_GROUPBOX->setEnabled(true);
304 this->rmapOpenCommunicationButton->setEnabled(true);
285 this->rmapOpenCommunicationButton->setEnabled(true);
305 this->rmapCloseCommunicationButton->setEnabled(false);
286 this->rmapCloseCommunicationButton->setEnabled(false);
306 }
287 }
307 }
288 }
308
289
309
290
@@ -1,164 +1,160
1 /*------------------------------------------------------------------------------
1 /*------------------------------------------------------------------------------
2 -- This file is a part of the LPPMON Software
2 -- This file is a part of the LPPMON Software
3 -- Copyright (C) 20011, Laboratory of Plasma Physics - CNRS
3 -- Copyright (C) 20011, Laboratory of Plasma Physics - CNRS
4 --
4 --
5 -- This program is free software; you can redistribute it and/or modify
5 -- This program is free software; you can redistribute it and/or modify
6 -- it under the terms of the GNU General Public License as published by
6 -- it under the terms of the GNU General Public License as published by
7 -- the Free Software Foundation; either version 3 of the License, or
7 -- the Free Software Foundation; either version 3 of the License, or
8 -- (at your option) any later version.
8 -- (at your option) any later version.
9 --
9 --
10 -- This program is distributed in the hope that it will be useful,
10 -- This program is distributed in the hope that it will be useful,
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 -- GNU General Public License for more details.
13 -- GNU General Public License for more details.
14 --
14 --
15 -- You should have received a copy of the GNU General Public License
15 -- You should have received a copy of the GNU General Public License
16 -- along with this program; if not, write to the Free Software
16 -- along with this program; if not, write to the Free Software
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 -------------------------------------------------------------------------------*/
18 -------------------------------------------------------------------------------*/
19 /*-- Author : Paul Leroy
19 /*-- Author : Paul Leroy
20 -- Mail : paul.leroy@lpp.polytechnique.fr
20 -- Mail : paul.leroy@lpp.polytechnique.fr
21 ----------------------------------------------------------------------------*/
21 ----------------------------------------------------------------------------*/
22 #ifndef RMAPPLUGINUI_H
22 #ifndef RMAPPLUGINUI_H
23 #define RMAPPLUGINUI_H
23 #define RMAPPLUGINUI_H
24
24
25 #include <QWidget>
25 #include <QWidget>
26 #include <QPushButton>
26 #include <QPushButton>
27 #include <QLabel>
27 #include <QLabel>
28 #include <QSlider>
28 #include <QSlider>
29 #include <QSpinBox>
29 #include <QSpinBox>
30 #include <QGridLayout>
30 #include <QGridLayout>
31 #include <QCheckBox>
31 #include <QCheckBox>
32 #include <QFile>
32 #include <QFile>
33 #include <QTextStream>
33 #include <QTextStream>
34 #include <QFileDialog>
34 #include <QFileDialog>
35 #include <QDir>
35 #include <QDir>
36 #include <QDialog>
36 #include <QDialog>
37 #include <QCloseEvent>
37 #include <QCloseEvent>
38 #include <QTabWidget>
38 #include <QTabWidget>
39 #include "qipdialogbox.h"
39 #include "qipdialogbox.h"
40 #include <rmapoperations.h>
40 #include <rmapoperations.h>
41 #include <gresbstatusenquiry.h>
41 #include <gresbstatusenquiry.h>
42 #include <QTextEdit>
42 #include <QTextEdit>
43 #include "spectralmatricesdmasimulator.h"
44 #include <stardundee.h>
43 #include <stardundee.h>
45 #include <gresb.h>
44 #include <gresb.h>
46 #include <QRadioButton>
45 #include <QRadioButton>
47 #include <QGroupBox>
46 #include <QGroupBox>
48 #include "wfdisplay.h"
47 #include "wfdisplay.h"
48 #include "tmstatistics.h"
49
49
50 enum selectedBridge{
50 enum selectedBridge{
51 selectedBridgeIsUnknown,
51 selectedBridgeIsUnknown,
52 selectedBridgeIsGRESB,
52 selectedBridgeIsGRESB,
53 selectedBridgeIsStarDundee
53 selectedBridgeIsStarDundee
54 };
54 };
55
55
56 class rmapPluginUI : public QWidget
56 class rmapPluginUI : public QWidget
57 {
57 {
58 Q_OBJECT
58 Q_OBJECT
59
59
60 public:
60 public:
61 explicit rmapPluginUI(QWidget *parent = 0);
61 explicit rmapPluginUI(QWidget *parent = 0);
62 ~rmapPluginUI();
62 ~rmapPluginUI();
63
63
64 QPushButton* rmapOpenCommunicationButton;
64 QPushButton* rmapOpenCommunicationButton;
65 QPushButton* rmapCloseCommunicationButton;
65 QPushButton* rmapCloseCommunicationButton;
66 QPushButton* logFileChooseButton;
66 QPushButton* logFileChooseButton;
67 QPushButton* gresbStatusQueryRetryButton;
67 QPushButton* gresbStatusQueryRetryButton;
68 QPushButton* gresbStatusQueryAbortButton;
68 QPushButton* gresbStatusQueryAbortButton;
69 QPushButton* sendCCSDSCommandButton;
69 QPushButton* sendCCSDSCommandButton;
70 QPushButton* send_TC_LFR_UPDATE_TIME_Button;
70 QPushButton* send_TC_LFR_UPDATE_TIME_Button;
71 QPushButton* reset_TC_LFR_UPDATE_TIME_Button;
71 QPushButton* reset_TC_LFR_UPDATE_TIME_Button;
72 QPushButton* clearConsoleButton;
72 QPushButton* clearConsoleButton;
73
73
74 QRadioButton* selectGRESB_BUTTON;
74 QRadioButton* selectGRESB_BUTTON;
75 QRadioButton* selectStarDundee_BUTTON;
75 QRadioButton* selectStarDundee_BUTTON;
76
76
77 QGroupBox *selection_GROUPBOX;
77 QGroupBox *selection_GROUPBOX;
78
78
79 QSpinBox* gresbVirtualLinkSpinBox;
79 QSpinBox* gresbVirtualLinkSpinBox;
80 QSpinBox* spwLinkSpinBox;
80 QSpinBox* spwLinkSpinBox;
81 QSpinBox* rmapSourceLogicalAddressSpinBox;
81 QSpinBox* rmapSourceLogicalAddressSpinBox;
82 QSpinBox* rmapTargetLogicalAddressSpinBox;
82 QSpinBox* rmapTargetLogicalAddressSpinBox;
83 QSpinBox* CCSDSTargetLogicalAddressSpinBox;
83 QSpinBox* CCSDSTargetLogicalAddressSpinBox;
84
84
85 //QIPDialogBox* gresbBridgeIPDialogBox;
86
87 QCheckBox *logEnableCheckBox;
85 QCheckBox *logEnableCheckBox;
88 QCheckBox *RMAP_write_verify;
86 QCheckBox *RMAP_write_verify;
89 QCheckBox *RMAP_write_reply;
87 QCheckBox *RMAP_write_reply;
90
88
91 QLabel* rmapSendStateLabel;
89 QLabel* rmapSendStateLabel;
92 QLabel* rmapReceiveStateLabel;
90 QLabel* rmapReceiveStateLabel;
93 QLabel* gresbStatusQueryLabel;
91 QLabel* gresbStatusQueryLabel;
94 QLabel* gresbStatusQueryDialogLabel;
92 QLabel* gresbStatusQueryDialogLabel;
95 QLabel* sendCCSDSCommandLabel;
93 QLabel* sendCCSDSCommandLabel;
96 QLabel* nbPacketInStore;
94 QLabel* nbPacketInStore;
97
95
98 QDialog* gresbStatusQueryDialog;
96 QDialog* gresbStatusQueryDialog;
99
97
100 gresbStatusEnquiry* spwLinkStatusEnquiry;
101
102 SpectralMatricesDMASimulator *spectralMatricesDMASimulator;
103
104 QTextEdit* console;
98 QTextEdit* console;
105
99
106 WFDisplay* wfDisplay;
100 WFDisplay* wfDisplay;
107
101
102 TMStatistics* tmStatistics;
103
108 // SPACEWIRE BRIDGES
104 // SPACEWIRE BRIDGES
109 StarDundee *starDundee;
105 StarDundee *starDundee;
110 gresb *gresbBridge;
106 gresb *gresbBridge;
111
107
112 bool islogfileenable();
108 bool islogfileenable();
113 void appendToLogFile(const QString & text);
109 void appendToLogFile(const QString & text);
114 void closeEvent(QCloseEvent *event);
110 void closeEvent(QCloseEvent *event);
115
111
116 public slots:
112 public slots:
117 void chooseLogFile();
113 void chooseLogFile();
118 void logFileEnDisable(int state);
114 void logFileEnDisable(int state);
119 RMAP_command_codes getCommandCode();
115 RMAP_command_codes getCommandCode();
120
116
121 private slots:
117 private slots:
122 void selectionBetweenGresbAndStarDundee();
118 void selectionBetweenGresbAndStarDundee();
123 void isOpen(bool flag);
119 void isOpen(bool flag);
124
120
125 signals:
121 signals:
126 void connectPortsig(QString PortName,int baudrate);
122 void connectPortsig(QString PortName,int baudrate);
127 void setLogFileName(QString FileName);
123 void setLogFileName(QString FileName);
128 void commandCodeHasChanged(RMAP_command_codes commandCode);
124 void commandCodeHasChanged(RMAP_command_codes commandCode);
129 void bridgeHasChanged(selectedBridge bridge);
125 void bridgeHasChanged(selectedBridge bridge);
130 void targetHasChanged(unsigned char target);
126 void targetHasChanged(unsigned char target);
131 void sourceHasChanged(unsigned char source);
127 void sourceHasChanged(unsigned char source);
132
128
133 private:
129 private:
134 QLabel *gresbBridgeIPLabel;
130 QLabel *gresbBridgeIPLabel;
135 QLabel *gresbVirtualLinkLabel;
131 QLabel *gresbVirtualLinkLabel;
136 QLabel *spwLinkLabel;
132 QLabel *spwLinkLabel;
137 QLabel *rmapSourceLogicalAddressLabel;
133 QLabel *rmapSourceLogicalAddressLabel;
138 QLabel *rmapTargetLogicalAddressLabel;
134 QLabel *rmapTargetLogicalAddressLabel;
139 QLabel *logFileName;
135 QLabel *logFileName;
140
136
141 QGridLayout *bridgeSelection_LAYOUT;
137 QGridLayout *bridgeSelection_LAYOUT;
142 QGridLayout *connectionLayout;
138 QGridLayout *connectionLayout;
143 QGridLayout *gresbStatusQueryDialogLayout;
139 QGridLayout *gresbStatusQueryDialogLayout;
144 QGridLayout *generalParameters_LAYOUT;
140 QGridLayout *generalParameters_LAYOUT;
145 QVBoxLayout *selectionLayout;
141 QVBoxLayout *selectionLayout;
146 QVBoxLayout *mainLayout;
142 QVBoxLayout *mainLayout;
147 QVBoxLayout *ccsdsLayout;
143 QVBoxLayout *ccsdsLayout;
148 QVBoxLayout *consoleLayout;
144 QVBoxLayout *consoleLayout;
149
145
150 QTabWidget *spwTabWidget;
146 QTabWidget *spwTabWidget;
151
147
152 QWidget* bridgeWidget;
148 QWidget* bridgeWidget;
153
149
154 QGroupBox *gresb_GROUPBOX;
150 QGroupBox *gresb_GROUPBOX;
155 QGroupBox *stardundee_GROUPBOX;
151 QGroupBox *stardundee_GROUPBOX;
156 QGroupBox *generalParameters_GROUPBOX;
152 QGroupBox *generalParameters_GROUPBOX;
157
153
158 QFile *logFile;
154 QFile *logFile;
159 QTextStream *logFileStrm;
155 QTextStream *logFileStrm;
160 bool logFileEn;
156 bool logFileEn;
161
157
162 };
158 };
163
159
164 #endif // RMAPPLUGINUI_H
160 #endif // RMAPPLUGINUI_H
General Comments 0
You need to be logged in to leave comments. Login now