##// END OF EJS Templates
QSettings used in the lfrsgse to store the IP address of the echo bridge
leroy -
r28:66e3fbb189eb default
parent child
Show More
@@ -1,342 +1,342
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by Qt Creator 2.4.1, 2013-06-27T15:10:56. -->
3 <!-- Written by Qt Creator 2.4.1, 2013-07-01T12:13:58. -->
4 4 <qtcreator>
5 5 <data>
6 6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
7 7 <value type="int">0</value>
8 8 </data>
9 9 <data>
10 10 <variable>ProjectExplorer.Project.EditorSettings</variable>
11 11 <valuemap type="QVariantMap">
12 12 <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
13 13 <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
14 14 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
15 15 <value type="QString" key="language">Cpp</value>
16 16 <valuemap type="QVariantMap" key="value">
17 17 <value type="QString" key="CurrentPreferences">CppGlobal</value>
18 18 </valuemap>
19 19 </valuemap>
20 20 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
21 21 <value type="QString" key="language">QmlJS</value>
22 22 <valuemap type="QVariantMap" key="value">
23 23 <value type="QString" key="CurrentPreferences">QmlJSGlobal</value>
24 24 </valuemap>
25 25 </valuemap>
26 26 <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
27 27 <value type="QByteArray" key="EditorConfiguration.Codec">System</value>
28 28 <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
29 29 <value type="int" key="EditorConfiguration.IndentSize">4</value>
30 30 <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
31 31 <value type="int" key="EditorConfiguration.PaddingMode">1</value>
32 32 <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
33 33 <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
34 34 <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
35 35 <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
36 36 <value type="int" key="EditorConfiguration.TabSize">8</value>
37 37 <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
38 38 <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
39 39 <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
40 40 <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
41 41 <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
42 42 <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
43 43 </valuemap>
44 44 </data>
45 45 <data>
46 46 <variable>ProjectExplorer.Project.PluginSettings</variable>
47 47 <valuemap type="QVariantMap"/>
48 48 </data>
49 49 <data>
50 50 <variable>ProjectExplorer.Project.Target.0</variable>
51 51 <valuemap type="QVariantMap">
52 52 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
53 53 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
54 54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value>
55 55 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
56 56 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
57 57 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
58 58 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
59 59 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
60 60 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
61 61 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
62 62 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
63 63 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
64 64 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
65 65 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
66 66 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
67 67 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
68 68 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
69 69 </valuemap>
70 70 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
71 71 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
72 72 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
73 73 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
74 74 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
75 75 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
76 76 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
77 77 </valuemap>
78 78 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
79 79 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
80 80 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
81 81 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
82 82 </valuemap>
83 83 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
84 84 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
85 85 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
86 86 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
87 87 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
88 88 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
89 89 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
90 90 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
91 91 </valuemap>
92 92 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
93 93 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
94 94 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
95 95 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
96 96 </valuemap>
97 97 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
98 98 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
99 99 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
100 100 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value>
101 101 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
102 102 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
103 103 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
104 104 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL</value>
105 105 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
106 106 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
107 107 </valuemap>
108 108 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
109 109 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
110 110 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
111 111 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
112 112 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
113 113 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
114 114 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
115 115 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
116 116 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
117 117 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
118 118 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
119 119 </valuemap>
120 120 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
121 121 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
122 122 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
123 123 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
124 124 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
125 125 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
126 126 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
127 127 </valuemap>
128 128 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
129 129 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
130 130 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
131 131 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
132 132 </valuemap>
133 133 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
134 134 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
135 135 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
136 136 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
137 137 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
138 138 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
139 139 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
140 140 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
141 141 </valuemap>
142 142 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
143 143 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
144 144 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
145 145 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
146 146 </valuemap>
147 147 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
148 148 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
149 149 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
150 150 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value>
151 151 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
152 152 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
153 153 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
154 154 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL</value>
155 155 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
156 156 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
157 157 </valuemap>
158 158 <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
159 159 <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
160 160 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
161 161 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
162 162 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
163 163 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
164 164 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
165 165 </valuemap>
166 166 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
167 167 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value>
168 168 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
169 169 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
170 170 </valuemap>
171 171 <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
172 172 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
173 173 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
174 174 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
175 175 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
176 176 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
177 177 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
178 178 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
179 179 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
180 180 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
181 181 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
182 182 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
183 183 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
184 184 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
185 185 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
186 186 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
187 187 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
188 188 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
189 189 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
190 190 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
191 191 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
192 192 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
193 193 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
194 194 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
195 195 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
196 196 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
197 197 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
198 198 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
199 199 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
200 200 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
201 201 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
202 202 <value type="int">0</value>
203 203 <value type="int">1</value>
204 204 <value type="int">2</value>
205 205 <value type="int">3</value>
206 206 <value type="int">4</value>
207 207 <value type="int">5</value>
208 208 <value type="int">6</value>
209 209 <value type="int">7</value>
210 210 <value type="int">8</value>
211 211 <value type="int">9</value>
212 212 <value type="int">10</value>
213 213 <value type="int">11</value>
214 214 <value type="int">12</value>
215 215 <value type="int">13</value>
216 216 <value type="int">14</value>
217 217 </valuelist>
218 218 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
219 219 <value type="int">0</value>
220 220 <value type="int">1</value>
221 221 <value type="int">2</value>
222 222 <value type="int">3</value>
223 223 <value type="int">4</value>
224 224 <value type="int">5</value>
225 225 <value type="int">6</value>
226 226 <value type="int">7</value>
227 227 <value type="int">8</value>
228 228 <value type="int">9</value>
229 229 <value type="int">10</value>
230 230 <value type="int">11</value>
231 231 <value type="int">12</value>
232 232 <value type="int">13</value>
233 233 <value type="int">14</value>
234 234 </valuelist>
235 235 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
236 236 <value type="int" key="ProjectExplorer.CustomExecutableRunConfiguration.BaseEnvironmentBase">2</value>
237 237 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable">lppmon</value>
238 238 <value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
239 239 <valuelist type="QVariantList" key="ProjectExplorer.CustomExecutableRunConfiguration.UserEnvironmentChanges"/>
240 240 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
241 241 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Run lppmon</value>
242 242 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
243 243 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
244 244 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
245 245 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
246 246 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
247 247 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value>
248 248 </valuemap>
249 249 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.1">
250 250 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
251 251 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
252 252 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
253 253 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
254 254 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
255 255 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
256 256 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
257 257 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
258 258 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
259 259 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
260 260 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
261 261 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
262 262 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
263 263 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
264 264 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
265 265 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
266 266 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
267 267 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
268 268 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
269 269 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
270 270 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
271 271 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
272 272 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
273 273 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
274 274 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
275 275 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
276 276 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
277 277 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
278 278 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
279 279 <value type="int">0</value>
280 280 <value type="int">1</value>
281 281 <value type="int">2</value>
282 282 <value type="int">3</value>
283 283 <value type="int">4</value>
284 284 <value type="int">5</value>
285 285 <value type="int">6</value>
286 286 <value type="int">7</value>
287 287 <value type="int">8</value>
288 288 <value type="int">9</value>
289 289 <value type="int">10</value>
290 290 <value type="int">11</value>
291 291 <value type="int">12</value>
292 292 <value type="int">13</value>
293 293 <value type="int">14</value>
294 294 </valuelist>
295 295 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
296 296 <value type="int">0</value>
297 297 <value type="int">1</value>
298 298 <value type="int">2</value>
299 299 <value type="int">3</value>
300 300 <value type="int">4</value>
301 301 <value type="int">5</value>
302 302 <value type="int">6</value>
303 303 <value type="int">7</value>
304 304 <value type="int">8</value>
305 305 <value type="int">9</value>
306 306 <value type="int">10</value>
307 307 <value type="int">11</value>
308 308 <value type="int">12</value>
309 309 <value type="int">13</value>
310 310 <value type="int">14</value>
311 311 </valuelist>
312 312 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">spwtimegenerator</value>
313 313 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
314 314 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration</value>
315 315 <value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value>
316 316 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
317 317 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">spwtimegenerator/spwtimegenerator/spwtimegenerator.pro</value>
318 318 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
319 319 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
320 320 <valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/>
321 321 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
322 322 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
323 323 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
324 324 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
325 325 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
326 326 </valuemap>
327 327 <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">2</value>
328 328 </valuemap>
329 329 </data>
330 330 <data>
331 331 <variable>ProjectExplorer.Project.TargetCount</variable>
332 332 <value type="int">1</value>
333 333 </data>
334 334 <data>
335 335 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
336 336 <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value>
337 337 </data>
338 338 <data>
339 339 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
340 340 <value type="int">10</value>
341 341 </data>
342 342 </qtcreator>
@@ -1,79 +1,99
1 1 #include "qipdialogbox.h"
2 2 #include <QSpinBox>
3 3 #include <QHBoxLayout>
4 4 #include <QVBoxLayout>
5 5 #include <QLabel>
6 6 #include <QString>
7 7 #include <QLocale>
8 8
9 9 QIPDialogBox::QIPDialogBox(QWidget *parent) :
10 10 QWidget(parent)
11 11 {
12 12 //labelGRESBIP = new QLabel(tr("IP not set"));
13 13 QHBoxLayout *addressLayout = new QHBoxLayout;
14 14 QVBoxLayout *mainLayout = new QVBoxLayout;
15 15 addressPart1 = new QSpinBox;
16 16 addressPart2 = new QSpinBox;
17 17 addressPart3 = new QSpinBox;
18 18 addressPart4 = new QSpinBox;
19 19
20 20 addressPart1->setRange(0, 255);
21 21 addressPart1->setValue(129);
22 22 addressPart1->setButtonSymbols(QAbstractSpinBox::NoButtons);
23 23
24 24 addressPart2->setRange(0, 255);
25 25 addressPart2->setValue(104);
26 26 addressPart2->setButtonSymbols(QAbstractSpinBox::NoButtons);
27 27
28 28 addressPart3->setRange(0, 255);
29 29 addressPart3->setValue(27);
30 30 addressPart3->setButtonSymbols(QAbstractSpinBox::NoButtons);
31 31
32 32 addressPart4->setRange(0, 255);
33 33 addressPart4->setValue(113);
34 34 addressPart4->setButtonSymbols(QAbstractSpinBox::NoButtons);
35 35
36 36 valueChanged();
37 37
38 38 connect(addressPart1, SIGNAL(valueChanged(int)), this, SLOT(valueChanged()));
39 39 connect(addressPart2, SIGNAL(valueChanged(int)), this, SLOT(valueChanged()));
40 40 connect(addressPart3, SIGNAL(valueChanged(int)), this, SLOT(valueChanged()));
41 41 connect(addressPart4, SIGNAL(valueChanged(int)), this, SLOT(valueChanged()));
42 42
43 43 addressLayout->addWidget(addressPart1);
44 44 addressLayout->addWidget(addressPart2);
45 45 addressLayout->addWidget(addressPart3);
46 46 addressLayout->addWidget(addressPart4);
47 47 mainLayout->addLayout(addressLayout);
48 48 //mainLayout->addWidget(labelGRESBIP);
49 49
50 50 setLayout(mainLayout);
51 51 }
52 52
53 53 void QIPDialogBox::valueChanged() // SLOT
54 54 {
55 55 gresbIP = addressPart1->cleanText();
56 56 gresbIP.append(".");
57 57 gresbIP.append(addressPart2->cleanText());
58 58 gresbIP.append(".");
59 59 gresbIP.append(addressPart3->cleanText());
60 60 gresbIP.append(".");
61 61 gresbIP.append(addressPart4->cleanText());
62 62 }
63 63
64 64 QString QIPDialogBox::getIP()
65 65 {
66 66 return(gresbIP);
67 67 }
68 68
69 69 void QIPDialogBox::setIP(unsigned char address1, unsigned char address2, unsigned char address3, unsigned char address4)
70 70 {
71 71 addressPart1->setValue(address1);
72 72 addressPart2->setValue(address2);
73 73 addressPart3->setValue(address3);
74 74 addressPart4->setValue(address4);
75 75 addressPart1->repaint();
76 76 addressPart2->repaint();
77 77 addressPart3->repaint();
78 78 addressPart4->repaint();
79 79 }
80
81 unsigned char QIPDialogBox::getAddressPart1()
82 {
83 return (unsigned char) addressPart1->value();
84 }
85
86 unsigned char QIPDialogBox::getAddressPart2()
87 {
88 return (unsigned char) addressPart2->value();
89 }
90
91 unsigned char QIPDialogBox::getAddressPart3()
92 {
93 return (unsigned char) addressPart3->value();
94 }
95
96 unsigned char QIPDialogBox::getAddressPart4()
97 {
98 return (unsigned char) addressPart4->value();
99 }
@@ -1,31 +1,35
1 1 #ifndef WIDGETADDRESS_H
2 2 #define WIDGETADDRESS_H
3 3
4 4 #include <QWidget>
5 5 #include <QSpinBox>
6 6 #include <QString>
7 7 #include <QLabel>
8 8
9 9 class QIPDialogBox : public QWidget
10 10 {
11 11 Q_OBJECT
12 12 public:
13 13 explicit QIPDialogBox(QWidget *parent = 0);
14 14 void setIP(unsigned char address1, unsigned char address2, unsigned char address3, unsigned char address4);
15 15
16 16 signals:
17 17
18 18 public slots:
19 19 void valueChanged();
20 20 QString getIP();
21 unsigned char getAddressPart1();
22 unsigned char getAddressPart2();
23 unsigned char getAddressPart3();
24 unsigned char getAddressPart4();
21 25
22 26 private:
23 27 QSpinBox *addressPart1;
24 28 QSpinBox *addressPart2;
25 29 QSpinBox *addressPart3;
26 30 QSpinBox *addressPart4;
27 31 //QLabel * labelGRESBIP;
28 32 QString gresbIP;
29 33 };
30 34
31 35 #endif // WIDGETADDRESS_H
@@ -1,52 +1,52
1 1 #-------------------------------------------------
2 2 #
3 3 # Project created by QtCreator 2013-05-03T14:05:02
4 4 #
5 5 #-------------------------------------------------
6 6
7 7 QT += core gui
8 8 QT += network
9 9 QT += xml
10 10
11 TARGET = gselesia
11 TARGET = lfrsgse
12 12 TEMPLATE = app
13 13
14 14 INCLUDEPATH += \
15 15 $${PWD} \
16 16 ../common_PLE \
17 17 ../rmapplugin \
18 18 ../../DEV_PLE/header \
19 19 $$[QT_INSTALL_HEADERS]/lppmon/common \
20 20 $$[QT_INSTALL_HEADERS]/lppmon/wfdisplay
21 21
22 22 LIBS += -llppmoncommon -lwfdisplay -lqwt5-qt4
23 23
24 24 SOURCES += main.cpp\
25 25 mainwindow.cpp \
26 26 mainwindowui.cpp \
27 27 ../common_PLE/qipdialogbox.cpp \
28 28 lfrxmlhandler.cpp \
29 29 lfrxmlwriter.cpp \
30 30 ../rmapplugin/tmstatistics.cpp \
31 31 ../rmapplugin/tmpackettoread.cpp \
32 32 ../rmapplugin/wfpacket.cpp \
33 33 ../common_PLE/hkdisplay.cpp \
34 34 lfrxmlparser.cpp \
35 35 lfrspectrogram.cpp
36 36
37 37 HEADERS += mainwindow.h \
38 38 mainwindowui.h \
39 39 ../common_PLE/qipdialogbox.h \
40 40 lfrxmlhandler.h \
41 41 lfrxmlwriter.h \
42 42 ../rmapplugin/tmstatistics.h \
43 43 ../rmapplugin/tmpackettoread.h \
44 44 ../rmapplugin/wfpacket.h \
45 45 ../common_PLE/hkdisplay.h \
46 46 ../rmapplugin/params.h \
47 47 ../../DEV_PLE/header/ccsds_types.h \
48 48 lfrxmlparser.h \
49 49 lfrspectrogram.h
50 50
51 51
52 52
@@ -1,265 +1,265
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by Qt Creator 2.4.1, 2013-06-28T13:47:27. -->
3 <!-- Written by Qt Creator 2.4.1, 2013-07-02T14:22:52. -->
4 4 <qtcreator>
5 5 <data>
6 6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
7 7 <value type="int">0</value>
8 8 </data>
9 9 <data>
10 10 <variable>ProjectExplorer.Project.EditorSettings</variable>
11 11 <valuemap type="QVariantMap">
12 12 <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
13 13 <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
14 14 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
15 15 <value type="QString" key="language">Cpp</value>
16 16 <valuemap type="QVariantMap" key="value">
17 17 <value type="QString" key="CurrentPreferences">CppGlobal</value>
18 18 </valuemap>
19 19 </valuemap>
20 20 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
21 21 <value type="QString" key="language">QmlJS</value>
22 22 <valuemap type="QVariantMap" key="value">
23 23 <value type="QString" key="CurrentPreferences">QmlJSGlobal</value>
24 24 </valuemap>
25 25 </valuemap>
26 26 <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
27 27 <value type="QByteArray" key="EditorConfiguration.Codec">System</value>
28 28 <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
29 29 <value type="int" key="EditorConfiguration.IndentSize">4</value>
30 30 <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
31 31 <value type="int" key="EditorConfiguration.PaddingMode">1</value>
32 32 <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
33 33 <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
34 34 <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
35 35 <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
36 36 <value type="int" key="EditorConfiguration.TabSize">8</value>
37 37 <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
38 38 <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
39 39 <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
40 40 <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
41 41 <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
42 42 <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
43 43 </valuemap>
44 44 </data>
45 45 <data>
46 46 <variable>ProjectExplorer.Project.PluginSettings</variable>
47 47 <valuemap type="QVariantMap"/>
48 48 </data>
49 49 <data>
50 50 <variable>ProjectExplorer.Project.Target.0</variable>
51 51 <valuemap type="QVariantMap">
52 52 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
53 53 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
54 54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value>
55 55 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
56 56 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
57 57 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
58 58 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
59 59 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
60 60 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
61 61 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
62 62 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
63 63 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
64 64 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
65 65 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
66 66 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
67 67 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
68 68 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
69 69 </valuemap>
70 70 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
71 71 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
72 72 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
73 73 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
74 74 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
75 75 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
76 76 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
77 77 </valuemap>
78 78 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
79 79 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
80 80 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
81 81 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
82 82 </valuemap>
83 83 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
84 84 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
85 85 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
86 86 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
87 87 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
88 88 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
89 89 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
90 90 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
91 91 </valuemap>
92 92 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
93 93 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
94 94 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
95 95 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
96 96 </valuemap>
97 97 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
98 98 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
99 99 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
100 100 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value>
101 101 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
102 102 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
103 103 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
104 104 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/GSE_LESIA/gselesia</value>
105 105 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
106 106 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
107 107 </valuemap>
108 108 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
109 109 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
110 110 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
111 111 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
112 112 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
113 113 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
114 114 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
115 115 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
116 116 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
117 117 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
118 118 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
119 119 </valuemap>
120 120 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
121 121 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
122 122 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
123 123 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
124 124 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
125 125 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
126 126 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
127 127 </valuemap>
128 128 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
129 129 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
130 130 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
131 131 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
132 132 </valuemap>
133 133 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
134 134 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
135 135 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
136 136 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
137 137 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
138 138 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
139 139 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
140 140 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
141 141 </valuemap>
142 142 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
143 143 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
144 144 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
145 145 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
146 146 </valuemap>
147 147 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
148 148 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
149 149 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
150 150 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value>
151 151 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
152 152 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
153 153 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
154 154 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/GSE_LESIA/gselesia</value>
155 155 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
156 156 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
157 157 </valuemap>
158 158 <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
159 159 <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
160 160 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
161 161 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
162 162 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
163 163 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
164 164 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
165 165 </valuemap>
166 166 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
167 167 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value>
168 168 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
169 169 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
170 170 </valuemap>
171 171 <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
172 172 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
173 173 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
174 174 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
175 175 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
176 176 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
177 177 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
178 178 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
179 179 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
180 180 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
181 181 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
182 182 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
183 183 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
184 184 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
185 185 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
186 186 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
187 187 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
188 188 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
189 189 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
190 190 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
191 191 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
192 192 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
193 193 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
194 194 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
195 195 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
196 196 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
197 197 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
198 198 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
199 199 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
200 200 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
201 201 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
202 202 <value type="int">0</value>
203 203 <value type="int">1</value>
204 204 <value type="int">2</value>
205 205 <value type="int">3</value>
206 206 <value type="int">4</value>
207 207 <value type="int">5</value>
208 208 <value type="int">6</value>
209 209 <value type="int">7</value>
210 210 <value type="int">8</value>
211 211 <value type="int">9</value>
212 212 <value type="int">10</value>
213 213 <value type="int">11</value>
214 214 <value type="int">12</value>
215 215 <value type="int">13</value>
216 216 <value type="int">14</value>
217 217 </valuelist>
218 218 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
219 219 <value type="int">0</value>
220 220 <value type="int">1</value>
221 221 <value type="int">2</value>
222 222 <value type="int">3</value>
223 223 <value type="int">4</value>
224 224 <value type="int">5</value>
225 225 <value type="int">6</value>
226 226 <value type="int">7</value>
227 227 <value type="int">8</value>
228 228 <value type="int">9</value>
229 229 <value type="int">10</value>
230 230 <value type="int">11</value>
231 231 <value type="int">12</value>
232 232 <value type="int">13</value>
233 233 <value type="int">14</value>
234 234 </valuelist>
235 235 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">gselesia</value>
236 236 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
237 237 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration</value>
238 238 <value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value>
239 239 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
240 240 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">gselesia.pro</value>
241 241 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
242 242 <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
243 243 <valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/>
244 244 <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
245 245 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
246 246 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
247 247 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
248 248 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value>
249 249 </valuemap>
250 250 <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
251 251 </valuemap>
252 252 </data>
253 253 <data>
254 254 <variable>ProjectExplorer.Project.TargetCount</variable>
255 255 <value type="int">1</value>
256 256 </data>
257 257 <data>
258 258 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
259 259 <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value>
260 260 </data>
261 261 <data>
262 262 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
263 263 <value type="int">10</value>
264 264 </data>
265 265 </qtcreator>
@@ -1,472 +1,497
1 1 #include "mainwindow.h"
2 2 #include <iostream>
3 3 #include <QNetworkInterface>
4 4
5 5 MainWindow::MainWindow(QWidget *parent)
6 6 : QWidget(parent)
7 7 {
8 8 parsingContinue = false;
9 9 totalOfBytes = 0;
10 10 totalOfPackets = 0;
11 11
12 12 analyserSGSEServerTC = new QTcpServer();
13 13 analyserSGSEServerTM = new QTcpServer();
14 14
15 15 socketTC = NULL;
16 16 socketTM = NULL;
17 17 socketEchoServer = new QTcpSocket();
18 18
19 19 //****
20 20 // XML
21 21 // xml handlers
22 22 xmlHandler = new LFRXmlHandler();
23 23 // xml sources
24 24 sourceTC = new QXmlInputSource();
25 25 // xml writer
26 26 lfrXmlWriter = new LFRXmlWriter();
27 27 // setup xml parser for the echo bridge
28 28 lfrXmlParser = new LFRXmlParser();
29 29
30 30 UI = new MainWindowUI();
31 readSettings();
32 this->UI->serverTMEchoDialogBox->setIP(echoBridgeIP0, echoBridgeIP1, echoBridgeIP2, echoBridgeIP3);
31 33
32 34 lfrXmlParser->generalCCSDSPacketStore = &this->generalCCSDSPacketStore;
33 35
34 36 initSocketStatesList();
35 37
36 38 this->setLayout(UI->layout());
37 39
38 40 connect(this->UI->button_openServerTCTM, SIGNAL(clicked()), this, SLOT(listenOnTCTMPorts()));
39 41 connect(this->UI->button_testServerTCTM, SIGNAL(clicked()), this, SLOT(testTCTMPorts()));
40 42 connect(this->UI->button_openSocketEchoServer, SIGNAL(clicked()), this, SLOT(openEchoServer()));
41 43 //
42 44 connect(this->analyserSGSEServerTC, SIGNAL(newConnection()), this, SLOT(newConnectionOnTCServer()));
43 45 connect(this->analyserSGSEServerTM, SIGNAL(newConnection()), this, SLOT(newConnectionOnTMServer()));
44 46 //
45 47 connect(this, SIGNAL(socketTMHasChanged(QTcpSocket*)), this->lfrXmlWriter, SLOT(setSocketTM(QTcpSocket*)));
46 48 connect(this->UI->button_TCAcknowledgement, SIGNAL(clicked()), this->lfrXmlWriter, SLOT(sendXML_TC_Acknowledgment()));
47 49 connect(this->UI->button_TCRejection, SIGNAL(clicked()), this->lfrXmlWriter, SLOT(sendXML_TC_rejection()));
48 50 connect(this->UI->button_GSEHK, SIGNAL(clicked()), this->lfrXmlWriter, SLOT(sendXML_GSE_HK()));
49 51
50 52 // socket echo server
51 53 connect(this->socketEchoServer, SIGNAL(stateChanged(QAbstractSocket::SocketState)),
52 54 this, SLOT(socket_TMEcho_ServerHasChanged()));
53 55 connect(this->socketEchoServer, SIGNAL(readyRead()),
54 56 this, SLOT(readDataOnSocketEchoServer()));
55 57
56 58 // display on console
57 59 connect(this->xmlHandler, SIGNAL(displayMessage(QString)),
58 60 this, SLOT(displayOnConsole(QString)));
59 61 connect(this->UI->hkDisplay, SIGNAL(displayMessage(QString)),
60 62 this, SLOT(displayOnConsole(QString)));
61 63 connect(this->lfrXmlParser, SIGNAL(sendMessage(QString)),
62 64 this, SLOT(displayOnConsole(QString)));
63 65 //
64 66 connect(this->lfrXmlParser, SIGNAL(processPacketStore()),
65 67 this, SLOT(processPacketStore()));
66 68 //
67 69 connect(this->UI->button_resetStatistics, SIGNAL(clicked()),
68 70 this, SLOT(resetStatistics()));
69 71
70 72 displayNetworkInterfaces();
71 73
72 74 this->xmlHandler->packetStoreHasChanged(&generalCCSDSPacketStore);
73 75 };
74 76
75 77 MainWindow::~MainWindow()
76 78 {
77 79
78 80 }
79 81
80 82 void MainWindow::displayNetworkInterfaces()
81 83 {
82 84 QList<QHostAddress> list = QNetworkInterface::allAddresses();
83 85 this->displayOnConsole("Network interfaces:");
84 86 for(int nIter=0; nIter<list.count(); nIter++)
85 87 {
86 88 this->UI->displayOnConsole(list[nIter].toString());
87 89 }
88 90 }
89 91
90 92 void MainWindow::listenOnTCTMPorts()
91 93 {
92 94 QString str;
93 95
94 96 //***
95 97 // TC
96 98 analyserSGSEServerTC->listen(QHostAddress::Any, this->UI->getTCPort());
97 99 str = analyserSGSEServerTC->errorString();
98 100 if (!str.isEmpty())
99 101 {
100 102 this->displayOnConsole(str);
101 103 }
102 104 this->displayOnConsole("Listening TC on port "
103 105 + QString::number(this->UI->getTCPort())
104 106 );
105 107
106 108 //***
107 109 // TM
108 110 analyserSGSEServerTM->listen(QHostAddress::Any, this->UI->getTMPort());
109 111 str = analyserSGSEServerTM->errorString();
110 112 if (!str.isEmpty())
111 113 {
112 114 this->displayOnConsole(str);
113 115 }
114 116 this->displayOnConsole("Listening TM on port "
115 117 + QString::number(this->UI->getTMPort())
116 118 );
117 119 }
118 120
119 121 void MainWindow::testTCTMPorts()
120 122 {
121 123 if (socketTC != NULL)
122 124 {
123 125 this->displayOnConsole("TC socket *** " + socketStates.at(socketTC->state()) );
124 126 }
125 127 else
126 128 {
127 129 this->displayOnConsole("TC socket *** not tested, (socketTC) is NULL" );
128 130 }
129 131 if (socketTM != NULL)
130 132 {
131 133 this->displayOnConsole("TM socket *** " + socketStates.at(socketTM->state()) );
132 134 }
133 135 else
134 136 {
135 137 this->displayOnConsole("TM socket *** not tested, (socketTM) is NULL" );
136 138 }
137 139 }
138 140
139 141 void MainWindow::newConnectionOnTCServer()
140 142 {
141 143 this->displayOnConsole("got new connection on TC port");
142 144 socketTC = analyserSGSEServerTC->nextPendingConnection();
143 145 this->displayOnConsole("TC socket *** " + socketStates.at(socketTC->state()) );
144 146 connect(this->socketTC, SIGNAL(readyRead()), this, SLOT(readDataOnTCPort()));
145 147 }
146 148
147 149 void MainWindow::newConnectionOnTMServer()
148 150 {
149 151 this->displayOnConsole("got new connection on TM port");
150 152 socketTM = analyserSGSEServerTM->nextPendingConnection();
151 153 this->displayOnConsole("TM socket *** " + socketStates.at(socketTM->state()) );
152 154 connect(this->socketTM, SIGNAL(readyRead()), this, SLOT(readDataOnTMPort()));
153 155
154 156 emit socketTMHasChanged(this->socketTM);
155 157 }
156 158
157 159 void MainWindow::readDataOnTCPort()
158 160 {
159 161 bool ok;
160 162 int nbBytesAvailable = 0;
161 163
162 164 nbBytesAvailable = socketTC->bytesAvailable();
163 165 buffer = (char *) malloc(nbBytesAvailable);
164 166 socketTC->read(buffer, nbBytesAvailable);
165 167
166 168 this->displayOnConsole("readDataOnTCPort *** "
167 169 + QString::number(nbBytesAvailable)
168 170 + " read");
169 171
170 172 QByteArray xmlData( buffer, nbBytesAvailable);
171 173
172 174 free(buffer);
173 175
174 176 sourceTC->setData( xmlData );
175 177
176 178 xmlReader.setContentHandler(xmlHandler);
177 179 xmlReader.setErrorHandler(xmlHandler);
178 180
179 181 ok = xmlReader.parse(sourceTC);
180 182 if (!ok) {
181 183 std::cout << "Parsing failed." << std::endl;
182 184 }
183 185 else {
184 186 QStringList names = xmlHandler->names();
185 187 QList<int> indentations = xmlHandler->indentations();
186 188
187 189 int items = names.count();
188 190
189 191 for (int i = 0; i < items; ++i) {
190 192 displayOnConsole(
191 193 names[i]
192 194 + " --- identations: "
193 195 + QString::number(indentations[i]));
194 196 }
195 197 }
196 198 }
197 199
198 200 void MainWindow::readDataOnTMPort()
199 201 {
200 202 this->displayOnConsole("TM data received, begin parsing");
201 203 }
202 204
203 205 void MainWindow::readDataOnSocketEchoServer()
204 206 {
205 207 QString dataString;
206 208
207 209 dataArray.append(socketEchoServer->readAll());
208 210 dataString = QString::fromAscii(dataArray);
209 211 this->lfrXmlParser->processIncomingStr(dataString);
210 212 dataArray.clear();
211 213 }
212 214
213 215 void MainWindow::displayOnConsole(QString message)
214 216 {
215 217 this->UI->displayOnConsole( message );
216 218 }
217 219
218 220 void MainWindow::initSocketStatesList()
219 221 {
220 222 socketStates.append("The socket is not connected");
221 223 socketStates.append("The socket is performing a host name lookup");
222 224 socketStates.append("The socket has started establishing a connection");
223 225 socketStates.append("A connection is established");
224 226 socketStates.append("The socket is bound to an address and port (for servers)");
225 227 socketStates.append("The socket is about to close (data may still be waiting to be written)");
226 228 socketStates.append("For internal use only");
227 229 }
228 230
229 231 void MainWindow::openEchoServer()
230 232 {
231 233 socketEchoServer->connectToHost(this->UI->serverTMEchoDialogBox->getIP(),
232 234 this->UI->spinbox_serverTMEchoPort->value());
233 235 //socketEchoServer->open();
234 236 }
235 237
236 238 void MainWindow::socket_TMEcho_ServerHasChanged()
237 239 {
238 240 this->displayOnConsole("TM Echo Socket socket *** " + socketStates.at(socketEchoServer->state()) );
239 241 }
240 242
241 243 void MainWindow::preProcessPacket(TMPacketToRead *packet)
242 244 {
243 245 unsigned char pid = 0;
244 246 unsigned char cat = 0;
245 247 unsigned char typ = 0;
246 248 unsigned char sub = 0;
247 249 unsigned int sid = 0;
248 250 unsigned int length = 0;
249 251 unsigned int coarse_t = 0;
250 252 unsigned int fine_t = 0;
251 253
252 254 //*********************************
253 255 // get the parameters of the packet
254 256 pid = ((packet->Value[4] & 0x07) << 4) + ((packet->Value[5] & 0xf0) >> 4);
255 257 cat = packet->Value[5] & 0x0f;
256 258 typ = packet->Value[11]; // TYPE
257 259 sub = packet->Value[12]; // SUBTYPE
258 260 sid = 0;
259 261 length = packet->Value[8] * 256 + packet->Value[9];
260 262 // compare length in the packet with the size of the packet
261 263 if ( (length + 1 + 10) != (packet->size))
262 264 {
263 265 displayOnConsole("reception of " + QString::number(packet->size)
264 266 + " bytes instead of " + QString::number(length + 1 + 10));
265 267 }
266 268 coarse_t = packet->Value[14] * pow(2, 24) + packet->Value[15] * pow(2, 16)
267 269 + packet->Value[16] * pow(2, 8) + packet->Value[17];
268 270 fine_t = packet->Value[18] * pow(2, 8) + packet->Value[19];
269 271
270 272 if ((pid == 76) & (cat == 1) & (typ == 1) & (sub == 8))
271 273 sid = packet->Value[20] * 256 + packet->Value[21];
272 274 else if ((pid == 76) & (cat == 4) & (typ == 3) & (sub == 25))
273 275 sid = 1;
274 276 else if ((pid == 76) & (cat == 12) & (typ == 21) & (sub == 3))
275 277 sid = packet->Value[20];
276 278 else if ((pid == 79) & (cat == 12) & (typ == 21) & (sub == 3))
277 279 sid = packet->Value[20];
278 280
279 281 this->UI->tmStatistics->updateStatistics(pid, cat, typ, sub, sid, length, coarse_t, fine_t);
280 282
281 283 //***************************************************
282 284 // if the packet is an HK packet, display its content
283 285 if ( (typ == TYPE_HK) & (sub == SUBTYPE_HK) )
284 286 {
285 287 this->UI->hkDisplay->displayPacket(packet);
286 288 }
287 289
288 290 //****************************************
289 291 // if the packet is a waveform, display it
290 292 if ( (typ == 21) & (sub == 3) )
291 293 {
292 294 sid = packet->Value[20]; // SID
293 295 switch (sid){
294 296 case SID_NORMAL_SWF_F0:
295 297 buildWFAndDisplay(packet, &wfPacketNormal[0], 0);
296 298 break;
297 299 case SID_NORMAL_SWF_F1:
298 300 buildWFAndDisplay(packet, &wfPacketNormal[1], 1);
299 301 break;
300 302 case SID_NORMAL_SWF_F2:
301 303 buildWFAndDisplay(packet, &wfPacketNormal[2], 2);
302 304 break;
303 305 case SID_NORMAL_CWF_F3:
304 306 buildWFAndDisplay(packet, &wfPacketNormal[3], 3);
305 307 break;
306 308 case SID_BURST_CWF_F2:
307 309 buildWFAndDisplayBurst(packet, &wfPacketBurst);
308 310 break;
309 311 case SID_SBM1_CWF_F1:
310 312 buildWFAndDisplaySBM1(packet, &wfPacketSBM1);
311 313 break;
312 314 case SID_SBM2_CWF_F2:
313 315 buildWFAndDisplaySBM2(packet, &wfPacketSBM2);
314 316 break;
315 317 }
316 318 }
317 319 }
318 320
319 321 void MainWindow::buildWFAndDisplay(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page)
320 322 {
321 323 unsigned int i = 0;
322 324 unsigned int j = 0;
323 325 unsigned char *data;
324 326 unsigned char pkt_nr = 0;
325 327 unsigned int blk_nr = 0;
326 328
327 329 pkt_nr = packet->Value[23]; // PKT_NR
328 330 blk_nr = packet->Value[30] * 256 + packet->Value[31];
329 331 data = &packet->Value[32]; // start of the first data block;
330 332 j = (pkt_nr-1) * 340;
331 333 for ( i=0; i<blk_nr; i++ ){
332 334 wfPacket->wf_e1[j + i] = (short) ( (data[ (i * BLK_SIZE) ] << 8) + (data[ (i*BLK_SIZE) + 1]) );
333 335 wfPacket->wf_v[j + i] = (short) ( (data[ (i * BLK_SIZE) + 2] << 8) + (data[ (i*BLK_SIZE) + 3]) );
334 336 wfPacket->wf_b1[j + i] = (short) ( (data[ (i * BLK_SIZE) + 4] << 8) + (data[ (i*BLK_SIZE) + 5]) );
335 337 wfPacket->wf_e2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 6] << 8) + (data[ (i*BLK_SIZE) + 7]) );
336 338 wfPacket->wf_b3[j + i] = (short) ( (data[ (i * BLK_SIZE) + 8] << 8) + (data[ (i*BLK_SIZE) + 9]) );
337 339 wfPacket->wf_b2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 10] << 8) + (data[ (i*BLK_SIZE) + 11]) );
338 340 }
339 341 if (pkt_nr == 7)
340 342 {
341 343 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_v, num_page, 0);
342 344 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_e1, num_page, 1);
343 345 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_e2, num_page, 2);
344 346 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b1, num_page, 3);
345 347 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b2, num_page, 4);
346 348 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b3, num_page, 5);
347 349 }
348 350 }
349 351
350 352 void MainWindow::buildWFAndDisplayBurst(TMPacketToRead *packet, WFPacket *wfPacket)
351 353 {
352 354 unsigned int i = 0;
353 355 unsigned int j = 0;
354 356 unsigned char *data;
355 357 static unsigned char pkt_nr = 1;
356 358 unsigned int blk_nr = 0;
357 359
358 360 blk_nr = packet->Value[28] * 256 + packet->Value[29];
359 361 data = &packet->Value[30]; // start of the first data block;
360 362 j = (pkt_nr-1) * 340;
361 363 for ( i=0; i<blk_nr; i++ ){
362 364 wfPacket->wf_e1[j + i] = (short) ( (data[ (i * BLK_SIZE) ] << 8) + (data[ (i*BLK_SIZE) + 1]) );
363 365 wfPacket->wf_v[j + i] = (short) ( (data[ (i * BLK_SIZE) + 2] << 8) + (data[ (i*BLK_SIZE) + 3]) );
364 366 wfPacket->wf_b1[j + i] = (short) ( (data[ (i * BLK_SIZE) + 4] << 8) + (data[ (i*BLK_SIZE) + 5]) );
365 367 wfPacket->wf_e2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 6] << 8) + (data[ (i*BLK_SIZE) + 7]) );
366 368 wfPacket->wf_b3[j + i] = (short) ( (data[ (i * BLK_SIZE) + 8] << 8) + (data[ (i*BLK_SIZE) + 9]) );
367 369 wfPacket->wf_b2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 10] << 8) + (data[ (i*BLK_SIZE) + 11]) );
368 370 }
369 371 pkt_nr = pkt_nr + 1;
370 372 if (blk_nr == 8)
371 373 {
372 374 this->UI->wfPageBurst->displayOnPlot(wfPacket->wf_v, 0);
373 375 this->UI->wfPageBurst->displayOnPlot(wfPacket->wf_e1, 1);
374 376 this->UI->wfPageBurst->displayOnPlot(wfPacket->wf_e2, 2);
375 377 this->UI->wfPageBurst->displayOnPlot(wfPacket->wf_b1, 3);
376 378 this->UI->wfPageBurst->displayOnPlot(wfPacket->wf_b2, 4);
377 379 this->UI->wfPageBurst->displayOnPlot(wfPacket->wf_b3, 5);
378 380 pkt_nr = 1;
379 381 }
380 382 }
381 383
382 384 void MainWindow::buildWFAndDisplaySBM1(TMPacketToRead *packet, WFPacket *wfPacket)
383 385 {
384 386 unsigned int i = 0;
385 387 unsigned int j = 0;
386 388 unsigned char *data;
387 389 static unsigned char pkt_nr = 1;
388 390 unsigned int blk_nr = 0;
389 391
390 392 blk_nr = packet->Value[28] * 256 + packet->Value[29];
391 393 data = &packet->Value[30]; // start of the first data block;
392 394 j = (pkt_nr-1) * 340;
393 395 for ( i=0; i<blk_nr; i++ ){
394 396 wfPacket->wf_e1[j + i] = (short) ( (data[ (i * BLK_SIZE) ] << 8) + (data[ (i*BLK_SIZE) + 1]) );
395 397 wfPacket->wf_v[j + i] = (short) ( (data[ (i * BLK_SIZE) + 2] << 8) + (data[ (i*BLK_SIZE) + 3]) );
396 398 wfPacket->wf_b1[j + i] = (short) ( (data[ (i * BLK_SIZE) + 4] << 8) + (data[ (i*BLK_SIZE) + 5]) );
397 399 wfPacket->wf_e2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 6] << 8) + (data[ (i*BLK_SIZE) + 7]) );
398 400 wfPacket->wf_b3[j + i] = (short) ( (data[ (i * BLK_SIZE) + 8] << 8) + (data[ (i*BLK_SIZE) + 9]) );
399 401 wfPacket->wf_b2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 10] << 8) + (data[ (i*BLK_SIZE) + 11]) );
400 402 }
401 403 pkt_nr = pkt_nr + 1;
402 404 if (blk_nr == 8)
403 405 {
404 406 this->UI->wfPageSBM1->displayOnPlot(wfPacket->wf_v, 0);
405 407 this->UI->wfPageSBM1->displayOnPlot(wfPacket->wf_e1, 1);
406 408 this->UI->wfPageSBM1->displayOnPlot(wfPacket->wf_e2, 2);
407 409 this->UI->wfPageSBM1->displayOnPlot(wfPacket->wf_b1, 3);
408 410 this->UI->wfPageSBM1->displayOnPlot(wfPacket->wf_b2, 4);
409 411 this->UI->wfPageSBM1->displayOnPlot(wfPacket->wf_b3, 5);
410 412 pkt_nr = 1;
411 413 }
412 414 }
413 415
414 416 void MainWindow::buildWFAndDisplaySBM2(TMPacketToRead *packet, WFPacket *wfPacket)
415 417 {
416 418 unsigned int i = 0;
417 419 unsigned int j = 0;
418 420 unsigned char *data;
419 421 static unsigned char pkt_nr = 1;
420 422 unsigned int blk_nr = 0;
421 423
422 424 blk_nr = packet->Value[28] * 256 + packet->Value[29];
423 425 data = &packet->Value[30]; // start of the first data block;
424 426 j = (pkt_nr-1) * 340;
425 427 for ( i=0; i<blk_nr; i++ ){
426 428 wfPacket->wf_e1[j + i] = (short) ( (data[ (i * BLK_SIZE) ] << 8) + (data[ (i*BLK_SIZE) + 1]) );
427 429 wfPacket->wf_v[j + i] = (short) ( (data[ (i * BLK_SIZE) + 2] << 8) + (data[ (i*BLK_SIZE) + 3]) );
428 430 wfPacket->wf_b1[j + i] = (short) ( (data[ (i * BLK_SIZE) + 4] << 8) + (data[ (i*BLK_SIZE) + 5]) );
429 431 wfPacket->wf_e2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 6] << 8) + (data[ (i*BLK_SIZE) + 7]) );
430 432 wfPacket->wf_b3[j + i] = (short) ( (data[ (i * BLK_SIZE) + 8] << 8) + (data[ (i*BLK_SIZE) + 9]) );
431 433 wfPacket->wf_b2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 10] << 8) + (data[ (i*BLK_SIZE) + 11]) );
432 434 }
433 435 pkt_nr = pkt_nr + 1;
434 436 if (blk_nr == 8)
435 437 {
436 438 this->UI->wfPageSBM2->displayOnPlot(wfPacket->wf_v, 0);
437 439 this->UI->wfPageSBM2->displayOnPlot(wfPacket->wf_e1, 1);
438 440 this->UI->wfPageSBM2->displayOnPlot(wfPacket->wf_e2, 2);
439 441 this->UI->wfPageSBM2->displayOnPlot(wfPacket->wf_b1, 3);
440 442 this->UI->wfPageSBM2->displayOnPlot(wfPacket->wf_b2, 4);
441 443 this->UI->wfPageSBM2->displayOnPlot(wfPacket->wf_b3, 5);
442 444 pkt_nr = 1;
443 445 }
444 446 }
445 447
446 448 void MainWindow::processIncomingPacket(TMPacketToRead *packet)
447 449 {
448 450 totalOfBytes = totalOfBytes + packet->size;
449 451 totalOfPackets = totalOfPackets + 1;
450 452 this->UI->totalOfBytesHasChanged(totalOfBytes);
451 453 this->UI->totalOfPacketsHasChanged(totalOfPackets);
452 454 preProcessPacket(packet);
453 455 }
454 456
455 457 void MainWindow::resetStatistics()
456 458 {
457 459 totalOfBytes = 0;
458 460 totalOfPackets = 0;
459 461 this->UI->totalOfBytesHasChanged(totalOfBytes);
460 462 this->UI->totalOfPacketsHasChanged(totalOfPackets);
461 463 }
462 464
463 465 void MainWindow::processPacketStore()
464 466 {
465 467 TMPacketToRead *packet;
466 468 while(!generalCCSDSPacketStore.isEmpty())
467 469 {
468 470 packet = generalCCSDSPacketStore.takeFirst();
469 471 processIncomingPacket(packet);
470 472 delete(packet);
471 473 }
472 474 }
475
476 void MainWindow::readSettings()
477 {
478 QSettings settings("lpp", "lfrsge");
479 echoBridgeIP0 = (unsigned char) settings.value("echoBridgeIP0", 127).toInt();
480 echoBridgeIP1 = (unsigned char) settings.value("echoBridgeIP1", 0).toInt();
481 echoBridgeIP2 = (unsigned char) settings.value("echoBridgeIP2", 0).toInt();
482 echoBridgeIP3 = (unsigned char) settings.value("echoBridgeIP3", 1).toInt();
483 }
484
485 void MainWindow::writeSettings()
486 {
487 QSettings settings("lpp", "lfrsge");
488 settings.setValue("echoBridgeIP0", this->UI->serverTMEchoDialogBox->getAddressPart1());
489 settings.setValue("echoBridgeIP1", this->UI->serverTMEchoDialogBox->getAddressPart2());
490 settings.setValue("echoBridgeIP2", this->UI->serverTMEchoDialogBox->getAddressPart3());
491 settings.setValue("echoBridgeIP3", this->UI->serverTMEchoDialogBox->getAddressPart4());
492 }
493
494 void MainWindow::closeEvent(QCloseEvent *)
495 {
496 writeSettings();
497 }
@@ -1,85 +1,96
1 1 #ifndef MAINWINDOW_H
2 2 #define MAINWINDOW_H
3 3
4 4 #include <QtGui/QMainWindow>
5 5 #include <QTcpServer>
6 6 #include <QTcpSocket>
7 7 #include <QXmlSimpleReader>
8 #include <QSettings>
8 9
9 10 #include <lfrxmlhandler.h>
10 11 #include <lfrxmlwriter.h>
11 12 #include <mainwindowui.h>
12 13 #include "tmpackettoread.h"
13 14 #include "wfpacket.h"
14 15 #include "lfrxmlparser.h"
15 16
16 17 class MainWindow : public QWidget
17 18 {
18 19 Q_OBJECT
19 20
20 21 public:
21 22 MainWindow(QWidget *parent = 0);
22 23 ~MainWindow();
23 24
24 25 void displayNetworkInterfaces();
25 26 void initSocketStatesList();
26 27 void preProcessPacket(TMPacketToRead *packet);
27 28 void buildWFAndDisplay(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page);
28 29 void buildWFAndDisplayBurst(TMPacketToRead *packet, WFPacket *wfPacket);
29 30 void buildWFAndDisplaySBM1(TMPacketToRead *packet, WFPacket *wfPacket);
30 31 void buildWFAndDisplaySBM2(TMPacketToRead *packet, WFPacket *wfPacket);
31 32
33 protected:
34 void closeEvent(QCloseEvent *);
35
32 36 private:
37 void readSettings();
38 void writeSettings();
39 unsigned char echoBridgeIP0;
40 unsigned char echoBridgeIP1;
41 unsigned char echoBridgeIP2;
42 unsigned char echoBridgeIP3;
43
33 44 QByteArray dataArray;
34 45
35 46 QList<TMPacketToRead*> generalCCSDSPacketStore;
36 47
37 48 QTcpServer *analyserSGSEServerTC;
38 49 QTcpServer *analyserSGSEServerTM;
39 50 QTcpSocket *socketTC;
40 51 QTcpSocket *socketTM;
41 52 QTcpSocket *socketEchoServer;
42 53
43 54 unsigned int totalOfBytes;
44 55 unsigned int totalOfPackets;
45 56
46 57 QXmlSimpleReader xmlReader;
47 58 QXmlInputSource *sourceTC;
48 59 LFRXmlHandler *xmlHandler;
49 60 LFRXmlParser *lfrXmlParser;
50 61
51 62 QList<QString> socketStates;
52 63
53 64 char *buffer;
54 65
55 66 MainWindowUI *UI;
56 67
57 68 LFRXmlWriter *lfrXmlWriter;
58 69
59 70 WFPacket wfPacketNormal[4];
60 71 WFPacket wfPacketBurst;
61 72 WFPacket wfPacketSBM1;
62 73 WFPacket wfPacketSBM2;
63 74
64 75 bool parsingContinue;
65 76
66 77 signals:
67 78 void socketTMHasChanged(QTcpSocket *socket);
68 79
69 80 public slots:
70 81 void displayOnConsole(QString message);
71 82 void listenOnTCTMPorts();
72 83 void testTCTMPorts();
73 84 void newConnectionOnTCServer();
74 85 void newConnectionOnTMServer();
75 86 void readDataOnTCPort();
76 87 void readDataOnTMPort();
77 88 void readDataOnSocketEchoServer();
78 89 void openEchoServer();
79 90 void socket_TMEcho_ServerHasChanged();
80 91 void processIncomingPacket(TMPacketToRead *packet);
81 92 void resetStatistics();
82 93 void processPacketStore();
83 94 };
84 95
85 96 #endif // MAINWINDOW_H
@@ -1,406 +1,406
1 1 /*------------------------------------------------------------------------------
2 2 -- This file is a part of the LPPMON Software
3 3 -- Copyright (C) 2012, Laboratory of Plasma Physics - CNRS
4 4 --
5 5 -- This program is free software; you can redistribute it and/or modify
6 6 -- it under the terms of the GNU General Public License as published by
7 7 -- the Free Software Foundation; either version 3 of the License, or
8 8 -- (at your option) any later version.
9 9 --
10 10 -- This program is distributed in the hope that it will be useful,
11 11 -- but WITHOUT ANY WARRANTY; without even the implied warranty of
12 12 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 13 -- GNU General Public License for more details.
14 14 --
15 15 -- You should have received a copy of the GNU General Public License
16 16 -- along with this program; if not, write to the Free Software
17 17 -- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 18 -------------------------------------------------------------------------------*/
19 19 /*-- Author : Paul LEROY
20 20 -- Mail : paul.leroy@lpp.polytechnique.fr
21 21 ----------------------------------------------------------------------------*/
22 22 #include "rmapplugin.h"
23 23 #include <QHostAddress>
24 24 #include <QIODevice>
25 25 #include <QApplication>
26 26 #include <rmappluginpythonwrapper.h>
27 27 #include <PythonQt.h>
28 28 #include <QTimer>
29 29
30 30 rmapplugin::rmapplugin(QWidget *parent)
31 31 :lppmonplugin(parent,false)
32 32 {
33 33 this->UI = new rmapPluginUI();
34 34 this->setWindowTitle(tr("RMAP and SPW Communication"));
35 35 this->setWidget((QWidget*)this->UI);
36 36
37 37 timeCode = 0;
38 38 time_COARSE = 0;
39 39 time_FINE = 0;
40 40 currentBridge = selectedBridgeIsUnknown;
41 41
42 42 //**************
43 43 //Python wrapper
44 44 this->pyObject = new rmappluginPythonWrapper();
45 45 connect(this->pyObject,SIGNAL(ReadSig(uint*,uint,uint)),this,SLOT(Read(uint*,uint,uint)));
46 46 connect(this->pyObject,SIGNAL(WriteSig(uint*,uint,uint)),this,SLOT(Write(uint*,uint,uint)));
47 47 //**
48 48 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( WriteSPWSig(char*,uint,char,char) ),
49 49 this, SLOT( WriteSPW(char*,uint,char,char)), Qt::DirectConnection );
50 50 //**
51 51 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( updateTargetAddress(unsigned char) ),
52 52 this, SLOT( setValueTargetAddress(unsigned char)) );
53 53 //**
54 54 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL( updateSourceAddress(unsigned char) ),
55 55 this, SLOT( setValueSourceAddress(unsigned char)) );
56 56 //**
57 57 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(sendMessage(QString)),
58 58 this, SLOT(displayOnConsole(QString)) );
59 59 //**
60 60 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(fetchPacketSig()),
61 61 this, SLOT(fetchPacket()), Qt::DirectConnection );
62 62 //***
63 63 connect( (rmappluginPythonWrapper*)this->pyObject, SIGNAL(nbPacketHasChanged(int)),
64 64 this, SLOT(nbPacketHasChanged(int)));
65 65 //**************
66 66
67 67 //**************
68 68 // get a smart pointer to the __main__ module of the Python interpreter
69 69 PythonQtObjectPtr context = PythonQt::self()->getMainModule();
70 70 // add a QObject as variable of name "BUTTON_rmapOpenCommunication" to the namespace of the __main__ module
71 71 context.addObject("BUTTON_rmapOpenCommunication", UI->rmapOpenCommunicationButton);
72 72 context.addObject("BUTTON_rmapCloseCommunication", UI->rmapCloseCommunicationButton);
73 73 context.addObject("BUTTON_selectStarDundee", UI->selectStarDundee_BUTTON);
74 74 context.addObject("BUTTON_selectGRESB", UI->selectGRESB_BUTTON);
75 75 context.addObject("GRESB_Bridge", UI->gresbBridge);
76 76 //**************
77 77
78 78 connect(UI->rmapOpenCommunicationButton, SIGNAL(clicked()), this, SLOT(openBridge()));
79 79 connect(UI->rmapCloseCommunicationButton, SIGNAL(clicked()), this, SLOT(closeBridge()));
80 80 connect(this, SIGNAL(
81 81 updateStatistics(unsigned char,unsigned char,unsigned char,unsigned char,uint,uint,uint,uint)
82 82 ),
83 83 this->UI->tmStatistics, SLOT(
84 84 updateStatistics(unsigned char,unsigned char,unsigned char,unsigned char,uint,uint,uint,uint)
85 85 ));
86 86
87 87 //******
88 88 // GRESB
89 89 connect(this->UI->gresbBridge, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
90 90 connect(this->UI->gresbBridge, SIGNAL(isOpen(bool)), this, SLOT(activatePlugin(bool)));
91 91 connect(this->UI->gresbBridge, SIGNAL(RMAP_write_reply_setText(QString)), this, SLOT(RMAP_write_reply_setText(QString)));
92 92 connect(this->UI->gresbBridge, SIGNAL(appendToLog(QString)), this, SLOT(appendToLog(QString)));
93 93 connect(this, SIGNAL(ccsdsPacketIsProcessed()), this->UI->gresbBridge, SLOT(ccsdsPacketIsProcessed()));
94 94 connect(this->UI->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
95 95 this->UI->gresbBridge, SLOT(targetHasChanged(int)));
96 96 connect(this->UI->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
97 97 this->UI->gresbBridge, SLOT(sourceHasChanged(int)));
98 98 connect(this->UI->gresbBridge, SIGNAL(sendPacket(TMPacketToRead*)),
99 99 this, SLOT(receivePacketFromBridge(TMPacketToRead*)), Qt::DirectConnection);
100 100
101 101 //************
102 102 // Star Dundee
103 103 connect(this->UI->starDundee, SIGNAL(sendMessage(QString)), this, SLOT(displayOnConsole(QString)));
104 104 connect(this->UI->starDundee, SIGNAL(isOpen(bool)), this, SLOT(activatePlugin(bool)));
105 105 connect(this->UI->starDundee, SIGNAL(RMAP_write_reply_setText(QString)), this, SLOT(RMAP_write_reply_setText(QString)));
106 106 connect(this->UI->starDundee, SIGNAL(appendToLog(QString)), this, SLOT(appendToLog(QString)));
107 107 connect(this, SIGNAL(ccsdsPacketIsProcessed()), this->UI->starDundee, SLOT(ccsdsPacketIsProcessed()));
108 108 connect(this->UI->rmapTargetLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
109 109 this->UI->starDundee, SLOT(targetHasChanged(int)));
110 110 connect(this->UI->rmapSourceLogicalAddressSpinBox, SIGNAL(valueChanged(int)),
111 111 this->UI->starDundee, SLOT(sourceHasChanged(int)));
112 112 connect(this->UI->starDundee, SIGNAL(sendPacket(TMPacketToRead*)),
113 113 this, SLOT(receivePacketFromBridge(TMPacketToRead*)), Qt::DirectConnection);
114 114
115 115 connect(this->UI, SIGNAL(bridgeHasChanged(selectedBridge)), this, SLOT(bridgeHasChanged(selectedBridge)));
116 116
117 117 ((rmappluginPythonWrapper*)this->pyObject)->ccsdsPacketStore = &(this->generalCCSDSPacketStore);
118 118 }
119 119
120 120 rmapplugin::~rmapplugin()
121 121 {
122 122 switch(currentBridge)
123 123 {
124 124 case selectedBridgeIsGRESB :
125 125 if (RMAPSend_SOCKET->isOpen()) RMAPSend_SOCKET->disconnectFromHost();
126 126 if (RMAPReceive_SOCKET->isOpen()) RMAPReceive_SOCKET->disconnectFromHost();
127 127 if (GRESBStatusQuery_SOCKET->isOpen()) GRESBStatusQuery_SOCKET->disconnectFromHost();
128 128 break;
129 129 case selectedBridgeIsStarDundee :
130 130 break;
131 131 default:
132 132 break;
133 133 }
134 134 }
135 135
136 136 unsigned int rmapplugin::Write(unsigned int *Value, unsigned int count, unsigned int address)
137 137 {
138 138 unsigned int result;
139 139 switch(currentBridge)
140 140 {
141 141 case selectedBridgeIsGRESB :
142 142 result = UI->gresbBridge->Write(Value, count, address);
143 143 break;
144 144 case selectedBridgeIsStarDundee :
145 145 result = UI->starDundee->Write(Value, count, address);
146 146 break;
147 147 default:
148 148 result = 1;
149 149 break;
150 150 }
151 151 return result;
152 152 }
153 153
154 154 unsigned int rmapplugin::Read(unsigned int *Value, unsigned int count, unsigned int address)
155 155 {
156 156 unsigned int result;
157 157 switch(currentBridge)
158 158 {
159 159 case selectedBridgeIsGRESB :
160 160 result = UI->gresbBridge->Read(Value, count, address);
161 161 break;
162 162 case selectedBridgeIsStarDundee :
163 163 result = UI->starDundee->Read(Value, count, address);
164 164 break;
165 165 default:
166 166 result = 1;
167 167 break;
168 168 }
169 169 return result;
170 170 }
171 171
172 172 ////////
173 173 // SLOTS
174 174
175 175 unsigned int rmapplugin::WriteSPW(char *Value, unsigned int count, char targetLogicalAddress, char userApplication) // SLOT
176 176 {
177 177 unsigned int result;
178 178 switch(currentBridge)
179 179 {
180 180 case selectedBridgeIsGRESB :
181 181 result = UI->gresbBridge->WriteSPW(Value, count, targetLogicalAddress, userApplication);
182 182 break;
183 183 case selectedBridgeIsStarDundee :
184 184 result = UI->starDundee->WriteSPW(Value, count, targetLogicalAddress, userApplication);
185 185 break;
186 186 default:
187 187 result = 1;
188 188 break;
189 189 }
190 190 return result;
191 191 }
192 192
193 193 void rmapplugin::openBridge()
194 194 {
195 195 switch(currentBridge)
196 196 {
197 197 case selectedBridgeIsGRESB :
198 198 this->UI->gresbBridge->Open();
199 199 break;
200 200 case selectedBridgeIsStarDundee :
201 201 this->UI->starDundee->Open();
202 202 break;
203 203 default:
204 204 break;
205 205 }
206 206 }
207 207
208 208 void rmapplugin::closeBridge()
209 209 {
210 210 switch(currentBridge)
211 211 {
212 212 case selectedBridgeIsGRESB :
213 213 this->UI->gresbBridge->Close();
214 214 break;
215 215 case selectedBridgeIsStarDundee :
216 216 this->UI->starDundee->Close();
217 217 break;
218 218 default:
219 219 break;
220 220 }
221 221 }
222 222
223 223 void rmapplugin::RMAP_write_reply_setText(QString text)
224 224 {
225 225 this->UI->RMAP_write_reply->setText(text);
226 226 }
227 227
228 228 void rmapplugin::appendToLog(QString text)
229 229 {
230 230 APPENDTOLOG(text);
231 231 }
232 232
233 233 void rmapplugin::setValueTargetAddress(unsigned char newAddress)
234 234 {
235 235 this->UI->rmapTargetLogicalAddressSpinBox->setValue(newAddress);
236 236 }
237 237
238 238 void rmapplugin::setValueSourceAddress(unsigned char newAddress)
239 239 {
240 240 this->UI->rmapSourceLogicalAddressSpinBox->setValue(newAddress);
241 241 }
242 242
243 243 void rmapplugin::receivePacketFromBridge(TMPacketToRead *packet)
244 244 {
245 245 preProcessPacket(packet);
246 246
247 247 // Send the packet to the TM echo bridge for processing
248 this->UI->tmEchoBridge->sendTMPacket_v2(packet);
248 this->UI->tmEchoBridge->sendTMPacket(packet);
249 249 //this->UI->tmEchoBridge->sendTMPacket_alternative(packet);
250 250
251 251 this->generalCCSDSPacketStore.append(packet);
252 252 this->UI->nbPacketInStore->setText("nb packets in store: " + QString::number(generalCCSDSPacketStore.size()));
253 253 processPacketStore();
254 254 }
255 255
256 256 void rmapplugin::preProcessPacket(TMPacketToRead *packet)
257 257 {
258 258 unsigned char pid = 0;
259 259 unsigned char cat = 0;
260 260 unsigned char typ = 0;
261 261 unsigned char sub = 0;
262 262 unsigned int sid = 0;
263 263 unsigned int length = 0;
264 264 unsigned int coarse_t = 0;
265 265 unsigned int fine_t = 0;
266 266
267 267 //*********************************
268 268 // get the parameters of the packet
269 269 pid = ((packet->Value[4] & 0x07) << 4) + ((packet->Value[5] & 0xf0) >> 4);
270 270 cat = packet->Value[5] & 0x0f;
271 271 typ = packet->Value[11]; // TYPE
272 272 sub = packet->Value[12]; // SUBTYPE
273 273 sid = 0;
274 274 length = packet->Value[8] * 256 + packet->Value[9];
275 275 coarse_t = packet->Value[14] * pow(2, 24) + packet->Value[15] * pow(2, 16)
276 276 + packet->Value[16] * pow(2, 8) + packet->Value[17];
277 277 fine_t = packet->Value[18] * pow(2, 8) + packet->Value[19];
278 278
279 279 if ((pid == 76) & (cat == 1) & (typ == 1) & (sub == 8))
280 280 sid = packet->Value[20] * 256 + packet->Value[21];
281 281 else if ((pid == 76) & (cat == 4) & (typ == 3) & (sub == 25))
282 282 sid = 1;
283 283 else if ((pid == 76) & (cat == 12) & (typ == 21) & (sub == 3))
284 284 sid = packet->Value[20];
285 285 else if ((pid == 79) & (cat == 12) & (typ == 21) & (sub == 3))
286 286 sid = packet->Value[20];
287 287
288 288 emit updateStatistics(pid, cat, typ, sub, sid, length, coarse_t, fine_t);
289 289
290 290
291 291 //****************************************
292 292 // if the packet is a waveform, display it
293 293 /*if ( (typ == 21) & (sub == 3) )
294 294 {
295 295 sid = packet->Value[20]; // SID
296 296 switch (sid){
297 297 case SID_NORMAL_SWF_F0:
298 298 buildWFAndDisplay(packet, &wfPacketNormal[0], 0);
299 299 break;
300 300 case SID_NORMAL_SWF_F1:
301 301 buildWFAndDisplay(packet, &wfPacketNormal[1], 1);
302 302 break;
303 303 case SID_NORMAL_SWF_F2:
304 304 buildWFAndDisplay(packet, &wfPacketNormal[2], 2);
305 305 break;
306 306 case SID_NORMAL_CWF_F3:
307 307 buildWFAndDisplay(packet, &wfPacketNormal[3], 3);
308 308 break;
309 309 }
310 310 }*/
311 311 }
312 312
313 313 void rmapplugin::nbPacketHasChanged(int nb)
314 314 {
315 315 this->UI->nbPacketInStore->setText("nb packets in store: " + QString::number(nb));
316 316 }
317 317
318 318 void rmapplugin::buildWFAndDisplay(TMPacketToRead *packet, WFPacket *wfPacket, unsigned char num_page)
319 319 {
320 320 unsigned int i = 0;
321 321 unsigned int j = 0;
322 322 unsigned char *data;
323 323 unsigned char pkt_nr = 0;
324 324 unsigned int blk_nr = 0;
325 325
326 326 pkt_nr = packet->Value[23]; // PKT_NR
327 327 blk_nr = packet->Value[24] * 256 + packet->Value[25];
328 328 data = &packet->Value[26]; // start of the first data block;
329 329 j = (pkt_nr-1) * 340;
330 330 for ( i=0; i<blk_nr; i++ ){
331 331 wfPacket->wf_e1[j + i] = (short) ( (data[ (i * BLK_SIZE) ] << 8) + (data[ (i*BLK_SIZE) + 1]) );
332 332 wfPacket->wf_v[j + i] = (short) ( (data[ (i * BLK_SIZE) + 2] << 8) + (data[ (i*BLK_SIZE) + 3]) );
333 333 wfPacket->wf_b1[j + i] = (short) ( (data[ (i * BLK_SIZE) + 4] << 8) + (data[ (i*BLK_SIZE) + 5]) );
334 334 wfPacket->wf_e2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 6] << 8) + (data[ (i*BLK_SIZE) + 7]) );
335 335 wfPacket->wf_b3[j + i] = (short) ( (data[ (i * BLK_SIZE) + 8] << 8) + (data[ (i*BLK_SIZE) + 9]) );
336 336 wfPacket->wf_b2[j + i] = (short) ( (data[ (i * BLK_SIZE) + 10] << 8) + (data[ (i*BLK_SIZE) + 11]) );
337 337 }
338 338 if (pkt_nr == 7)
339 339 {
340 340 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_v, num_page, 0);
341 341 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_e1, num_page, 1);
342 342 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_e2, num_page, 2);
343 343 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b1, num_page, 3);
344 344 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b2, num_page, 4);
345 345 this->UI->wfDisplay->displayOnPlot(wfPacket->wf_b3, num_page, 5);
346 346 }
347 347 }
348 348
349 349 /////////////////////
350 350 // INTERNAL FUNCTIONS
351 351
352 352 void rmapplugin::processCCSDSPacket(unsigned char *ccsdsPacket, unsigned int size) // SLOT
353 353 {
354 354 QString message;
355 355 unsigned int fine_time_value = 0;
356 356 fine_time_value = ((unsigned int) ccsdsPacket[7]<<24)
357 357 + ((unsigned int) ccsdsPacket[6]<<16)
358 358 + ((unsigned int) ccsdsPacket[5]<<8)
359 359 + ((unsigned int) ccsdsPacket[4]);
360 360 message.append(QTime::currentTime().toString() +":" + QString::number(QTime::currentTime().msec()) + ": ");
361 361 message.append("size "
362 362 + QString::number(size)
363 363 +" *** header "
364 364 + QString::number(ccsdsPacket[0], 16)
365 365 + " "
366 366 + QString::number(ccsdsPacket[1], 16)
367 367 + " "
368 368 + QString::number(ccsdsPacket[2], 16)
369 369 + " "
370 370 + QString::number(ccsdsPacket[3], 16)
371 371 + " *** coarse time "
372 372 + QString::number(fine_time_value));
373 373 //+ QString::number(ccsdsPacket[4], 16)
374 374 //+" "
375 375 //+ QString::number(ccsdsPacket[5], 16)
376 376 //+" "
377 377 //+ QString::number(ccsdsPacket[6], 16)
378 378 //+" "
379 379 //+ QString::number(ccsdsPacket[7], 16));
380 380 displayOnConsole(message);
381 381 //((rmappluginPythonWrapper*)this->pyObject)->storeCCSDSPacket(ccsdsPacket, size);
382 382 emit ccsdsPacketIsProcessed();
383 383 }
384 384
385 385 void rmapplugin::processPacketStore()
386 386 {
387 387 ((rmappluginPythonWrapper*)this->pyObject)->processPacketStore();
388 388 }
389 389
390 390 int rmapplugin::fetchPacket()
391 391 {
392 392 int ret = 0;
393 393
394 394 switch(currentBridge)
395 395 {
396 396 case selectedBridgeIsGRESB :
397 397 break;
398 398 case selectedBridgeIsStarDundee :
399 399 ret = this->UI->starDundee->receiveSPWPacketLoop();
400 400 break;
401 401 default:
402 402 break;
403 403 }
404 404
405 405 return ret;
406 406 }
@@ -1,253 +1,207
1 1 #include "tmechobridge.h"
2 2
3 3 TMEchoBridge::TMEchoBridge(QWidget *parent) :
4 4 QWidget(parent)
5 5 {
6 6 totalOfBytes = 0;
7 7 totalOfPackets = 0;
8 8 totalOfPacketsDropped = 0;
9 9
10 10 tmEchoBridgeServer = new QTcpServer();
11 11 tmEchoBridgeSocket = new QTcpSocket();
12 12 xmlWriter = new QXmlStreamWriter();
13 13
14 14 console = new QTextEdit();
15 15
16 16 label_TMServerPort = new QLabel(tr("TM Server Port:"));
17 17 label_totalOfBytes = new QLabel(tr("Number of TM bytes sent: -"));
18 18 label_totalOfPackets = new QLabel(tr("Number of TM packets sent: -"));
19 19 label_totalOfPacketsDropped = new QLabel(tr("Number of TM packets dropped: -"));
20 20
21 21 spinbox_TMServerPort = new QSpinBox();
22 22 spinbox_TMServerPort->setRange(59002, 65535);
23 23
24 24 button_openServerTCTM = new QPushButton(tr("Open Port"));
25 25 button_testServerTCTM = new QPushButton(tr("Test Port"));
26 26 button_sendTestPacket = new QPushButton(tr("Send a test packet"));
27 27 button_clearConsole = new QPushButton(tr("Clear console"));
28 28 button_resetTMStatistics = new QPushButton(tr("Reset TM Statistics"));
29 29
30 30 groupbox_ports = new QGroupBox(tr("Port of the TM Echo Bridge"));
31 31
32 32 layout_ports = new QGridLayout();
33 33 mainLayout = new QGridLayout();
34 34
35 35 initSocketStatesList();
36 36
37 37 layout_ports->addWidget(label_TMServerPort, 0, 0, 1, 1);
38 38 layout_ports->addWidget(spinbox_TMServerPort, 0, 1, 1, 1);
39 39 layout_ports->addWidget(button_openServerTCTM, 2, 0, 1, 2);
40 40 layout_ports->addWidget(button_testServerTCTM, 3, 0, 1, 2);
41 41 layout_ports->addWidget(button_sendTestPacket, 4, 0, 1, 2);
42 42 layout_ports->addWidget(label_totalOfPackets, 5, 0, 1, 2);
43 43 layout_ports->addWidget(label_totalOfBytes, 6, 0, 1, 2);
44 44 layout_ports->addWidget(label_totalOfPacketsDropped, 7, 0, 1, 2);
45 45 layout_ports->addWidget(button_resetTMStatistics, 8, 0, 1, 2);
46 46 layout_ports->setRowStretch(9, 1);
47 47 layout_ports->setColumnStretch(2, 1);
48 48
49 49 groupbox_ports->setLayout(layout_ports);
50 50
51 51 mainLayout->addWidget(groupbox_ports, 0, 0, 1, 1);
52 52 mainLayout->addWidget(console, 0, 1, 1, 1);
53 53 mainLayout->addWidget(button_clearConsole, 1, 1, 1, 1);
54 54
55 55 this->setLayout(mainLayout);
56 56
57 57 connect(this->tmEchoBridgeServer, SIGNAL(newConnection()), this, SLOT(newConnectionOnTMEchoBridgeServer()));
58 58 connect(this->button_openServerTCTM, SIGNAL(clicked()), this, SLOT(listenOnTMEchoBridgePort()));
59 59 connect(this->button_testServerTCTM, SIGNAL(clicked()), this, SLOT(testTMEchoBridgePort()));
60 60 connect(this->button_sendTestPacket, SIGNAL(clicked()), this, SLOT(sendXML_GSE_HK()));
61 61 connect(this->button_clearConsole, SIGNAL(clicked()), this, SLOT(clearConsole()));
62 62 connect(this->button_resetTMStatistics, SIGNAL(clicked()), this, SLOT(resetTMStatistics()));
63 63 }
64 64
65 65 void TMEchoBridge::listenOnTMEchoBridgePort()
66 66 {
67 67 QString str;
68 68
69 69 tmEchoBridgeServer->listen(QHostAddress::Any, this->getTMPort());
70 70 str = tmEchoBridgeServer->errorString();
71 71 if (!str.isEmpty())
72 72 {
73 73 this->displayOnConsole(str);
74 74 }
75 75 this->displayOnConsole("Listening TM on port "
76 76 + QString::number(this->getTMPort())
77 77 );
78 78 }
79 79
80 80 void TMEchoBridge::testTMEchoBridgePort()
81 81 {
82 82 if (tmEchoBridgeSocket != NULL)
83 83 {
84 84 this->displayOnConsole("TM socket *** " + socketStates.at(tmEchoBridgeSocket->state()) );
85 85 }
86 86 else
87 87 {
88 88 this->displayOnConsole("TC socket *** not tested, (socketTC) is NULL" );
89 89 }
90 90 }
91 91
92 92 void TMEchoBridge::newConnectionOnTMEchoBridgeServer()
93 93 {
94 94 this->displayOnConsole("got new connection on TM port");
95 95 tmEchoBridgeSocket = tmEchoBridgeServer->nextPendingConnection();
96 96 this->displayOnConsole("TM socket *** " + socketStates.at(tmEchoBridgeSocket->state()) );
97 97 xmlWriter->setDevice(this->tmEchoBridgeSocket);
98 98 }
99 99
100 100 int TMEchoBridge::getTMPort()
101 101 {
102 102 return spinbox_TMServerPort->value();
103 103 }
104 104
105 105 void TMEchoBridge::displayOnConsole(QString message)
106 106 {
107 107 console->append(message);
108 108 }
109 109
110 110 void TMEchoBridge::initSocketStatesList()
111 111 {
112 112 socketStates.append("The socket is not connected");
113 113 socketStates.append("The socket is performing a host name lookup");
114 114 socketStates.append("The socket has started establishing a connection");
115 115 socketStates.append("A connection is established");
116 116 socketStates.append("The socket is bound to an address and port (for servers)");
117 117 socketStates.append("The socket is about to close (data may still be waiting to be written)");
118 118 socketStates.append("For internal use only");
119 119 }
120 120
121 121 void TMEchoBridge::sendXML_GSE_HK()
122 122 {
123 123 char data[10];
124 124 for (int i = 0; i <10; i++)
125 125 {
126 126 data[i] = i;
127 127 }
128 128 if (tmEchoBridgeSocket->state() == QAbstractSocket::ConnectedState)
129 129 {
130 130 xmlWriter->writeStartDocument();
131 131
132 132 xmlWriter->writeStartElement("Event");
133 133
134 134 // EventDate
135 135 xmlWriter->writeStartElement("EventDate");
136 136 xmlWriter->writeEndElement();
137 137
138 138 // Event Time
139 139 xmlWriter->writeStartElement("EventTime");
140 140 xmlWriter->writeEndElement();
141 141
142 142 // EventBinary
143 143 xmlWriter->writeStartElement("EventBinary");
144 144 xmlWriter->writeCharacters("FFFFCC0099");
145 145 xmlWriter->writeCharacters(QString::fromLocal8Bit(data, 10));
146 146 xmlWriter->writeEndElement();
147 147
148 148 xmlWriter->writeEndElement();
149 149
150 150 xmlWriter->writeEndDocument();
151 151 }
152 152 else
153 153 {
154 154 this->displayOnConsole("TM socket *** " + socketStates.at(tmEchoBridgeSocket->state()) );
155 155 }
156 156 }
157 157
158 158 void TMEchoBridge::sendTMPacket(TMPacketToRead *tmPacketToRead)
159 159 {
160 if (tmEchoBridgeSocket->state() == QAbstractSocket::ConnectedState)
161 {
162 // START DOCUMENT
163 //xmlWriter->writeStartDocument();
164
165 // <Event>
166 xmlWriter->writeStartElement("Event");
167
168 // <EventDate>
169 xmlWriter->writeStartElement("EventDate");
170 xmlWriter->writeEndElement();
171
172 // <Event Time>
173 xmlWriter->writeStartElement("EventTime");
174 xmlWriter->writeEndElement();
175
176 // <EventBinary>
177 xmlWriter->writeStartElement("EventBinary");
178 xmlWriter->writeCharacters(
179 QByteArray::fromRawData( (char*) tmPacketToRead->Value, tmPacketToRead->size).toHex()
180 );
181 //tmEchoBridgeSocket->write(QByteArray::fromRawData( (char*) tmPacketToRead->Value, tmPacketToRead->size));
182 xmlWriter->writeEndElement();
183
184 // </Event>
185 xmlWriter->writeEndElement();
186
187 // END DOCUMENT
188 xmlWriter->writeEndDocument();
189
190 tmEchoBridgeSocket->flush();
191
192 totalOfBytes = totalOfBytes + tmPacketToRead->size;
193 totalOfPackets = totalOfPackets + 1;
194 label_totalOfBytes->setText("Number of TM bytes sent: " + QString::number(totalOfBytes));
195 label_totalOfPackets->setText("Number of TM packets sent: " + QString::number(totalOfPackets));
196 }
197 else
198 {
199 totalOfPacketsDropped = totalOfPacketsDropped + 1;
200 label_totalOfPacketsDropped->setText("Number of TM packets dropped: " + QString::number(totalOfPacketsDropped));
201 }
202 }
203
204 void TMEchoBridge::sendTMPacket_v2(TMPacketToRead *tmPacketToRead)
205 {
206 160 QByteArray ccsdsArray;
207 161 QTime echoBridgeTimeout;
208 162
209 163 if (tmEchoBridgeSocket->state() == QAbstractSocket::ConnectedState)
210 164 {
211 165 ccsdsArray.append("<Event>");
212 166
213 167 ccsdsArray.append("<EventDate>");
214 168 ccsdsArray.append("</EventDate>");
215 169
216 170 ccsdsArray.append("<EventTime>");
217 171 ccsdsArray.append("</EventTime>");
218 172
219 173 ccsdsArray.append("<EventBinary>");
220 174 ccsdsArray.append(QByteArray::fromRawData( (char*) tmPacketToRead->Value, tmPacketToRead->size).toHex());
221 175 ccsdsArray.append("</EventBinary>");
222 176
223 177 ccsdsArray.append("</Event>");
224 178
225 179 tmEchoBridgeSocket->write(ccsdsArray);
226 180 tmEchoBridgeSocket->flush();
227 181
228 182 totalOfBytes = totalOfBytes + tmPacketToRead->size;
229 183 totalOfPackets = totalOfPackets + 1;
230 184 label_totalOfBytes->setText("Number of TM bytes sent: " + QString::number(totalOfBytes));
231 185 label_totalOfPackets->setText("Number of TM packets sent: " + QString::number(totalOfPackets));
232 186 }
233 187 else
234 188 {
235 189 totalOfPacketsDropped = totalOfPacketsDropped + 1;
236 190 label_totalOfPacketsDropped->setText("Number of TM packets dropped: " + QString::number(totalOfPacketsDropped));
237 191 }
238 192 }
239 193
240 194 void TMEchoBridge::clearConsole()
241 195 {
242 196 this->console->clear();
243 197 }
244 198
245 199 void TMEchoBridge::resetTMStatistics()
246 200 {
247 201 label_totalOfBytes->setText("Number of TM bytes sent: -");
248 202 label_totalOfPackets->setText("Number of TM packets sent: -");
249 203 label_totalOfPacketsDropped->setText("Number of TM packets dropped: -");
250 204 totalOfBytes = 0;
251 205 totalOfPackets = 0;
252 206 totalOfPacketsDropped = 0;
253 207 }
@@ -1,73 +1,72
1 1 #ifndef TMECHOBRIDGE_H
2 2 #define TMECHOBRIDGE_H
3 3
4 4 #include <QWidget>
5 5 #include <QTcpServer>
6 6 #include <QTcpSocket>
7 7 #include <QLabel>
8 8 #include <QSpinBox>
9 9 #include <QPushButton>
10 10 #include <QGroupBox>
11 11 #include <QGridLayout>
12 12 #include <QTextEdit>
13 13 #include <QXmlStreamWriter>
14 14 #include <QTime>
15 15 #include "tmpackettoread.h"
16 16
17 17 class TMEchoBridge : public QWidget
18 18 {
19 19 Q_OBJECT
20 20 public:
21 21 explicit TMEchoBridge(QWidget *parent = 0);
22 22
23 23 signals:
24 24
25 25 public slots:
26 26 void listenOnTMEchoBridgePort();
27 27 void testTMEchoBridgePort();
28 28 void newConnectionOnTMEchoBridgeServer();
29 29 int getTMPort();
30 30 void displayOnConsole(QString message);
31 31 void initSocketStatesList();
32 32 void newConnectionOnTCServer();
33 33 void sendXML_GSE_HK();
34 34 void sendTMPacket(TMPacketToRead *tmPacketToRead);
35 void sendTMPacket_v2(TMPacketToRead *tmPacketToRead);
36 35 void clearConsole();
37 36 void resetTMStatistics();
38 37
39 38 private:
40 39 QList<QString> socketStates;
41 40
42 41 unsigned int totalOfBytes;
43 42 unsigned int totalOfPackets;
44 43 unsigned int totalOfPacketsDropped;
45 44
46 45 QTcpServer *tmEchoBridgeServer;
47 46 QTcpSocket *tmEchoBridgeSocket;
48 47
49 48 QXmlStreamWriter *xmlWriter;
50 49
51 50 QTextEdit *console;
52 51
53 52 QLabel *label_TMServerPort;
54 53 QLabel *label_totalOfBytes;
55 54 QLabel *label_totalOfPackets;
56 55 QLabel *label_totalOfPacketsDropped;
57 56
58 57 QSpinBox *spinbox_TMServerPort;
59 58
60 59 QPushButton *button_openServerTCTM;
61 60 QPushButton *button_testServerTCTM;
62 61 QPushButton *button_sendTestPacket;
63 62 QPushButton *button_clearConsole;
64 63 QPushButton *button_resetTMStatistics;
65 64
66 65 QGroupBox *groupbox_ports;
67 66
68 67 QGridLayout *layout_ports;
69 68 QGridLayout *mainLayout;
70 69
71 70 };
72 71
73 72 #endif // TMECHOBRIDGE_H
@@ -1,264 +1,264
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE QtCreatorProject>
3 <!-- Written by Qt Creator 2.4.1, 2013-06-28T13:26:54. -->
3 <!-- Written by Qt Creator 2.4.1, 2013-07-02T16:01:34. -->
4 4 <qtcreator>
5 5 <data>
6 6 <variable>ProjectExplorer.Project.ActiveTarget</variable>
7 7 <value type="int">0</value>
8 8 </data>
9 9 <data>
10 10 <variable>ProjectExplorer.Project.EditorSettings</variable>
11 11 <valuemap type="QVariantMap">
12 12 <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
13 13 <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
14 14 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
15 15 <value type="QString" key="language">Cpp</value>
16 16 <valuemap type="QVariantMap" key="value">
17 17 <value type="QString" key="CurrentPreferences">CppGlobal</value>
18 18 </valuemap>
19 19 </valuemap>
20 20 <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
21 21 <value type="QString" key="language">QmlJS</value>
22 22 <valuemap type="QVariantMap" key="value">
23 23 <value type="QString" key="CurrentPreferences">QmlJSGlobal</value>
24 24 </valuemap>
25 25 </valuemap>
26 26 <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
27 27 <value type="QByteArray" key="EditorConfiguration.Codec">System</value>
28 28 <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
29 29 <value type="int" key="EditorConfiguration.IndentSize">4</value>
30 30 <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
31 31 <value type="int" key="EditorConfiguration.PaddingMode">1</value>
32 32 <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
33 33 <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
34 34 <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
35 35 <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
36 36 <value type="int" key="EditorConfiguration.TabSize">8</value>
37 37 <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
38 38 <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
39 39 <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
40 40 <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
41 41 <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
42 42 <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
43 43 </valuemap>
44 44 </data>
45 45 <data>
46 46 <variable>ProjectExplorer.Project.PluginSettings</variable>
47 47 <valuemap type="QVariantMap"/>
48 48 </data>
49 49 <data>
50 50 <variable>ProjectExplorer.Project.Target.0</variable>
51 51 <valuemap type="QVariantMap">
52 52 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
53 53 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
54 54 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value>
55 55 <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
56 56 <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
57 57 <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
58 58 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
59 59 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
60 60 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
61 61 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
62 62 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
63 63 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
64 64 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
65 65 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
66 66 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
67 67 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
68 68 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
69 69 </valuemap>
70 70 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
71 71 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
72 72 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
73 73 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
74 74 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
75 75 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
76 76 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
77 77 </valuemap>
78 78 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
79 79 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
80 80 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
81 81 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
82 82 </valuemap>
83 83 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
84 84 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
85 85 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
86 86 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
87 87 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
88 88 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
89 89 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
90 90 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
91 91 </valuemap>
92 92 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
93 93 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
94 94 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
95 95 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
96 96 </valuemap>
97 97 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
98 98 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
99 99 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
100 100 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value>
101 101 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
102 102 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
103 103 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
104 104 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL/wfdisplay/wfdisplay</value>
105 105 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
106 106 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
107 107 </valuemap>
108 108 <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
109 109 <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value>
110 110 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
111 111 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
112 112 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
113 113 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
114 114 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
115 115 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
116 116 <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
117 117 <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
118 118 <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
119 119 </valuemap>
120 120 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
121 121 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
122 122 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
123 123 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
124 124 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
125 125 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
126 126 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
127 127 </valuemap>
128 128 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
129 129 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
130 130 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
131 131 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
132 132 </valuemap>
133 133 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
134 134 <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
135 135 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
136 136 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
137 137 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
138 138 <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
139 139 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
140 140 <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
141 141 </valuemap>
142 142 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
143 143 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
144 144 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
145 145 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
146 146 </valuemap>
147 147 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
148 148 <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
149 149 <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
150 150 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value>
151 151 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
152 152 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
153 153 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
154 154 <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/LPPMON_PLUGINS_PAUL/wfdisplay/wfdisplay</value>
155 155 <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value>
156 156 <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value>
157 157 </valuemap>
158 158 <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
159 159 <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
160 160 <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
161 161 <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
162 162 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
163 163 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
164 164 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
165 165 </valuemap>
166 166 <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
167 167 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value>
168 168 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
169 169 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
170 170 </valuemap>
171 171 <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
172 172 <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
173 173 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
174 174 <value type="bool" key="Analyzer.Project.UseGlobal">true</value>
175 175 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
176 176 <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
177 177 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
178 178 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
179 179 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
180 180 <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
181 181 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
182 182 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
183 183 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
184 184 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
185 185 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
186 186 <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
187 187 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
188 188 <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
189 189 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
190 190 <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
191 191 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
192 192 <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
193 193 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
194 194 <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
195 195 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
196 196 <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
197 197 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
198 198 <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
199 199 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
200 200 <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
201 201 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
202 202 <value type="int">0</value>
203 203 <value type="int">1</value>
204 204 <value type="int">2</value>
205 205 <value type="int">3</value>
206 206 <value type="int">4</value>
207 207 <value type="int">5</value>
208 208 <value type="int">6</value>
209 209 <value type="int">7</value>
210 210 <value type="int">8</value>
211 211 <value type="int">9</value>
212 212 <value type="int">10</value>
213 213 <value type="int">11</value>
214 214 <value type="int">12</value>
215 215 <value type="int">13</value>
216 216 <value type="int">14</value>
217 217 </valuelist>
218 218 <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
219 219 <value type="int">0</value>
220 220 <value type="int">1</value>
221 221 <value type="int">2</value>
222 222 <value type="int">3</value>
223 223 <value type="int">4</value>
224 224 <value type="int">5</value>
225 225 <value type="int">6</value>
226 226 <value type="int">7</value>
227 227 <value type="int">8</value>
228 228 <value type="int">9</value>
229 229 <value type="int">10</value>
230 230 <value type="int">11</value>
231 231 <value type="int">12</value>
232 232 <value type="int">13</value>
233 233 <value type="int">14</value>
234 234 </valuelist>
235 235 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
236 236 <value type="int" key="ProjectExplorer.CustomExecutableRunConfiguration.BaseEnvironmentBase">2</value>
237 237 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable"></value>
238 238 <value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
239 239 <valuelist type="QVariantList" key="ProjectExplorer.CustomExecutableRunConfiguration.UserEnvironmentChanges"/>
240 240 <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
241 241 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Custom Executable</value>
242 242 <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
243 243 <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
244 244 <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
245 245 <value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
246 246 <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
247 247 <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value>
248 248 </valuemap>
249 249 <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
250 250 </valuemap>
251 251 </data>
252 252 <data>
253 253 <variable>ProjectExplorer.Project.TargetCount</variable>
254 254 <value type="int">1</value>
255 255 </data>
256 256 <data>
257 257 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
258 258 <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value>
259 259 </data>
260 260 <data>
261 261 <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
262 262 <value type="int">10</value>
263 263 </data>
264 264 </qtcreator>
General Comments 0
You need to be logged in to leave comments. Login now