##// END OF EJS Templates
Bug fixed in SchainGUI: figures were not been loaded
Miguel Valdez -
r583:e5ed8fbe1d1e
parent child
Show More
@@ -0,0 +1,23
1 Prerequisites:
2
3 -numpy 1.8.0
4 -
5
6 Signal Chain Installation:
7
8 1. Install numpy, matplotlib, TKAgg
9 2. Install digital_rf_hdf5 module (developed by Haystack Observatory) if you will use USRP data
10 3. untar schainpy-x.x.x.tar.gz
11 4. cd schainpy-x.x.x
12 5. execute:
13 [hostname]$ sudo pyhon setup.py install
14 6. testing gui:
15 [hostname]$ schainGUI (enter)
16
17 If you want to use serialization and zerorpc you will need to install the next packages:
18
19 1. zerorpc
20 [hostname]$ sudo port install zerorpc
21
22 2. cPickle, msgpack and msgpack_numpy
23 [hostname]$ sudo port install cPickle msgpack mspack_numpy No newline at end of file
@@ -0,0 +1,15
1 import os, sys
2
3 def get_path ():
4 """Borrowed from wxglade.py"""
5 try:
6 root = __file__
7 if os.path.islink (root):
8 root = os.path.realpath (root)
9
10 return os.path.dirname (os.path.abspath (root))
11 except:
12 print "I'm sorry, but something is wrong."
13 print "There is no __file__ variable. Please contact the author."
14 return ""
15 No newline at end of file
1 NO CONTENT: file renamed from schainpy/gui/figure/.bash_logout to schainpy/gui/figures/.bash_logout
1 NO CONTENT: file renamed from schainpy/gui/figure/Crear.jpg to schainpy/gui/figures/Crear.jpg
1 NO CONTENT: file renamed from schainpy/gui/figure/Open Sign.jpg to schainpy/gui/figures/Open Sign.jpg
1 NO CONTENT: file renamed from schainpy/gui/figure/__init__.py to schainpy/gui/figures/__init__.py
1 NO CONTENT: file renamed from schainpy/gui/figure/add_PU.gif to schainpy/gui/figures/add_PU.gif
1 NO CONTENT: file renamed from schainpy/gui/figure/adn.jpg to schainpy/gui/figures/adn.jpg
1 NO CONTENT: file renamed from schainpy/gui/figure/guardar.jpeg to schainpy/gui/figures/guardar.jpeg
1 NO CONTENT: file renamed from schainpy/gui/figure/open.gif to schainpy/gui/figures/open.gif
1 NO CONTENT: file renamed from schainpy/gui/figure/open.png to schainpy/gui/figures/open.png
1 NO CONTENT: file renamed from schainpy/gui/figure/pause.png to schainpy/gui/figures/pause.png
1 NO CONTENT: file renamed from schainpy/gui/figure/pausered.png to schainpy/gui/figures/pausered.png
1 NO CONTENT: file renamed from schainpy/gui/figure/play.jpg to schainpy/gui/figures/play.jpg
1 NO CONTENT: file renamed from schainpy/gui/figure/project.gif to schainpy/gui/figures/project.gif
1 NO CONTENT: file renamed from schainpy/gui/figure/saveicon.jpeg to schainpy/gui/figures/saveicon.jpeg
1 NO CONTENT: file renamed from schainpy/gui/figure/startServer.png to schainpy/gui/figures/startServer.png
1 NO CONTENT: file renamed from schainpy/gui/figure/stop.jpg to schainpy/gui/figures/stop.jpg
1 NO CONTENT: file renamed from schainpy/gui/figure/stopServer.png to schainpy/gui/figures/stopServer.png
1 NO CONTENT: file renamed from schainpy/gui/figure/w.jpg to schainpy/gui/figures/w.jpg
1 NO CONTENT: file renamed from schainpy/gui/schaingui.py to schainpy/gui/schainGUI
@@ -1,6476 +1,6480
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 Module implementing MainWindow.
4 4 #+++++++++++++GUI V1++++++++++++++#
5 5 @author: AlexanderValdezPortocarrero Γ±_Γ±
6 6 """
7 7 import os, sys, time
8 8 import datetime
9 9 import Queue
10 10 from PyQt4.QtGui import QMainWindow
11 11 from PyQt4.QtCore import pyqtSignature
12 12 from PyQt4.QtCore import pyqtSignal
13 13 from PyQt4 import QtCore
14 14 from PyQt4 import QtGui
15 15
16 16 from schainpy.gui.viewer.ui_unitprocess import Ui_UnitProcess
17 17 from schainpy.gui.viewer.ui_ftp import Ui_Ftp
18 18 from schainpy.gui.viewer.ui_mainwindow import Ui_BasicWindow
19 19 from schainpy.controller import Project
20 20
21 21 from modelProperties import treeModel
22 22 from collections import OrderedDict
23 23 from os.path import expanduser
24 24 #from CodeWarrior.Standard_Suite import file
25 25 from comm import *
26 26
27 from schainpy.gui.figures import tools
28
29 FIGURES_PATH = tools.get_path()
30
27 31 def isRadarFile(file):
28 32 try:
29 33 year = int(file[1:5])
30 34 doy = int(file[5:8])
31 35 set = int(file[8:11])
32 36 except:
33 37 return 0
34 38
35 39 return 1
36 40
37 41 def isRadarPath(path):
38 42 try:
39 43 year = int(path[1:5])
40 44 doy = int(path[5:8])
41 45 except:
42 46 return 0
43 47
44 48 return 1
45 49
46 50 class BasicWindow(QMainWindow, Ui_BasicWindow):
47 51 """
48 52 """
49 53 def __init__(self, parent=None):
50 54 """
51 55
52 56 """
53 57 QMainWindow.__init__(self, parent)
54 58 self.setupUi(self)
55 59 self.__puObjDict = {}
56 60 self.__itemTreeDict = {}
57 61 self.readUnitConfObjList = []
58 62 self.operObjList = []
59 63 self.projecObjView = None
60 64 self.idProject = 0
61 65 # self.idImag = 0
62 66
63 67 self.idImagscope = 0
64 68 self.idImagspectra = 0
65 69 self.idImagcross = 0
66 70 self.idImagrti = 0
67 71 self.idImagcoherence = 0
68 72 self.idImagpower = 0
69 73 self.idImagrtinoise = 0
70 74 self.idImagspectraHeis = 0
71 75 self.idImagrtiHeis = 0
72 76
73 77 self.online = 0
74 78 self.walk = 0
75 79 self.create = False
76 80 self.selectedItemTree = None
77 81 self.commCtrlPThread = None
78 82 self.setParameter()
79 83 self.create_comm()
80 84 # self.create_timers()
81 85 # self.create_figure()
82 86 self.temporalFTP = ftpBuffer()
83 87 self.projectProperCaracteristica = []
84 88 self.projectProperPrincipal = []
85 89 self.projectProperDescripcion = []
86 90 self.volProperCaracteristica = []
87 91 self.volProperPrincipal = []
88 92 self.volProperDescripcion = []
89 93 self.specProperCaracteristica = []
90 94 self.specProperPrincipal = []
91 95 self.specProperDescripcion = []
92 96
93 97 self.specHeisProperCaracteristica = []
94 98 self.specHeisProperPrincipal = []
95 99 self.specHeisProperDescripcion = []
96 100
97 101 # self.pathWorkSpace = './'
98 102
99 103 self.__projectObjDict = {}
100 104 self.__operationObjDict = {}
101 105
102 106 self.__ftpProcUnitAdded = False
103 107 self.__ftpProcUnitId = None
104 108
105 109 @pyqtSignature("")
106 110 def on_actionCreate_triggered(self):
107 111 """
108 112 Slot documentation goes here.
109 113 """
110 114 self.setInputsProject_View()
111 115 self.create = True
112 116
113 117 @pyqtSignature("")
114 118 def on_actionSave_triggered(self):
115 119 """
116 120 Slot documentation goes here.
117 121 """
118 122 self.saveProject()
119 123
120 124 @pyqtSignature("")
121 125 def on_actionClose_triggered(self):
122 126 """
123 127 Slot documentation goes here.
124 128 """
125 129 self.close()
126 130
127 131 @pyqtSignature("")
128 132 def on_actionStart_triggered(self):
129 133 """
130 134 """
131 135 self.playProject()
132 136
133 137 @pyqtSignature("")
134 138 def on_actionPause_triggered(self):
135 139 """
136 140 """
137 141 self.pauseProject()
138 142
139 143 @pyqtSignature("")
140 144 def on_actionStop_triggered(self):
141 145 """
142 146 """
143 147 self.stopProject()
144 148
145 149 @pyqtSignature("")
146 150 def on_actionFTP_triggered(self):
147 151 """
148 152 """
149 153 self.configFTPWindowObj = Ftp(self)
150 154 # if self.temporalFTP.create:
151 155 if self.temporalFTP.createforView:
152 156 server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.temporalFTP.recover()
153 157 self.configFTPWindowObj.setParmsfromTemporal(server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos)
154 158 self.configFTPWindowObj.show()
155 159 self.configFTPWindowObj.closed.connect(self.createFTPConfig)
156 160
157 161 def createFTPConfig(self):
158 162 self.console.clear()
159 163 if not self.configFTPWindowObj.create:
160 164 self.console.append("There is no FTP configuration")
161 165 return
162 166 self.console.append("Push Ok in Spectra view to Add FTP Configuration")
163 167 server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.configFTPWindowObj.getParmsFromFtpWindow()
164 168 self.temporalFTP.save(server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos)
165 169
166 170 @pyqtSignature("")
167 171 def on_actionOpenToolbar_triggered(self):
168 172 """
169 173 Slot documentation goes here.
170 174 """
171 175 self.create = False
172 176 self.frame_2.setEnabled(True)
173 177 home = expanduser("~")
174 178 self.dir = os.path.join(home, 'schain_workspace')
175 179 # print self.dir
176 180 filename = str(QtGui.QFileDialog.getOpenFileName(self, "Open text file", self.dir, self.tr("Text Files (*.xml)")))
177 181 self.console.clear()
178 182 projectObjLoad = Project()
179 183 try:
180 184 projectObjLoad.readXml(filename)
181 185 except:
182 186 self.console.clear()
183 187 self.console.append("The selected xml file could not be loaded ...")
184 188 return 0
185 189
186 190 project_name, description = projectObjLoad.name, projectObjLoad.description
187 191 id = projectObjLoad.id
188 192 self.__projectObjDict[id] = projectObjLoad
189 193 # Project Properties
190 194 datatype, data_path, startDate, endDate, startTime, endTime , online , delay, walk, set = self.showProjectProperties(projectObjLoad)
191 195 # show ProjectView
192 196 self.addProject2ProjectExplorer(id=id, name=project_name)
193 197 self.refreshProjectWindow(project_name, description, datatype, data_path, startDate, endDate, startTime, endTime, online, delay, set)
194 198
195 199 if datatype == "Voltage":
196 200 ext = '.r'
197 201 self.specOpProfiles.setEnabled(True)
198 202 self.specOpippFactor.setEnabled(True)
199 203 elif datatype == "Spectra":
200 204 ext = '.pdata'
201 205 self.specOpProfiles.setEnabled(False)
202 206 self.specOpippFactor.setEnabled(False)
203 207 elif datatype == "Fits":
204 208 ext = '.fits'
205 209
206 210 if online == 0:
207 211 self.loadDays(data_path, ext, walk)
208 212 else:
209 213 self.proComStartDate.setEnabled(False)
210 214 self.proComEndDate.setEnabled(False)
211 215 self.proStartTime.setEnabled(False)
212 216 self.proEndTime.setEnabled(False)
213 217 self.frame_2.setEnabled(True)
214 218
215 219 self.tabWidgetProject.setEnabled(True)
216 220 self.tabWidgetProject.setCurrentWidget(self.tabProject)
217 221 # Disable tabProject after finish the creation
218 222 self.tabProject.setEnabled(True)
219 223 puObjorderList = OrderedDict(sorted(projectObjLoad.procUnitConfObjDict.items(), key=lambda x: x[0]))
220 224
221 225 for inputId, puObj in puObjorderList.items():
222 226 # print puObj.datatype, puObj.inputId,puObj.getId(),puObj.parentId
223 227 self.__puObjDict[puObj.getId()] = puObj
224 228
225 229 if puObj.inputId != "0":
226 230 self.addPU2PELoadXML(id=puObj.getId() , name=puObj.datatype , idParent=puObj.inputId)
227 231
228 232 if puObj.datatype == "Voltage":
229 233 self.refreshPUWindow(puObj.datatype, puObj)
230 234 self.showPUVoltageProperties(puObj)
231 235 self.showtabPUCreated(datatype=puObj.datatype)
232 236
233 237 if puObj.datatype == "Spectra":
234 238 self.refreshPUWindow(puObj.datatype, puObj)
235 239 self.showPUSpectraProperties(puObj)
236 240 self.showtabPUCreated(datatype=puObj.datatype)
237 241
238 242 if puObj.datatype == "SpectraHeis":
239 243 self.refreshPUWindow(puObj.datatype, puObj)
240 244 self.showPUSpectraHeisProperties(puObj)
241 245 self.showtabPUCreated(datatype=puObj.datatype)
242 246
243 247 if puObj.name == "SendToServer":
244 248 self.__ftpProcUnitAdded = True
245 249 self.__ftpProcUnitId = puObj.getId()
246 250
247 251 opObj = puObj.getOperationObj(name="run")
248 252 self.saveFTPvalues(opObj)
249 253
250 254 self.console.clear()
251 255 self.console.append("The selected xml file has been loaded successfully")
252 256 # self.refreshPUWindow(datatype=datatype,puObj=puObj)
253 257
254 258 @pyqtSignature("")
255 259 def on_actionCreateToolbar_triggered(self):
256 260 """
257 261 Slot documentation goes here.
258 262 """
259 263 self.setInputsProject_View()
260 264 self.create = True
261 265
262 266 @pyqtSignature("")
263 267 def on_actionAddPU_triggered(self):
264 268 if len(self.__projectObjDict) == 0:
265 269 outputstr = "First Create a Project then add Processing Unit"
266 270 self.console.clear()
267 271 self.console.append(outputstr)
268 272 return 0
269 273 else:
270 274 self.addPUWindow()
271 275 self.console.clear()
272 276 self.console.append("Please, Choose the type of Processing Unit")
273 277 self.console.append("If your Datatype is rawdata, you will start with processing unit Type Voltage")
274 278 self.console.append("If your Datatype is pdata, you will choose between processing unit Type Spectra or Correlation")
275 279 self.console.append("If your Datatype is fits, you will start with processing unit Type SpectraHeis")
276 280
277 281
278 282 @pyqtSignature("")
279 283 def on_actionSaveToolbar_triggered(self):
280 284 """
281 285 Slot documentation goes here.
282 286 """
283 287 self.saveProject()
284 288
285 289 @pyqtSignature("")
286 290 def on_actionStarToolbar_triggered(self):
287 291 """
288 292 Slot documentation goes here.
289 293 """
290 294 self.playProject()
291 295
292 296 @pyqtSignature("")
293 297 def on_actionPauseToolbar_triggered(self):
294 298
295 299 self.pauseProject()
296 300
297 301 @pyqtSignature("")
298 302 def on_actionStopToolbar_triggered(self):
299 303 """
300 304 Slot documentation goes here.
301 305 """
302 306 self.stopProject()
303 307
304 308 @pyqtSignature("int")
305 309 def on_proComReadMode_activated(self, index):
306 310 """
307 311 SELECCION DEL MODO DE LECTURA ON=1, OFF=0
308 312 """
309 313 if index == 0:
310 314 self.online = 0
311 315 self.proDelay.setText("0")
312 316 self.proSet.setText("0")
313 317 self.proSet.setEnabled(False)
314 318 self.proDelay.setEnabled(False)
315 319 elif index == 1:
316 320 self.online = 1
317 321 self.proSet.setText(" ")
318 322 self.proDelay.setText("5")
319 323 self.proSet.setEnabled(True)
320 324 self.proDelay.setEnabled(True)
321 325
322 326 @pyqtSignature("int")
323 327 def on_proComDataType_activated(self, index):
324 328 """
325 329 Voltage or Spectra
326 330 """
327 331 if index == 0:
328 332 self.datatype = '.r'
329 333 elif index == 1:
330 334 self.datatype = '.pdata'
331 335 elif index == 2:
332 336 self.datatype = '.fits'
333 337
334 338 self.proDataType.setText(self.datatype)
335 339 self.console.clear()
336 340
337 341 @pyqtSignature("int")
338 342 def on_proComWalk_activated(self, index):
339 343 """
340 344
341 345 """
342 346 if index == 0:
343 347 self.walk = 0
344 348 elif index == 1:
345 349 self.walk = 1
346 350
347 351 @pyqtSignature("")
348 352 def on_proToolPath_clicked(self):
349 353 """
350 354 Choose your path
351 355 """
352 356 self.dataPath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
353 357 self.proDataPath.setText(self.dataPath)
354 358
355 359 self.proComStartDate.clear()
356 360 self.proComEndDate.clear()
357 361
358 362 if not os.path.exists(self.dataPath):
359 363 self.proOk.setEnabled(False)
360 364 self.console.clear()
361 365 self.console.append("Write a correct a path")
362 366 return
363 367 self.console.clear()
364 368 self.console.append("Select the read mode")
365 369
366 370
367 371 @pyqtSignature("")
368 372 def on_proLoadButton_clicked(self):
369 373 self.console.clear()
370 374 parms_ok, project_name, datatype, ext, data_path, read_mode, delay, walk , set = self.checkInputsProject()
371 375 if read_mode == "Offline":
372 376 if parms_ok:
373 377 self.proComStartDate.clear()
374 378 self.proComEndDate.clear()
375 379 self.loadDays(data_path, ext, walk)
376 380 self.proComStartDate.setEnabled(True)
377 381 self.proComEndDate.setEnabled(True)
378 382 self.proStartTime.setEnabled(True)
379 383 self.proEndTime.setEnabled(True)
380 384 self.frame_2.setEnabled(True)
381 385 return
382 386 if read_mode == "Online":
383 387 if parms_ok:
384 388 self.proComStartDate.addItem("2010/01/30")
385 389 self.proComEndDate.addItem("2013/12/30")
386 390 self.loadDays(data_path, ext, walk)
387 391 self.proComStartDate.setEnabled(False)
388 392 self.proComEndDate.setEnabled(False)
389 393 self.proStartTime.setEnabled(False)
390 394 self.proEndTime.setEnabled(False)
391 395 self.frame_2.setEnabled(True)
392 396
393 397 @pyqtSignature("int")
394 398 def on_proComStartDate_activated(self, index):
395 399 """
396 400 SELECCION DEL RANGO DE FECHAS -START DATE
397 401 """
398 402 stopIndex = self.proComEndDate.count() - self.proComEndDate.currentIndex()
399 403 self.proComEndDate.clear()
400 404 for i in self.dateList[index:]:
401 405 self.proComEndDate.addItem(i)
402 406 self.proComEndDate.setCurrentIndex(self.proComEndDate.count() - stopIndex)
403 407
404 408 @pyqtSignature("int")
405 409 def on_proComEndDate_activated(self, index):
406 410 """
407 411 SELECCION DEL RANGO DE FECHAS-END DATE
408 412 """
409 413 startIndex = self.proComStartDate.currentIndex()
410 414 stopIndex = self.proComEndDate.count() - index
411 415 self.proComStartDate.clear()
412 416 for i in self.dateList[:len(self.dateList) - stopIndex + 1]:
413 417 self.proComStartDate.addItem(i)
414 418 self.proComStartDate.setCurrentIndex(startIndex)
415 419
416 420 @pyqtSignature("")
417 421 def on_proOk_clicked(self):
418 422 """
419 423 AΓ±ade al Obj XML de Projecto, name,datatype,date,time,readmode,wait,etc, crea el readUnitProcess del archivo xml.
420 424 Prepara la configuraciΓ³n del diΓ‘grama del Arbol del treeView numero 2
421 425 """
422 426 if self.create:
423 427 self.idProject += 1
424 428 projectId = self.idProject
425 429 projectObjView = self.createProjectView(projectId)
426 430 readUnitObj = self.createReadUnitView(projectObjView)
427 431 self.addProject2ProjectExplorer(id=projectId, name=projectObjView.name)
428 432 else:
429 433 projectObjView = self.updateProjectView()
430 434 projectId = projectObjView.getId()
431 435 idReadUnit = projectObjView.getReadUnitId()
432 436 readUnitObj = self.updateReadUnitView(projectObjView, idReadUnit)
433 437
434 438 self.__itemTreeDict[projectId].setText(projectObjView.name)
435 439 # Project Properties
436 440 self.showProjectProperties(projectObjView)
437 441 # Disable tabProject after finish the creation
438 442 self.tabProject.setEnabled(True)
439 443
440 444 @pyqtSignature("")
441 445 def on_proClear_clicked(self):
442 446 self.setInputsProject_View()
443 447 projectObj = self.getSelectedProjectObj()
444 448
445 449 @pyqtSignature("int")
446 450 def on_volOpCebChannels_stateChanged(self, p0):
447 451 """
448 452 Check Box habilita operaciones de SelecciοΏ½n de Canales
449 453 """
450 454 if p0 == 2:
451 455 self.volOpComChannels.setEnabled(True)
452 456 self.volOpChannel.setEnabled(True)
453 457
454 458 if p0 == 0:
455 459 self.volOpComChannels.setEnabled(False)
456 460 self.volOpChannel.setEnabled(False)
457 461 self.volOpChannel.clear()
458 462
459 463 @pyqtSignature("int")
460 464 def on_volOpCebHeights_stateChanged(self, p0):
461 465 """
462 466 Check Box habilita operaciones de SelecciοΏ½n de Alturas
463 467 """
464 468 if p0 == 2:
465 469 self.volOpHeights.setEnabled(True)
466 470 self.volOpComHeights.setEnabled(True)
467 471
468 472 if p0 == 0:
469 473 self.volOpHeights.setEnabled(False)
470 474 self.volOpHeights.clear()
471 475 self.volOpComHeights.setEnabled(False)
472 476
473 477 @pyqtSignature("int")
474 478 def on_volOpCebFilter_stateChanged(self, p0):
475 479 """
476 480 Name='Decoder', optype='other'
477 481 """
478 482 if p0 == 2:
479 483 self.volOpFilter.setEnabled(True)
480 484
481 485 if p0 == 0:
482 486 self.volOpFilter.setEnabled(False)
483 487 self.volOpFilter.clear()
484 488
485 489 @pyqtSignature("int")
486 490 def on_volOpCebProfile_stateChanged(self, p0):
487 491 """
488 492 Check Box habilita ingreso del rango de Perfiles
489 493 """
490 494 if p0 == 2:
491 495 self.volOpComProfile.setEnabled(True)
492 496 self.volOpProfile.setEnabled(True)
493 497
494 498 if p0 == 0:
495 499 self.volOpComProfile.setEnabled(False)
496 500 self.volOpProfile.setEnabled(False)
497 501 self.volOpProfile.clear()
498 502
499 503 @pyqtSignature("int")
500 504 def on_volOpCebDecodification_stateChanged(self, p0):
501 505 """
502 506 Check Box habilita
503 507 """
504 508 if p0 == 2:
505 509 self.volOpComCode.setEnabled(True)
506 510 self.volOpComMode.setEnabled(True)
507 511 if p0 == 0:
508 512 self.volOpComCode.setEnabled(False)
509 513 self.volOpComMode.setEnabled(False)
510 514
511 515 @pyqtSignature("int")
512 516 def on_volOpCebCohInt_stateChanged(self, p0):
513 517 """
514 518 Check Box habilita ingresode del numero de Integraciones a realizar
515 519 """
516 520 if p0 == 2:
517 521 self.volOpCohInt.setEnabled(True)
518 522 if p0 == 0:
519 523 self.volOpCohInt.setEnabled(False)
520 524 self.volOpCohInt.clear()
521 525
522 526 @pyqtSignature("int")
523 527 def on_volOpCebRadarfrequency_stateChanged(self, p0):
524 528 """
525 529 Check Box habilita ingresode del numero de Integraciones a realizar
526 530 """
527 531 if p0 == 2:
528 532 self.volOpRadarfrequency.setEnabled(True)
529 533 if p0 == 0:
530 534 self.volOpRadarfrequency.clear()
531 535 self.volOpRadarfrequency.setEnabled(False)
532 536
533 537 @pyqtSignature("")
534 538 def on_volOutputToolPath_clicked(self):
535 539 dirOutPath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
536 540 self.volOutputPath.setText(dirOutPath)
537 541
538 542 @pyqtSignature("")
539 543 def on_specOutputToolPath_clicked(self):
540 544 dirOutPath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
541 545 self.specOutputPath.setText(dirOutPath)
542 546
543 547 @pyqtSignature("")
544 548 def on_specHeisOutputToolPath_clicked(self):
545 549 dirOutPath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
546 550 self.specHeisOutputPath.setText(dirOutPath)
547 551
548 552 @pyqtSignature("")
549 553 def on_specHeisOutputMetadaToolPath_clicked(self):
550 554 home = expanduser("~")
551 555 self.dir = os.path.join(home, 'schain_workspace')
552 556 filename = str(QtGui.QFileDialog.getOpenFileName(self, "Open text file", self.dir, self.tr("Text Files (*.xml)")))
553 557 self.specHeisOutputMetada.setText(filename)
554 558
555 559 @pyqtSignature("")
556 560 def on_volOpOk_clicked(self):
557 561 """
558 562 BUSCA EN LA LISTA DE OPERACIONES DEL TIPO VOLTAJE Y LES AοΏ½ADE EL PARAMETRO ADECUADO ESPERANDO LA ACEPTACION DEL USUARIO
559 563 PARA AGREGARLO AL ARCHIVO DE CONFIGURACION XML
560 564 """
561 565
562 566 checkPath = False
563 567
564 568 self.actionSaveToolbar.setEnabled(False)
565 569 self.actionStarToolbar.setEnabled(False)
566 570
567 571 puObj = self.getSelectedPUObj()
568 572 puObj.removeOperations()
569 573
570 574 if self.volOpCebRadarfrequency.isChecked():
571 575 value = self.volOpRadarfrequency.text()
572 576 format = 'float'
573 577 name_operation = 'setRadarFrequency'
574 578 name_parameter = 'frequency'
575 579 if not value == "":
576 580 try:
577 581 radarfreq = float(self.volOpRadarfrequency.text())
578 582 except:
579 583 self.console.clear()
580 584 self.console.append("Write the parameter Radar Frequency type float")
581 585 return 0
582 586 opObj = puObj.addOperation(name=name_operation)
583 587 opObj.addParameter(name=name_parameter, value=radarfreq, format=format)
584 588
585 589
586 590
587 591 if self.volOpCebChannels.isChecked():
588 592 value = self.volOpChannel.text()
589 593 format = 'intlist'
590 594 if self.volOpComChannels.currentIndex() == 0:
591 595 name_operation = "selectChannels"
592 596 name_parameter = 'channelList'
593 597 else:
594 598 name_operation = "selectChannelsByIndex"
595 599 name_parameter = 'channelIndexList'
596 600
597 601 opObj = puObj.addOperation(name=name_operation)
598 602 opObj.addParameter(name=name_parameter, value=value, format=format)
599 603
600 604 if self.volOpCebHeights.isChecked():
601 605 value = self.volOpHeights.text()
602 606 valueList = value.split(',')
603 607 format = 'float'
604 608 if self.volOpComHeights.currentIndex() == 0:
605 609 name_operation = 'selectHeights'
606 610 name_parameter1 = 'minHei'
607 611 name_parameter2 = 'maxHei'
608 612 else:
609 613 name_operation = 'selectHeightsByIndex'
610 614 name_parameter1 = 'minIndex'
611 615 name_parameter2 = 'maxIndex'
612 616 opObj = puObj.addOperation(name=name_operation)
613 617 opObj.addParameter(name=name_parameter1, value=valueList[0], format=format)
614 618 opObj.addParameter(name=name_parameter2, value=valueList[1], format=format)
615 619
616 620 if self.volOpCebFilter.isChecked():
617 621 value = self.volOpFilter.text()
618 622 format = 'int'
619 623 name_operation = 'filterByHeights'
620 624 name_parameter = 'window'
621 625 opObj = puObj.addOperation(name=name_operation)
622 626 opObj.addParameter(name=name_parameter, value=value, format=format)
623 627
624 628 if self.volOpCebProfile.isChecked():
625 629 value = self.volOpProfile.text()
626 630 format = 'intlist'
627 631 optype = 'other'
628 632 name_operation = 'ProfileSelector'
629 633 if self.volOpComProfile.currentIndex() == 0:
630 634 name_parameter = 'profileList'
631 635 else:
632 636 name_parameter = 'profileRangeList'
633 637 opObj = puObj.addOperation(name='ProfileSelector', optype='other')
634 638 opObj.addParameter(name=name_parameter, value=value, format=format)
635 639
636 640 if self.volOpCebDecodification.isChecked():
637 641 name_operation = 'Decoder'
638 642 optype = 'other'
639 643 format1 = 'floatlist'
640 644 format2 = 'int'
641 645 format3 = 'int'
642 646 format4 = 'int'
643 647 name_parameter1 = 'code'
644 648 name_parameter2 = 'nCode'
645 649 name_parameter3 = 'nBaud'
646 650 name_parameter4 = 'mode'
647 651
648 652 if self.volOpComCode.currentIndex() == 0:
649 653 value1 = '1,1,-1'
650 654 value2 = '1'
651 655 value3 = '3'
652 656 if self.volOpComCode.currentIndex() == 1:
653 657 value1 = '1,1,-1,1'
654 658 value2 = '1'
655 659 value3 = '4'
656 660 if self.volOpComCode.currentIndex() == 2:
657 661 value1 = '1,1,1,βˆ’1,1'
658 662 value2 = '1'
659 663 value3 = '5'
660 664 if self.volOpComCode.currentIndex() == 3:
661 665 value1 = '1,1,1,-1,-1,1,-1'
662 666 value2 = '1'
663 667 value3 = '7'
664 668 if self.volOpComCode.currentIndex() == 4:
665 669 value1 = '1,1,1,-1,-1,-1,1,-1,-1,1,-1'
666 670 value2 = '1'
667 671 value3 = '11'
668 672 if self.volOpComCode.currentIndex() == 5:
669 673 value1 = '1,1,1,1,1,-1,-1,1,1,-1,1,-1,1'
670 674 value2 = '1'
671 675 value3 = '13'
672 676 if self.volOpComCode.currentIndex() == 6:
673 677 value1 = '1,1,-1,-1,-1,1'
674 678 value2 = '2'
675 679 value3 = '3'
676 680 if self.volOpComCode.currentIndex() == 7:
677 681 value1 = '1,1,-1,1,-1,-1,1,-1'
678 682 value2 = '2'
679 683 value3 = '4'
680 684 if self.volOpComCode.currentIndex() == 8:
681 685 value1 = '1,1,1,-1,1,-1,-1,-1,1,-1'
682 686 value2 = '2'
683 687 value3 = '5'
684 688 if self.volOpComCode.currentIndex() == 9:
685 689 value1 = '1,1,1,-1,-1,1,-1,-1,-1,-1,1,1,-1,1'
686 690 value2 = '2'
687 691 value3 = '7'
688 692 if self.volOpComCode.currentIndex() == 10:
689 693 value1 = '1,1,1,-1,-1,-1,1,-1,-1,1,-1,-1 ,-1 ,-1 ,1 ,1,1,-1 ,1 ,1 ,-1 ,1'
690 694 value2 = '2'
691 695 value3 = '11'
692 696 if self.volOpComCode.currentIndex() == 11:
693 697 value1 = '1,1,1,1,1,-1,-1,1,1,-1,1,-1,1,-1,-1,-1,-1,-1,1,1,-1,-1,1,-1,1,-1'
694 698 value2 = '2'
695 699 value3 = '13'
696 700 if self.volOpComMode.currentIndex() == 0:
697 701 value4 = '0'
698 702 if self.volOpComMode.currentIndex() == 1:
699 703 value4 = '1'
700 704 if self.volOpComMode.currentIndex() == 2:
701 705 value4 = '2'
702 706 opObj = puObj.addOperation(name=name_operation, optype='other')
703 707 if self.volOpComCode.currentIndex() == 12:
704 708 pass
705 709 else:
706 710 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
707 711 opObj.addParameter(name=name_parameter2, value=value2, format=format2)
708 712 opObj.addParameter(name=name_parameter3, value=value3, format=format3)
709 713 opObj.addParameter(name=name_parameter4, value=value4, format=format4)
710 714
711 715 if self.volOpCebFlip.isChecked():
712 716 name_operation = 'deFlip'
713 717 optype = 'self'
714 718 value = self.volOpFlip.text()
715 719 name_parameter = 'channelList'
716 720 format = 'intList'
717 721
718 722 opObj = puObj.addOperation(name=name_operation, optype=optype)
719 723 opObj.addParameter(name=name_parameter, value=value, format=format)
720 724
721 725 if self.volOpCebCohInt.isChecked():
722 726 name_operation = 'CohInt'
723 727 optype = 'other'
724 728 value = self.volOpCohInt.text()
725 729 name_parameter = 'n'
726 730 format = 'float'
727 731
728 732 opObj = puObj.addOperation(name=name_operation, optype=optype)
729 733 opObj.addParameter(name=name_parameter, value=value, format=format)
730 734
731 735 if self.volGraphCebshow.isChecked():
732 736 name_operation = 'Scope'
733 737 optype = 'other'
734 738 name_parameter = 'type'
735 739 value = 'Scope'
736 740 if self.idImagscope == 0:
737 741 self.idImagscope = 100
738 742 else:
739 743 self.idImagscope = self.idImagscope + 1
740 744
741 745 name_parameter1 = 'id'
742 746 value1 = int(self.idImagscope)
743 747 format1 = 'int'
744 748 format = 'str'
745 749
746 750 opObj = puObj.addOperation(name=name_operation, optype=optype)
747 751 # opObj.addParameter(name=name_parameter, value=value, format=format)
748 752 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
749 753
750 754 channelList = self.volGraphChannelList.text()
751 755 xvalue = self.volGraphfreqrange.text()
752 756 yvalue = self.volGraphHeightrange.text()
753 757
754 758 if self.volGraphChannelList.isModified():
755 759 try:
756 760 value = str(channelList)
757 761 except:
758 762 return 0
759 763 opObj.addParameter(name='channelList', value=value, format='intlist')
760 764
761 765 if not xvalue == "":
762 766 xvalueList = xvalue.split(',')
763 767 try:
764 768 value0 = int(xvalueList[0])
765 769 value1 = int(xvalueList[1])
766 770 except:
767 771 return 0
768 772 opObj.addParameter(name='xmin', value=value0, format='int')
769 773 opObj.addParameter(name='xmax', value=value1, format='int')
770 774
771 775
772 776 if not yvalue == "":
773 777 yvalueList = yvalue.split(",")
774 778 try:
775 779 value = yvalueList[0]
776 780 value = yvalueList[1]
777 781 except:
778 782 return 0
779 783 opObj.addParameter(name='ymin', value=yvalueList[0], format='int')
780 784 opObj.addParameter(name='ymax', value=yvalueList[1], format='int')
781 785
782 786 if self.volGraphCebSave.isChecked():
783 787 checkPath = True
784 788 opObj.addParameter(name='save', value='1', format='int')
785 789 opObj.addParameter(name='figpath', value=self.volGraphPath.text(), format='str')
786 790 value = self.volGraphPrefix.text()
787 791 if not value == "":
788 792 try:
789 793 value = str(self.volGraphPrefix.text())
790 794 except:
791 795 self.console.clear()
792 796 self.console.append("Please Write prefix")
793 797 return 0
794 798 opObj.addParameter(name='figfile', value=self.volGraphPrefix.text(), format='str')
795 799
796 800 localfolder = None
797 801 if checkPath:
798 802 localfolder = str(self.specGraphPath.text())
799 803 if localfolder == '':
800 804 self.console.clear()
801 805 self.console.append("Graphic path should be defined")
802 806 return 0
803 807
804 808 # if something happend
805 809 parms_ok, output_path, blocksperfile, profilesperblock = self.checkInputsPUSave(datatype='Voltage')
806 810 if parms_ok:
807 811 name_operation = 'VoltageWriter'
808 812 optype = 'other'
809 813 name_parameter1 = 'path'
810 814 name_parameter2 = 'blocksPerFile'
811 815 name_parameter3 = 'profilesPerBlock'
812 816 value1 = output_path
813 817 value2 = blocksperfile
814 818 value3 = profilesperblock
815 819 format = "int"
816 820 opObj = puObj.addOperation(name=name_operation, optype=optype)
817 821 opObj.addParameter(name=name_parameter1, value=value1)
818 822 opObj.addParameter(name=name_parameter2, value=value2, format=format)
819 823 opObj.addParameter(name=name_parameter3, value=value3, format=format)
820 824
821 825 #---------NEW VOLTAGE PROPERTIES
822 826 self.showPUVoltageProperties(puObj)
823 827
824 828 self.console.clear()
825 829 self.console.append("If you want to save your project")
826 830 self.console.append("click on your project name in the Tree Project Explorer")
827 831
828 832 self.actionSaveToolbar.setEnabled(True)
829 833 self.actionStarToolbar.setEnabled(True)
830 834
831 835 return 1
832 836
833 837 """
834 838 Voltage Graph
835 839 """
836 840 @pyqtSignature("int")
837 841 def on_volGraphCebSave_stateChanged(self, p0):
838 842 """
839 843 Check Box habilita ingresode del numero de Integraciones a realizar
840 844 """
841 845 if p0 == 2:
842 846 self.volGraphPath.setEnabled(True)
843 847 self.volGraphPrefix.setEnabled(True)
844 848 self.volGraphToolPath.setEnabled(True)
845 849
846 850 if p0 == 0:
847 851 self.volGraphPath.setEnabled(False)
848 852 self.volGraphPrefix.setEnabled(False)
849 853 self.volGraphToolPath.setEnabled(False)
850 854
851 855 @pyqtSignature("")
852 856 def on_volGraphToolPath_clicked(self):
853 857 """
854 858 Donde se guardan los DATOS
855 859 """
856 860 self.dataPath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
857 861 self.volGraphPath.setText(self.dataPath)
858 862
859 863 # if not os.path.exists(self.dataPath):
860 864 # self.volGraphOk.setEnabled(False)
861 865 # return
862 866
863 867 @pyqtSignature("int")
864 868 def on_volGraphCebshow_stateChanged(self, p0):
865 869 """
866 870 Check Box habilita ingresode del numero de Integraciones a realizar
867 871 """
868 872 if p0 == 0:
869 873
870 874 self.volGraphChannelList.setEnabled(False)
871 875 self.volGraphfreqrange.setEnabled(False)
872 876 self.volGraphHeightrange.setEnabled(False)
873 877 if p0 == 2:
874 878
875 879 self.volGraphChannelList.setEnabled(True)
876 880 self.volGraphfreqrange.setEnabled(True)
877 881 self.volGraphHeightrange.setEnabled(True)
878 882
879 883 """
880 884 Spectra operation
881 885 """
882 886 @pyqtSignature("int")
883 887 def on_specOpCebRadarfrequency_stateChanged(self, p0):
884 888 """
885 889 Check Box habilita ingresode del numero de Integraciones a realizar
886 890 """
887 891 if p0 == 2:
888 892 self.specOpRadarfrequency.setEnabled(True)
889 893 if p0 == 0:
890 894 self.specOpRadarfrequency.clear()
891 895 self.specOpRadarfrequency.setEnabled(False)
892 896
893 897
894 898 @pyqtSignature("int")
895 899 def on_specOpCebCrossSpectra_stateChanged(self, p0):
896 900 """
897 901 Habilita la opcion de aοΏ½adir el parοΏ½metro CrossSpectra a la Unidad de Procesamiento .
898 902 """
899 903 if p0 == 2:
900 904 # self.specOpnFFTpoints.setEnabled(True)
901 905 self.specOppairsList.setEnabled(True)
902 906 if p0 == 0:
903 907 # self.specOpnFFTpoints.setEnabled(False)
904 908 self.specOppairsList.setEnabled(False)
905 909
906 910 @pyqtSignature("int")
907 911 def on_specOpCebChannel_stateChanged(self, p0):
908 912 """
909 913 Habilita la opcion de aοΏ½adir el parοΏ½metro numero de Canales a la Unidad de Procesamiento .
910 914 """
911 915 if p0 == 2:
912 916 self.specOpChannel.setEnabled(True)
913 917 self.specOpComChannel.setEnabled(True)
914 918 if p0 == 0:
915 919 self.specOpChannel.setEnabled(False)
916 920 self.specOpComChannel.setEnabled(False)
917 921
918 922 @pyqtSignature("int")
919 923 def on_specOpCebHeights_stateChanged(self, p0):
920 924 """
921 925 Habilita la opcion de aοΏ½adir el parοΏ½metro de alturas a la Unidad de Procesamiento .
922 926 """
923 927 if p0 == 2:
924 928 self.specOpComHeights.setEnabled(True)
925 929 self.specOpHeights.setEnabled(True)
926 930 if p0 == 0:
927 931 self.specOpComHeights.setEnabled(False)
928 932 self.specOpHeights.setEnabled(False)
929 933
930 934
931 935 @pyqtSignature("int")
932 936 def on_specOpCebIncoherent_stateChanged(self, p0):
933 937 """
934 938 Habilita la opcion de aοΏ½adir el parοΏ½metro integraciones incoherentes a la Unidad de Procesamiento .
935 939 """
936 940 if p0 == 2:
937 941 self.specOpIncoherent.setEnabled(True)
938 942 if p0 == 0:
939 943 self.specOpIncoherent.setEnabled(False)
940 944
941 945 @pyqtSignature("int")
942 946 def on_specOpCebRemoveDC_stateChanged(self, p0):
943 947 """
944 948 Habilita la opcion de aοΏ½adir el parοΏ½metro remover DC a la Unidad de Procesamiento .
945 949 """
946 950 if p0 == 2:
947 951 self.specOpComRemoveDC.setEnabled(True)
948 952 if p0 == 0:
949 953 self.specOpComRemoveDC.setEnabled(False)
950 954
951 955 @pyqtSignature("int")
952 956 def on_specOpCebgetNoise_stateChanged(self, p0):
953 957 """
954 958 Habilita la opcion de aοΏ½adir la estimacion de ruido a la Unidad de Procesamiento .
955 959 """
956 960 if p0 == 2:
957 961 self.specOpgetNoise.setEnabled(True)
958 962
959 963 if p0 == 0:
960 964 self.specOpgetNoise.setEnabled(False)
961 965
962 966 def refreshID(self, puObj):
963 967 opObj = puObj.getOperationObj(name='Scope')
964 968 # opObj = puObj.getOpObjfromParamValue(value="Scope")
965 969 if opObj == None:
966 970 pass
967 971 else:
968 972 name_parameter1 = 'id'
969 973 format1 = 'int'
970 974 if self.idImagscope == 0:
971 975 self.idImagscope = 100
972 976 else:
973 977 self.idImagscope = self.idImagscope + 1
974 978 value1 = int(self.idImagscope)
975 979 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
976 980
977 981 opObj = puObj.getOperationObj(name='SpectraPlot')
978 982 # opObj = puObj.getOpObjfromParamValue(value="SpectraPlot")
979 983 if opObj == None:
980 984 pass
981 985 else:
982 986 name_parameter1 = 'id'
983 987 format1 = 'int'
984 988 if self.idImagspectra == 0:
985 989 self.idImagspectra = 200
986 990 else:
987 991 self.idImagspectra = self.idImagspectra + 1
988 992 value1 = int(self.idImagspectra)
989 993 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
990 994
991 995 opObj = puObj.getOperationObj(name='CrossSpectraPlot')
992 996 # opObj = puObj.getOpObjfromParamValue(value="CrossSpectraPlot")
993 997 if opObj == None:
994 998 pass
995 999 else:
996 1000 name_parameter1 = 'id'
997 1001 format1 = 'int'
998 1002 if self.idImagcross == 0:
999 1003 self.idImagcross = 300
1000 1004 else:
1001 1005 self.idImagcross = self.idImagcross + 1
1002 1006 value1 = int(self.idImagcross)
1003 1007 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1004 1008
1005 1009 opObj = puObj.getOperationObj(name='RTIPlot')
1006 1010 # opObj = puObj.getOpObjfromParamValue(value="RTIPlot")
1007 1011 if opObj == None:
1008 1012 pass
1009 1013 else:
1010 1014 name_parameter1 = 'id'
1011 1015 format1 = 'int'
1012 1016 if self.idImagrti == 0:
1013 1017 self.idImagrti = 400
1014 1018 else:
1015 1019 self.idImagrti = self.idImagrti + 1
1016 1020 value1 = int(self.idImagrti)
1017 1021 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1018 1022
1019 1023 opObj = puObj.getOperationObj(name='CoherenceMap')
1020 1024 # opObj = puObj.getOpObjfromParamValue(value="CoherenceMap")
1021 1025 if opObj == None:
1022 1026 pass
1023 1027 else:
1024 1028 name_parameter1 = 'id'
1025 1029 format1 = 'int'
1026 1030 if self.idImagcoherence == 0:
1027 1031 self.idImagcoherence = 500
1028 1032 else:
1029 1033 self.idImagcoherence = self.idImagcoherence + 1
1030 1034 value1 = int(self.idImagcoherence)
1031 1035 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1032 1036
1033 1037 opObj = puObj.getOperationObj(name='PowerProfilePlot')
1034 1038 # opObj = puObj.getOpObjfromParamValue(value="PowerProfilePlot")
1035 1039 if opObj == None:
1036 1040 pass
1037 1041 else:
1038 1042 name_parameter1 = 'id'
1039 1043 format1 = 'int'
1040 1044 if self.idImagpower == 0:
1041 1045 self.idImagpower = 600
1042 1046 else:
1043 1047 self.idImagpower = self.idImagpower + 1
1044 1048 value1 = int(self.idImagpower)
1045 1049 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1046 1050
1047 1051 opObj = puObj.getOperationObj(name='Noise')
1048 1052 # opObj = puObj.getOpObjfromParamValue(value="Noise")
1049 1053 if opObj == None:
1050 1054 pass
1051 1055 else:
1052 1056 name_parameter1 = 'id'
1053 1057 format1 = 'int'
1054 1058 if self.idImagrtinoise == 0:
1055 1059 self.idImagrtinoise = 700
1056 1060 else:
1057 1061 self.idImagrtinoise = self.idImagrtinoise + 1
1058 1062 value1 = int(self.idImagrtinoise)
1059 1063 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1060 1064
1061 1065 opObj = puObj.getOperationObj(name='SpectraHeisScope')
1062 1066 # opObj = puObj.getOpObjfromParamValue(value="SpectraHeisScope")
1063 1067 if opObj == None:
1064 1068 pass
1065 1069 else:
1066 1070 name_parameter1 = 'id'
1067 1071 format1 = 'int'
1068 1072 if self.idImagspectraHeis == 0:
1069 1073 self.idImagspectraHeis = 800
1070 1074 else:
1071 1075 self.idImagspectraHeis = self.idImagspectraHeis + 1
1072 1076 value1 = int(self.idImagspectraHeis)
1073 1077 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1074 1078
1075 1079 opObj = puObj.getOperationObj(name='RTIfromSpectraHeis')
1076 1080 # opObj = puObj.getOpObjfromParamValue(value="RTIfromSpectraHeis")
1077 1081 if opObj == None:
1078 1082 pass
1079 1083 else:
1080 1084 name_parameter1 = 'id'
1081 1085 format1 = 'int'
1082 1086 if self.idImagrtiHeis == 0:
1083 1087 self.idImagrtiHeis = 900
1084 1088 else:
1085 1089 self.idImagrtiHeis = self.idImagrtiHeis + 1
1086 1090 value1 = int(self.idImagrtiHeis)
1087 1091 opObj.changeParameter(name=name_parameter1, value=value1, format=format1)
1088 1092
1089 1093 @pyqtSignature("")
1090 1094 def on_specOpOk_clicked(self):
1091 1095 """
1092 1096 AΓ‘ADE OPERACION SPECTRA
1093 1097 """
1094 1098
1095 1099 addFTP = False
1096 1100 checkPath = False
1097 1101
1098 1102 self.actionSaveToolbar.setEnabled(False)
1099 1103 self.actionStarToolbar.setEnabled(False)
1100 1104
1101 1105 puObj = self.getSelectedPUObj()
1102 1106 puObj.removeOperations()
1103 1107
1104 1108 if self.specOpCebRadarfrequency.isChecked():
1105 1109 value = self.specOpRadarfrequency.text()
1106 1110 format = 'float'
1107 1111 name_operation = 'setRadarFrequency'
1108 1112 name_parameter = 'frequency'
1109 1113 if not value == "":
1110 1114 try:
1111 1115 radarfreq = float(self.specOpRadarfrequency.text())
1112 1116 except:
1113 1117 self.console.clear()
1114 1118 self.console.append("Write the parameter Radar Frequency type float")
1115 1119 return 0
1116 1120 opObj = puObj.addOperation(name=name_operation)
1117 1121 opObj.addParameter(name=name_parameter, value=radarfreq, format=format)
1118 1122
1119 1123
1120 1124 if self.proComDataType.currentText() == 'Voltage':
1121 1125 name_parameter = 'nFFTPoints'
1122 1126 value = self.specOpnFFTpoints.text()
1123 1127 name_parameter1 = 'nProfiles'
1124 1128 value1 = self.specOpProfiles.text()
1125 1129 name_parameter2 = 'ippFactor'
1126 1130 value2 = self.specOpippFactor.text()
1127 1131 format = 'int'
1128 1132 try:
1129 1133 value = int(self.specOpnFFTpoints.text())
1130 1134 except:
1131 1135 self.console.clear()
1132 1136 self.console.append("Please Write the number of FFT")
1133 1137 return 0
1134 1138 puObj.addParameter(name=name_parameter, value=value, format=format)
1135 1139 if not value1 == "":
1136 1140 try:
1137 1141 value1 = int(self.specOpProfiles.text())
1138 1142 except:
1139 1143 self.console.clear()
1140 1144 self.console.append("Please Write the number of Profiles")
1141 1145 return 0
1142 1146 puObj.addParameter(name=name_parameter1, value=value1, format=format)
1143 1147 if not value2 == "":
1144 1148 try:
1145 1149 value2 = int(self.specOpippFactor.text())
1146 1150 except:
1147 1151 self.console.clear()
1148 1152 self.console.append("Please Write the Number of IppFactor")
1149 1153 puObj.addParameter(name=name_parameter2 , value=value2 , format=format)
1150 1154
1151 1155 if self.specOpCebCrossSpectra.isChecked():
1152 1156 name_parameter = 'pairsList'
1153 1157 format = 'pairslist'
1154 1158 value2 = self.specOppairsList.text()
1155 1159 puObj.addParameter(name=name_parameter, value=value2, format=format)
1156 1160
1157 1161 if self.specOpCebHeights.isChecked():
1158 1162 value = self.specOpHeights.text()
1159 1163 valueList = value.split(',')
1160 1164 format = 'float'
1161 1165 value0 = valueList[0]
1162 1166 value1 = valueList[1]
1163 1167
1164 1168 if self.specOpComHeights.currentIndex() == 0:
1165 1169 name_operation = 'selectHeights'
1166 1170 name_parameter1 = 'minHei'
1167 1171 name_parameter2 = 'maxHei'
1168 1172 else:
1169 1173 name_operation = 'selectHeightsByIndex'
1170 1174 name_parameter1 = 'minIndex'
1171 1175 name_parameter2 = 'maxIndex'
1172 1176 opObj = puObj.addOperation(name=name_operation)
1173 1177 opObj.addParameter(name=name_parameter1, value=value0, format=format)
1174 1178 opObj.addParameter(name=name_parameter2, value=value1, format=format)
1175 1179
1176 1180 if self.specOpCebChannel.isChecked():
1177 1181 value = self.specOpChannel.text()
1178 1182 format = 'intlist'
1179 1183 if self.specOpComChannel.currentIndex() == 0:
1180 1184 name_operation = "selectChannels"
1181 1185 name_parameter = 'channelList'
1182 1186 else:
1183 1187 name_operation = "selectChannelsByIndex"
1184 1188 name_parameter = 'channelIndexList'
1185 1189 opObj = puObj.addOperation(name="selectChannels")
1186 1190 opObj.addParameter(name=name_parameter, value=value, format=format)
1187 1191
1188 1192 if self.specOpCebIncoherent.isChecked():
1189 1193 value = self.specOpIncoherent.text()
1190 1194 name_operation = 'IncohInt'
1191 1195 optype = 'other'
1192 1196 if self.specOpCobIncInt.currentIndex() == 0:
1193 1197 name_parameter = 'timeInterval'
1194 1198 format = 'float'
1195 1199 else:
1196 1200 name_parameter = 'n'
1197 1201 format = 'float'
1198 1202
1199 1203 opObj = puObj.addOperation(name=name_operation, optype=optype)
1200 1204 opObj.addParameter(name=name_parameter, value=value, format=format)
1201 1205
1202 1206 if self.specOpCebRemoveDC.isChecked():
1203 1207 name_operation = 'removeDC'
1204 1208 name_parameter = 'mode'
1205 1209 format = 'int'
1206 1210 if self.specOpComRemoveDC.currentIndex() == 0:
1207 1211 value = 1
1208 1212 else:
1209 1213 value = 2
1210 1214 opObj = puObj.addOperation(name=name_operation)
1211 1215 opObj.addParameter(name=name_parameter, value=value, format=format)
1212 1216
1213 1217 if self.specOpCebRemoveInt.isChecked():
1214 1218 name_operation = 'removeInterference'
1215 1219 opObj = puObj.addOperation(name=name_operation)
1216 1220
1217 1221
1218 1222 if self.specOpCebgetNoise.isChecked():
1219 1223 value = self.specOpgetNoise.text()
1220 1224 valueList = value.split(',')
1221 1225 format = 'float'
1222 1226 name_operation = "getNoise"
1223 1227 opObj = puObj.addOperation(name=name_operation)
1224 1228
1225 1229 if not value == '':
1226 1230 valueList = value.split(',')
1227 1231 length = len(valueList)
1228 1232 if length == 1:
1229 1233 try:
1230 1234 value1 = float(valueList[0])
1231 1235 except:
1232 1236 self.console.clear()
1233 1237 self.console.append("Please Write correct parameter Get Noise")
1234 1238 return 0
1235 1239 name1 = 'minHei'
1236 1240 opObj.addParameter(name=name1, value=value1, format=format)
1237 1241 elif length == 2:
1238 1242 try:
1239 1243 value1 = float(valueList[0])
1240 1244 value2 = float(valueList[1])
1241 1245 except:
1242 1246 self.console.clear()
1243 1247 self.console.append("Please Write corrects parameter Get Noise")
1244 1248 return 0
1245 1249 name1 = 'minHei'
1246 1250 name2 = 'maxHei'
1247 1251 opObj.addParameter(name=name1, value=value1, format=format)
1248 1252 opObj.addParameter(name=name2, value=value2, format=format)
1249 1253
1250 1254 elif length == 3:
1251 1255 try:
1252 1256 value1 = float(valueList[0])
1253 1257 value2 = float(valueList[1])
1254 1258 value3 = float(valueList[2])
1255 1259 except:
1256 1260 self.console.clear()
1257 1261 self.console.append("Please Write corrects parameter Get Noise")
1258 1262 return 0
1259 1263 name1 = 'minHei'
1260 1264 name2 = 'maxHei'
1261 1265 name3 = 'minVel'
1262 1266 opObj.addParameter(name=name1, value=value1, format=format)
1263 1267 opObj.addParameter(name=name2, value=value2, format=format)
1264 1268 opObj.addParameter(name=name3, value=value3, format=format)
1265 1269
1266 1270 elif length == 4:
1267 1271 try:
1268 1272 value1 = float(valueList[0])
1269 1273 value2 = float(valueList[1])
1270 1274 value3 = float(valueList[2])
1271 1275 value4 = float(valueList[3])
1272 1276 except:
1273 1277 self.console.clear()
1274 1278 self.console.append("Please Write corrects parameter Get Noise")
1275 1279 return 0
1276 1280 name1 = 'minHei'
1277 1281 name2 = 'maxHei'
1278 1282 name3 = 'minVel'
1279 1283 name4 = 'maxVel'
1280 1284 opObj.addParameter(name=name1, value=value1, format=format)
1281 1285 opObj.addParameter(name=name2, value=value2, format=format)
1282 1286 opObj.addParameter(name=name3, value=value3, format=format)
1283 1287 opObj.addParameter(name=name4, value=value4, format=format)
1284 1288
1285 1289 elif length > 4:
1286 1290 self.console.clear()
1287 1291 self.console.append("Get Noise Operation only accepts 4 parameters")
1288 1292 return 0
1289 1293
1290 1294 #-----Spectra Plot-----
1291 1295 if self.specGraphCebSpectraplot.isChecked():
1292 1296 name_operation = 'SpectraPlot'
1293 1297 optype = 'other'
1294 1298 name_parameter = 'type'
1295 1299 value = 'SpectraPlot'
1296 1300 format = 'str'
1297 1301 if self.idImagspectra == 0:
1298 1302 self.idImagspectra = 200
1299 1303 else:
1300 1304 self.idImagspectra = self.idImagspectra + 1
1301 1305 name_parameter1 = 'id'
1302 1306 value1 = int(self.idImagspectra)
1303 1307 format1 = 'int'
1304 1308
1305 1309 format = 'str'
1306 1310
1307 1311 channelList = self.specGgraphChannelList.text()
1308 1312 xvalue = self.specGgraphFreq.text()
1309 1313 yvalue = self.specGgraphHeight.text()
1310 1314 zvalue = self.specGgraphDbsrange.text()
1311 1315 opObj = puObj.addOperation(name=name_operation, optype=optype)
1312 1316 # opObj.addParameter(name=name_parameter, value=value, format=format)
1313 1317 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
1314 1318
1315 1319 if not channelList == '':
1316 1320 name_parameter = 'channelList'
1317 1321 format = 'intlist'
1318 1322 opObj.addParameter(name=name_parameter, value=channelList, format=format)
1319 1323
1320 1324 if not xvalue == '':
1321 1325 xvalueList = xvalue.split(',')
1322 1326 try:
1323 1327 value1 = float(xvalueList[0])
1324 1328 value2 = float(xvalueList[1])
1325 1329 except:
1326 1330 self.console.clear()
1327 1331 self.console.append("Please Write corrects parameter freq")
1328 1332 return 0
1329 1333 name1 = 'xmin'
1330 1334 name2 = 'xmax'
1331 1335 format = 'float'
1332 1336 opObj.addParameter(name=name1, value=value1, format=format)
1333 1337 opObj.addParameter(name=name2, value=value2, format=format)
1334 1338 #------specGgraphHeight---
1335 1339 if not yvalue == '':
1336 1340 yvalueList = yvalue.split(",")
1337 1341 try:
1338 1342 value1 = float(yvalueList[0])
1339 1343 value2 = float(yvalueList[1])
1340 1344 except:
1341 1345 self.console.clear()
1342 1346 self.console.append("Please Write corrects parameter Height")
1343 1347 return 0
1344 1348 name1 = 'ymin'
1345 1349 name2 = 'ymax'
1346 1350 format = 'float'
1347 1351 opObj.addParameter(name=name1, value=value1, format=format)
1348 1352 opObj.addParameter(name=name2, value=value2, format=format)
1349 1353
1350 1354 if not zvalue == '':
1351 1355 zvalueList = zvalue.split(",")
1352 1356 try:
1353 1357 value = float(zvalueList[0])
1354 1358 value = float(zvalueList[1])
1355 1359 except:
1356 1360 self.console.clear()
1357 1361 self.console.append("Please Write corrects parameter Dbsrange")
1358 1362 return 0
1359 1363 format = 'float'
1360 1364 opObj.addParameter(name='zmin', value=zvalueList[0], format=format)
1361 1365 opObj.addParameter(name='zmax', value=zvalueList[1], format=format)
1362 1366
1363 1367 if self.specGraphSaveSpectra.isChecked():
1364 1368 checkPath = True
1365 1369 name_parameter1 = 'save'
1366 1370 name_parameter2 = 'figpath'
1367 1371 name_parameter3 = 'figfile'
1368 1372 value1 = '1'
1369 1373 value2 = self.specGraphPath.text()
1370 1374 value3 = self.specGraphPrefix.text()
1371 1375 format1 = 'bool'
1372 1376 format2 = 'str'
1373 1377 opObj.addParameter(name=name_parameter1, value=value1 , format=format1)
1374 1378 opObj.addParameter(name=name_parameter2, value=value2, format=format2)
1375 1379 opObj.addParameter(name=name_parameter3, value=value3, format=format2)
1376 1380
1377 1381 # opObj.addParameter(name='wr_period', value='5',format='int')
1378 1382
1379 1383 if self.specGraphftpSpectra.isChecked():
1380 1384 opObj.addParameter(name='ftp', value='1', format='int')
1381 1385 self.addFTPConf2Operation(puObj, opObj)
1382 1386 addFTP = True
1383 1387
1384 1388 if self.specGraphCebCrossSpectraplot.isChecked():
1385 1389 name_operation = 'CrossSpectraPlot'
1386 1390 optype = 'other'
1387 1391 opObj = puObj.addOperation(name=name_operation, optype=optype)
1388 1392 # opObj.addParameter(name='type', value="CrossSpectraPlot", format='str')
1389 1393 opObj.addParameter(name='power_cmap', value='jet', format='str')
1390 1394 opObj.addParameter(name='coherence_cmap', value='jet', format='str')
1391 1395 opObj.addParameter(name='phase_cmap', value='RdBu_r', format='str')
1392 1396
1393 1397 if self.idImagcross == 0:
1394 1398 self.idImagcross = 300
1395 1399 else:
1396 1400 self.idImagcross = self.idImagcross + 1
1397 1401 value1 = int(self.idImagcross)
1398 1402 channelList = self.specGgraphChannelList.text()
1399 1403 xvalue = self.specGgraphFreq.text()
1400 1404 yvalue = self.specGgraphHeight.text()
1401 1405 zvalue = self.specGgraphDbsrange.text()
1402 1406
1403 1407 opObj.addParameter(name='id', value=value1, format='int')
1404 1408
1405 1409 if self.specGgraphChannelList.isModified():
1406 1410 opObj.addParameter(name='channelList', value=channelList, format='intlist')
1407 1411
1408 1412 if not xvalue == '':
1409 1413 xvalueList = xvalue.split(',')
1410 1414 try:
1411 1415 value = float(xvalueList[0])
1412 1416 value = float(xvalueList[1])
1413 1417 except:
1414 1418 return 0
1415 1419 format = 'float'
1416 1420 opObj.addParameter(name='xmin', value=xvalueList[0], format=format)
1417 1421 opObj.addParameter(name='xmax', value=xvalueList[1], format=format)
1418 1422
1419 1423 if not yvalue == '':
1420 1424 yvalueList = yvalue.split(",")
1421 1425 try:
1422 1426 value = float(yvalueList[0])
1423 1427 value = float(yvalueList[1])
1424 1428 except:
1425 1429 return 0
1426 1430 format = 'float'
1427 1431 opObj.addParameter(name='ymin', value=yvalueList[0], format=format)
1428 1432 opObj.addParameter(name='ymax', value=yvalueList[1], format=format)
1429 1433
1430 1434
1431 1435 if not zvalue == '':
1432 1436 zvalueList = zvalue.split(",")
1433 1437 try:
1434 1438 value = float(zvalueList[0])
1435 1439 value = float(zvalueList[1])
1436 1440 except:
1437 1441 return 0
1438 1442 opObj.addParameter(name='zmin', value=zvalueList[0], format='float')
1439 1443 opObj.addParameter(name='zmax', value=zvalueList[1], format='float')
1440 1444
1441 1445 if self.specGraphSaveCross.isChecked():
1442 1446 checkPath = True
1443 1447 opObj.addParameter(name='save', value='1', format='bool')
1444 1448 opObj.addParameter(name='figpath', value=self.specGraphPath.text(), format='str')
1445 1449 value = self.specGraphPrefix.text()
1446 1450 if not value == "":
1447 1451 try:
1448 1452 value = str(self.specGraphPrefix.text())
1449 1453 except:
1450 1454 self.console.clear()
1451 1455 self.console.append("Please Write prefix")
1452 1456 return 0
1453 1457 opObj.addParameter(name='figfile', value=value, format='str')
1454 1458 # opObj.addParameter(name='figfile', value=self.specGraphPrefix.text(), format='str')
1455 1459 if self.specGraphftpCross.isChecked():
1456 1460 opObj.addParameter(name='ftp', value='1', format='int')
1457 1461 self.addFTPConf2Operation(puObj, opObj)
1458 1462 addFTP = True
1459 1463
1460 1464 if self.specGraphCebRTIplot.isChecked():
1461 1465 name_operation = 'RTIPlot'
1462 1466 optype = 'other'
1463 1467 name_parameter = 'type'
1464 1468 value = 'RTIPlot'
1465 1469 format = 'str'
1466 1470
1467 1471 if self.idImagrti == 0:
1468 1472 self.idImagrti = 400
1469 1473 else:
1470 1474 self.idImagrti = self.idImagrti + 1
1471 1475
1472 1476 name_parameter1 = 'id'
1473 1477 value1 = int(self.idImagrti)
1474 1478 format1 = 'int'
1475 1479
1476 1480 format = 'str'
1477 1481
1478 1482 opObj = puObj.addOperation(name=name_operation, optype=optype)
1479 1483 # opObj.addParameter(name=name_parameter, value=value, format=format)
1480 1484 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
1481 1485
1482 1486 channelList = self.specGgraphChannelList.text()
1483 1487 xvalue = self.specGgraphTminTmax.text()
1484 1488 yvalue = self.specGgraphHeight.text()
1485 1489 zvalue = self.specGgraphDbsrange.text()
1486 1490 timerange = self.specGgraphTimeRange.text()
1487 1491
1488 1492 if not channelList == '':
1489 1493 opObj.addParameter(name='channelList', value=channelList, format='intlist')
1490 1494
1491 1495 if not xvalue == '':
1492 1496 xvalueList = xvalue.split(',')
1493 1497 try:
1494 1498 value = float(xvalueList[0])
1495 1499 value = float(xvalueList[1])
1496 1500 except:
1497 1501 return 0
1498 1502 format = 'float'
1499 1503 opObj.addParameter(name='xmin', value=xvalueList[0], format=format)
1500 1504 opObj.addParameter(name='xmax', value=xvalueList[1], format=format)
1501 1505
1502 1506 if not timerange == '':
1503 1507 format = 'int'
1504 1508 try:
1505 1509 timerange = int(timerange)
1506 1510 except:
1507 1511 return 0
1508 1512 opObj.addParameter(name='timerange', value=timerange, format=format)
1509 1513
1510 1514
1511 1515 if not yvalue == '':
1512 1516 yvalueList = yvalue.split(",")
1513 1517 try:
1514 1518 value = float(yvalueList[0])
1515 1519 value = float(yvalueList[1])
1516 1520 except:
1517 1521 return 0
1518 1522 format = 'float'
1519 1523 opObj.addParameter(name='ymin', value=yvalueList[0], format=format)
1520 1524 opObj.addParameter(name='ymax', value=yvalueList[1], format=format)
1521 1525
1522 1526 if not zvalue == '':
1523 1527 zvalueList = zvalue.split(",")
1524 1528 try:
1525 1529 value = float(zvalueList[0])
1526 1530 value = float(zvalueList[1])
1527 1531 except:
1528 1532 return 0
1529 1533 format = 'float'
1530 1534 opObj.addParameter(name='zmin', value=zvalueList[0], format=format)
1531 1535 opObj.addParameter(name='zmax', value=zvalueList[1], format=format)
1532 1536
1533 1537 if self.specGraphSaveRTIplot.isChecked():
1534 1538 checkPath = True
1535 1539 opObj.addParameter(name='save', value='1', format='bool')
1536 1540 opObj.addParameter(name='figpath', value=self.specGraphPath.text(), format='str')
1537 1541 value = self.specGraphPrefix.text()
1538 1542 if not value == "":
1539 1543 try:
1540 1544 value = str(self.specGraphPrefix.text())
1541 1545 except:
1542 1546 self.console.clear()
1543 1547 self.console.append("Please Write prefix")
1544 1548 return 0
1545 1549 opObj.addParameter(name='figfile', value=value, format='str')
1546 1550
1547 1551 # test_ftp
1548 1552 if self.specGraphftpRTIplot.isChecked():
1549 1553 opObj.addParameter(name='ftp', value='1', format='int')
1550 1554 self.addFTPConf2Operation(puObj, opObj)
1551 1555 addFTP = True
1552 1556
1553 1557 if self.specGraphCebCoherencmap.isChecked():
1554 1558 name_operation = 'CoherenceMap'
1555 1559 optype = 'other'
1556 1560 name_parameter = 'type'
1557 1561 value = 'CoherenceMap'
1558 1562 format = 'str'
1559 1563 if self.idImagcoherence == 0:
1560 1564 self.idImagcoherence = 500
1561 1565 else:
1562 1566 self.idImagcoherence = self.idImagcoherence + 1
1563 1567
1564 1568 name_parameter1 = 'id'
1565 1569 value1 = int(self.idImagcoherence)
1566 1570 format1 = 'int'
1567 1571
1568 1572 opObj = puObj.addOperation(name=name_operation, optype=optype)
1569 1573 # opObj.addParameter(name=name_parameter, value=value, format=format)
1570 1574 # opObj.addParameter(name='coherence_cmap', value='jet', format='str')
1571 1575 # opObj.addParameter(name='phase_cmap', value='RdBu_r', format='str')
1572 1576 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
1573 1577
1574 1578 channelList = self.specGgraphChannelList.text()
1575 1579 if not channelList == '':
1576 1580 opObj.addParameter(name='channelList', value=channelList, format='intlist')
1577 1581
1578 1582 timerange = self.specGgraphTimeRange.text()
1579 1583 if not timerange == '':
1580 1584 try:
1581 1585 timerange = int(timerange)
1582 1586 except:
1583 1587 return 0
1584 1588 format = 'int'
1585 1589 opObj.addParameter(name='timerange', value=timerange, format=format)
1586 1590
1587 1591 xvalue = self.specGgraphTminTmax.text()
1588 1592 if not xvalue == '':
1589 1593 xvalueList = xvalue.split(',')
1590 1594 try:
1591 1595 value = float(xvalueList[0])
1592 1596 value = float(xvalueList[1])
1593 1597 except:
1594 1598 return 0
1595 1599 format = 'float'
1596 1600 opObj.addParameter(name='xmin', value=xvalueList[0], format=format)
1597 1601 opObj.addParameter(name='xmax', value=xvalueList[1], format=format)
1598 1602
1599 1603 yvalue = self.specGgraphHeight.text()
1600 1604 if not yvalue == '':
1601 1605 yvalueList = yvalue.split(",")
1602 1606 try:
1603 1607 value = float(yvalueList[0])
1604 1608 value = float(yvalueList[1])
1605 1609 except:
1606 1610 return 0
1607 1611 format = 'float'
1608 1612 opObj.addParameter(name='ymin', value=yvalueList[0], format=format)
1609 1613 opObj.addParameter(name='ymax', value=yvalueList[1], format=format)
1610 1614
1611 1615 zvalue = self.specGgraphmagnitud.text()
1612 1616 if not zvalue == '':
1613 1617 zvalueList = zvalue.split(",")
1614 1618 try:
1615 1619 value = float(zvalueList[0])
1616 1620 value = float(zvalueList[1])
1617 1621 except:
1618 1622 return 0
1619 1623 opObj.addParameter(name='zmin', value=zvalueList[0], format='float')
1620 1624 opObj.addParameter(name='zmax', value=zvalueList[1], format='float')
1621 1625
1622 1626 if self.specGraphSaveCoherencemap.isChecked():
1623 1627 checkPath = True
1624 1628 opObj.addParameter(name='save', value='1', format='bool')
1625 1629 opObj.addParameter(name='figpath', value=self.specGraphPath.text(), format='str')
1626 1630 value = self.specGraphPrefix.text()
1627 1631 if not value == "":
1628 1632 try:
1629 1633 value = str(self.specGraphPrefix.text())
1630 1634 except:
1631 1635 self.console.clear()
1632 1636 self.console.append("Please Write prefix")
1633 1637 return 0
1634 1638 opObj.addParameter(name='figfile', value=value, format='str')
1635 1639
1636 1640 # test_ftp
1637 1641 if self.specGraphftpCoherencemap.isChecked():
1638 1642 opObj.addParameter(name='ftp', value='1', format='int')
1639 1643 self.addFTPConf2Operation(puObj, opObj)
1640 1644 addFTP = True
1641 1645
1642 1646 if self.specGraphPowerprofile.isChecked():
1643 1647 name_operation = 'PowerProfilePlot'
1644 1648 optype = 'other'
1645 1649 name_parameter = 'type'
1646 1650 value = 'PowerProfilePlot'
1647 1651 format = 'str'
1648 1652
1649 1653 if self.idImagpower == 0:
1650 1654 self.idImagpower = 600
1651 1655 else:
1652 1656 self.idImagpower = self.idImagpower + 1
1653 1657 value1 = int(self.idImagpower)
1654 1658 opObj = puObj.addOperation(name=name_operation, optype=optype)
1655 1659 # opObj.addParameter(name=name_parameter, value=value, format='str')
1656 1660 opObj.addParameter(name='id', value=value1, format='int')
1657 1661
1658 1662 channelList = self.specGgraphChannelList.text()
1659 1663 if not channelList == '':
1660 1664 opObj.addParameter(name='channelList', value=channelList, format='intlist')
1661 1665
1662 1666 xvalue = self.specGgraphDbsrange.text()
1663 1667 if not xvalue == '':
1664 1668 xvalueList = xvalue.split(',')
1665 1669 try:
1666 1670 value = float(xvalueList[0])
1667 1671 value = float(xvalueList[1])
1668 1672 except:
1669 1673 return 0
1670 1674 format = 'float'
1671 1675 opObj.addParameter(name='xmin', value=xvalueList[0], format=format)
1672 1676 opObj.addParameter(name='xmax', value=xvalueList[1], format=format)
1673 1677
1674 1678 yvalue = self.specGgraphHeight.text()
1675 1679 if not yvalue == '':
1676 1680 yvalueList = yvalue.split(",")
1677 1681 try:
1678 1682 value = float(yvalueList[0])
1679 1683 value = float(yvalueList[1])
1680 1684 except:
1681 1685 return 0
1682 1686 format = 'float'
1683 1687 opObj.addParameter(name='ymin', value=yvalueList[0], format=format)
1684 1688 opObj.addParameter(name='ymax', value=yvalueList[1], format=format)
1685 1689
1686 1690
1687 1691 if self.specGraphSavePowerprofile.isChecked():
1688 1692 checkPath = True
1689 1693 opObj.addParameter(name='save', value='1', format='bool')
1690 1694 opObj.addParameter(name='figpath', value=self.specGraphPath.text(), format='str')
1691 1695 value = self.specGraphPrefix.text()
1692 1696 if not value == "":
1693 1697 try:
1694 1698 value = str(self.specGraphPrefix.text())
1695 1699 except:
1696 1700 self.console.clear()
1697 1701 self.console.append("Please Write prefix")
1698 1702 return 0
1699 1703 opObj.addParameter(name='figfile', value=value, format='str')
1700 1704
1701 1705
1702 1706 if self.specGraphftpPowerprofile.isChecked():
1703 1707 opObj.addParameter(name='ftp', value='1', format='int')
1704 1708 self.addFTPConf2Operation(puObj, opObj)
1705 1709 addFTP = True
1706 1710 # rti noise
1707 1711
1708 1712 if self.specGraphCebRTInoise.isChecked():
1709 1713 name_operation = 'Noise'
1710 1714 optype = 'other'
1711 1715 name_parameter = 'type'
1712 1716 value = 'Noise'
1713 1717 format = 'str'
1714 1718
1715 1719 if self.idImagrtinoise == 0:
1716 1720 self.idImagrtinoise = 700
1717 1721 else:
1718 1722 self.idImagrtinoise = self.idImagrtinoise + 1
1719 1723
1720 1724 name_parameter1 = 'id'
1721 1725 value1 = int(self.idImagrtinoise)
1722 1726 format1 = 'int'
1723 1727 format = 'str'
1724 1728
1725 1729 opObj = puObj.addOperation(name=name_operation, optype=optype)
1726 1730 # opObj.addParameter(name=name_parameter, value=value, format=format)
1727 1731 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
1728 1732
1729 1733 channelList = self.specGgraphChannelList.text()
1730 1734 xvalue = self.specGgraphTminTmax.text()
1731 1735 yvalue = self.specGgraphDbsrange.text()
1732 1736 timerange = self.specGgraphTimeRange.text()
1733 1737
1734 1738
1735 1739 if not channelList == '':
1736 1740 opObj.addParameter(name='channelList', value=channelList, format='intlist')
1737 1741
1738 1742 if not timerange == '':
1739 1743 format = 'int'
1740 1744 try:
1741 1745 timerange = int(timerange)
1742 1746 except:
1743 1747 return 0
1744 1748 opObj.addParameter(name='timerange', value=timerange, format=format)
1745 1749
1746 1750 if not xvalue == '':
1747 1751 xvalueList = xvalue.split(',')
1748 1752 try:
1749 1753 value = float(xvalueList[0])
1750 1754 value = float(xvalueList[1])
1751 1755 except:
1752 1756 return 0
1753 1757 format = 'float'
1754 1758 opObj.addParameter(name='xmin', value=xvalueList[0], format=format)
1755 1759 opObj.addParameter(name='xmax', value=xvalueList[1], format=format)
1756 1760
1757 1761 if not yvalue == '':
1758 1762 yvalueList = yvalue.split(",")
1759 1763 try:
1760 1764 value = float(yvalueList[0])
1761 1765 value = float(yvalueList[1])
1762 1766 except:
1763 1767 return 0
1764 1768 format = 'float'
1765 1769 opObj.addParameter(name='ymin', value=yvalueList[0], format=format)
1766 1770 opObj.addParameter(name='ymax', value=yvalueList[1], format=format)
1767 1771
1768 1772 if self.specGraphSaveRTInoise.isChecked():
1769 1773 checkPath = True
1770 1774 opObj.addParameter(name='save', value='1', format='bool')
1771 1775 opObj.addParameter(name='figpath', value=self.specGraphPath.text(), format='str')
1772 1776 value = self.specGraphPrefix.text()
1773 1777 if not value == "":
1774 1778 try:
1775 1779 value = str(self.specGraphPrefix.text())
1776 1780 except:
1777 1781 self.console.clear()
1778 1782 self.console.append("Please Write prefix")
1779 1783 return 0
1780 1784 opObj.addParameter(name='figfile', value=value, format='str')
1781 1785
1782 1786 # test_ftp
1783 1787 if self.specGraphftpRTInoise.isChecked():
1784 1788 opObj.addParameter(name='ftp', value='1', format='int')
1785 1789 self.addFTPConf2Operation(puObj, opObj)
1786 1790 addFTP = True
1787 1791
1788 1792 localfolder = None
1789 1793 if checkPath:
1790 1794 localfolder = str(self.specGraphPath.text())
1791 1795 if localfolder == '':
1792 1796 self.console.clear()
1793 1797 self.console.append("Graphic path should be defined")
1794 1798 return 0
1795 1799
1796 1800 if addFTP:
1797 1801 if not localfolder:
1798 1802 self.console.clear()
1799 1803 self.console.append("You have to save the plots before sending them to FTP Server")
1800 1804 return 0
1801 1805
1802 1806 if not self.temporalFTP.create:
1803 1807 self.temporalFTP.setwithoutconfiguration()
1804 1808
1805 1809 server, remotefolder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.temporalFTP.recover()
1806 1810 self.createFTPProcUnitView(server, username, password, remotefolder,
1807 1811 ftp_wei, exp_code, sub_exp_code, plot_pos,
1808 1812 localfolder=localfolder)
1809 1813 else:
1810 1814 self.removeFTPProcUnitView()
1811 1815
1812 1816 # if something happend
1813 1817 parms_ok, output_path, blocksperfile, profilesperblock = self.checkInputsPUSave(datatype='Spectra')
1814 1818 if parms_ok:
1815 1819 name_operation = 'SpectraWriter'
1816 1820 optype = 'other'
1817 1821 name_parameter1 = 'path'
1818 1822 name_parameter2 = 'blocksPerFile'
1819 1823 name_parameter3 = 'profilesPerBlock'
1820 1824 value1 = output_path
1821 1825 value2 = blocksperfile
1822 1826 value3 = profilesperblock
1823 1827 format = "int"
1824 1828
1825 1829 opObj = puObj.addOperation(name=name_operation, optype=optype)
1826 1830 opObj.addParameter(name=name_parameter1, value=value1)
1827 1831 opObj.addParameter(name=name_parameter2, value=value2, format=format)
1828 1832 opObj.addParameter(name=name_parameter3, value=value3, format=format)
1829 1833
1830 1834 self.showPUSpectraProperties(puObj)
1831 1835
1832 1836 self.console.clear()
1833 1837 self.console.append("If you want to save your project")
1834 1838 self.console.append("click on your project name in the Tree Project Explorer")
1835 1839
1836 1840 self.actionSaveToolbar.setEnabled(True)
1837 1841 self.actionStarToolbar.setEnabled(True)
1838 1842
1839 1843 return 1
1840 1844
1841 1845 """
1842 1846 Spectra Graph
1843 1847 """
1844 1848 @pyqtSignature("int")
1845 1849 def on_specGraphCebSpectraplot_stateChanged(self, p0):
1846 1850
1847 1851 if p0 == 2:
1848 1852 self.specGgraphChannelList.setEnabled(True)
1849 1853 self.specGgraphFreq.setEnabled(True)
1850 1854 self.specGgraphHeight.setEnabled(True)
1851 1855 self.specGgraphDbsrange.setEnabled(True)
1852 1856 if p0 == 0:
1853 1857 self.specGgraphFreq.setEnabled(False)
1854 1858 self.specGgraphHeight.setEnabled(False)
1855 1859 self.specGgraphDbsrange.setEnabled(False)
1856 1860
1857 1861
1858 1862 @pyqtSignature("int")
1859 1863 def on_specGraphCebCrossSpectraplot_stateChanged(self, p0):
1860 1864
1861 1865 if p0 == 2:
1862 1866 self.specGgraphFreq.setEnabled(True)
1863 1867 self.specGgraphHeight.setEnabled(True)
1864 1868 self.specGgraphDbsrange.setEnabled(True)
1865 1869 if p0 == 0:
1866 1870 self.specGgraphFreq.setEnabled(False)
1867 1871 self.specGgraphHeight.setEnabled(False)
1868 1872 self.specGgraphDbsrange.setEnabled(False)
1869 1873
1870 1874 @pyqtSignature("int")
1871 1875 def on_specGraphCebRTIplot_stateChanged(self, p0):
1872 1876
1873 1877 if p0 == 2:
1874 1878 self.specGgraphChannelList.setEnabled(True)
1875 1879 self.specGgraphTminTmax.setEnabled(True)
1876 1880 self.specGgraphHeight.setEnabled(True)
1877 1881 self.specGgraphDbsrange.setEnabled(True)
1878 1882 self.specGgraphTimeRange.setEnabled(True)
1879 1883
1880 1884 if p0 == 0:
1881 1885 self.specGgraphTminTmax.setEnabled(False)
1882 1886 self.specGgraphHeight.setEnabled(False)
1883 1887 self.specGgraphDbsrange.setEnabled(False)
1884 1888 self.specGgraphTimeRange.setEnabled(False)
1885 1889
1886 1890
1887 1891 @pyqtSignature("int")
1888 1892 def on_specGraphCebRTInoise_stateChanged(self, p0):
1889 1893 if p0 == 2:
1890 1894 self.specGgraphChannelList.setEnabled(True)
1891 1895 self.specGgraphTminTmax.setEnabled(True)
1892 1896 self.specGgraphDbsrange.setEnabled(True)
1893 1897 self.specGgraphTimeRange.setEnabled(True)
1894 1898
1895 1899 if p0 == 0:
1896 1900 self.specGgraphTminTmax.setEnabled(False)
1897 1901 self.specGgraphDbsrange.setEnabled(False)
1898 1902 self.specGgraphTimeRange.setEnabled(False)
1899 1903
1900 1904
1901 1905
1902 1906
1903 1907 @pyqtSignature("int")
1904 1908 def on_specGraphCebCoherencmap_stateChanged(self, p0):
1905 1909
1906 1910 if p0 == 2:
1907 1911 self.specGgraphTminTmax.setEnabled(True)
1908 1912 self.specGgraphHeight.setEnabled(True)
1909 1913 self.specGgraphmagnitud.setEnabled(True)
1910 1914 self.specGgraphTimeRange.setEnabled(True)
1911 1915
1912 1916 if p0 == 0:
1913 1917 self.specGgraphTminTmax.setEnabled(False)
1914 1918 self.specGgraphHeight.setEnabled(False)
1915 1919 self.specGgraphmagnitud.setEnabled(False)
1916 1920 self.specGgraphTimeRange.setEnabled(False)
1917 1921
1918 1922
1919 1923
1920 1924
1921 1925 @pyqtSignature("int")
1922 1926 def on_specGraphPowerprofile_stateChanged(self, p0):
1923 1927
1924 1928 if p0 == 2:
1925 1929
1926 1930 self.specGgraphHeight.setEnabled(True)
1927 1931 self.specGgraphDbsrange.setEnabled(True)
1928 1932 if p0 == 0:
1929 1933 self.specGgraphHeight.setEnabled(False)
1930 1934 self.specGgraphDbsrange.setEnabled(False)
1931 1935
1932 1936 @pyqtSignature("int")
1933 1937 def on_specGraphPhase_stateChanged(self, p0):
1934 1938
1935 1939 if p0 == 2:
1936 1940 self.specGgraphTminTmax.setEnabled(True)
1937 1941 self.specGgraphPhaserange.setEnabled(True)
1938 1942
1939 1943 if p0 == 0:
1940 1944 self.specGgraphTminTmax.setEnabled(False)
1941 1945 self.specGgraphPhaserange.setEnabled(False)
1942 1946
1943 1947 @pyqtSignature("int")
1944 1948 def on_specGraphSaveSpectra_stateChanged(self, p0):
1945 1949 """
1946 1950 """
1947 1951 if p0 == 2:
1948 1952 self.specGraphPath.setEnabled(True)
1949 1953 self.specGraphPrefix.setEnabled(True)
1950 1954 self.specGraphToolPath.setEnabled(True)
1951 1955 if p0 == 0:
1952 1956 self.specGraphPath.setEnabled(False)
1953 1957 self.specGraphPrefix.setEnabled(False)
1954 1958 self.specGraphToolPath.setEnabled(False)
1955 1959
1956 1960
1957 1961 @pyqtSignature("int")
1958 1962 def on_specGraphSaveCross_stateChanged(self, p0):
1959 1963 if p0 == 2:
1960 1964 self.specGraphPath.setEnabled(True)
1961 1965 self.specGraphPrefix.setEnabled(True)
1962 1966 self.specGraphToolPath.setEnabled(True)
1963 1967
1964 1968 @pyqtSignature("int")
1965 1969 def on_specGraphSaveRTIplot_stateChanged(self, p0):
1966 1970 if p0 == 2:
1967 1971 self.specGraphPath.setEnabled(True)
1968 1972 self.specGraphPrefix.setEnabled(True)
1969 1973 self.specGraphToolPath.setEnabled(True)
1970 1974
1971 1975 @pyqtSignature("int")
1972 1976 def on_specGraphSaveRTInoise_stateChanged(self, p0):
1973 1977 if p0 == 2:
1974 1978 self.specGraphPath.setEnabled(True)
1975 1979 self.specGraphPrefix.setEnabled(True)
1976 1980 self.specGraphToolPath.setEnabled(True)
1977 1981
1978 1982 @pyqtSignature("int")
1979 1983 def on_specGraphSaveCoherencemap_stateChanged(self, p0):
1980 1984 if p0 == 2:
1981 1985 self.specGraphPath.setEnabled(True)
1982 1986 self.specGraphPrefix.setEnabled(True)
1983 1987 self.specGraphToolPath.setEnabled(True)
1984 1988
1985 1989
1986 1990 @pyqtSignature("int")
1987 1991 def on_specGraphSavePowerprofile_stateChanged(self, p0):
1988 1992 if p0 == 2:
1989 1993 self.specGraphPath.setEnabled(True)
1990 1994 self.specGraphPrefix.setEnabled(True)
1991 1995 self.specGraphToolPath.setEnabled(True)
1992 1996
1993 1997
1994 1998 #-------ftp-----#
1995 1999 @pyqtSignature("int")
1996 2000 def on_specGraphftpSpectra_stateChanged(self, p0):
1997 2001 """
1998 2002 """
1999 2003 if p0 == 2:
2000 2004 self.specGgraphftpratio.setEnabled(True)
2001 2005
2002 2006 if p0 == 0:
2003 2007 self.specGgraphftpratio.setEnabled(False)
2004 2008
2005 2009
2006 2010 @pyqtSignature("int")
2007 2011 def on_specGraphftpCross_stateChanged(self, p0):
2008 2012 if p0 == 2:
2009 2013 self.specGgraphftpratio.setEnabled(True)
2010 2014
2011 2015 @pyqtSignature("int")
2012 2016 def on_specGraphftpRTIplot_stateChanged(self, p0):
2013 2017 if p0 == 2:
2014 2018 self.specGgraphftpratio.setEnabled(True)
2015 2019
2016 2020 @pyqtSignature("int")
2017 2021 def on_specGraphftpRTInoise_stateChanged(self, p0):
2018 2022 if p0 == 2:
2019 2023 self.specGgraphftpratio.setEnabled(True)
2020 2024
2021 2025 @pyqtSignature("int")
2022 2026 def on_specGraphftpCoherencemap_stateChanged(self, p0):
2023 2027 if p0 == 2:
2024 2028 self.specGgraphftpratio.setEnabled(True)
2025 2029
2026 2030 @pyqtSignature("int")
2027 2031 def on_specGraphftpPowerprofile_stateChanged(self, p0):
2028 2032 if p0 == 2:
2029 2033 self.specGgraphftpratio.setEnabled(True)
2030 2034
2031 2035 #-------------------#
2032 2036
2033 2037
2034 2038
2035 2039 @pyqtSignature("")
2036 2040 def on_specGraphToolPath_clicked(self):
2037 2041 """
2038 2042 """
2039 2043 self.savePath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
2040 2044 self.specGraphPath.setText(self.savePath)
2041 2045 if not os.path.exists(self.savePath):
2042 2046 self.console.clear()
2043 2047 self.console.append("Write a correct a path")
2044 2048 return
2045 2049
2046 2050 @pyqtSignature("")
2047 2051 def on_specHeisGraphToolPath_clicked(self):
2048 2052 """
2049 2053 """
2050 2054 self.savePath = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
2051 2055 self.specHeisGraphPath.setText(self.savePath)
2052 2056 if not os.path.exists(self.savePath):
2053 2057 self.console.clear()
2054 2058 self.console.append("Write a correct a path")
2055 2059 return
2056 2060
2057 2061 @pyqtSignature("")
2058 2062 def on_specGraphClear_clicked(self):
2059 2063 self.clearspecGraph()
2060 2064
2061 2065 @pyqtSignature("int")
2062 2066 def on_specHeisOpCebIncoherent_stateChanged(self, p0):
2063 2067 """
2064 2068 Habilita la opcion de aοΏ½adir el parοΏ½metro integraciones incoherentes a la Unidad de Procesamiento .
2065 2069 """
2066 2070 if p0 == 2:
2067 2071 self.specHeisOpIncoherent.setEnabled(True)
2068 2072 self.specHeisOpCobIncInt.setEnabled(True)
2069 2073 if p0 == 0:
2070 2074 self.specHeisOpIncoherent.setEnabled(False)
2071 2075 self.specHeisOpCobIncInt.setEnabled(False)
2072 2076
2073 2077 @pyqtSignature("")
2074 2078 def on_specHeisOpOk_clicked(self):
2075 2079 """
2076 2080 AΓ‘ADE OPERACION SPECTRAHEIS
2077 2081 """
2078 2082 addFTP = False
2079 2083 checkPath = False
2080 2084
2081 2085 self.actionSaveToolbar.setEnabled(False)
2082 2086 self.actionStarToolbar.setEnabled(False)
2083 2087
2084 2088 puObj = self.getSelectedPUObj()
2085 2089 puObj.removeOperations()
2086 2090
2087 2091 if self.specHeisOpCebIncoherent.isChecked():
2088 2092 value = self.specHeisOpIncoherent.text()
2089 2093 name_operation = 'IncohInt4SpectraHeis'
2090 2094 optype = 'other'
2091 2095 if self.specOpCobIncInt.currentIndex() == 0:
2092 2096 name_parameter = 'timeInterval'
2093 2097 format = 'float'
2094 2098 opObj = puObj.addOperation(name=name_operation, optype=optype)
2095 2099 opObj.addParameter(name=name_parameter, value=value, format=format)
2096 2100
2097 2101 # ---- Spectra Plot-----
2098 2102 if self.specHeisGraphCebSpectraplot.isChecked():
2099 2103 name_operation = 'SpectraHeisScope'
2100 2104 optype = 'other'
2101 2105 name_parameter = 'type'
2102 2106 value = 'SpectraHeisScope'
2103 2107 format = 'str'
2104 2108 if self.idImagspectraHeis == 0:
2105 2109 self.idImagspectraHeis = 800
2106 2110 else:
2107 2111 self.idImagspectraHeis = self.idImagspectraHeis + 1
2108 2112 name_parameter1 = 'id'
2109 2113 value1 = int(self.idImagspectraHeis)
2110 2114 format1 = 'int'
2111 2115
2112 2116 format = 'str'
2113 2117
2114 2118 channelList = self.specHeisGgraphChannelList.text()
2115 2119 xvalue = self.specHeisGgraphXminXmax.text()
2116 2120 yvalue = self.specHeisGgraphYminYmax.text()
2117 2121 opObj = puObj.addOperation(name=name_operation, optype=optype)
2118 2122 # opObj.addParameter(name=name_parameter, value=value, format=format)
2119 2123 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
2120 2124
2121 2125 if not channelList == '':
2122 2126 name_parameter = 'channelList'
2123 2127 format = 'intlist'
2124 2128 opObj.addParameter(name=name_parameter, value=channelList, format=format)
2125 2129
2126 2130 if not xvalue == '':
2127 2131 xvalueList = xvalue.split(',')
2128 2132 try:
2129 2133 value1 = float(xvalueList[0])
2130 2134 value2 = float(xvalueList[1])
2131 2135 except:
2132 2136 self.console.clear()
2133 2137 self.console.append("Please Write corrects parameter xmin-xmax")
2134 2138 return 0
2135 2139 name1 = 'xmin'
2136 2140 name2 = 'xmax'
2137 2141 format = 'float'
2138 2142 opObj.addParameter(name=name1, value=value1, format=format)
2139 2143 opObj.addParameter(name=name2, value=value2, format=format)
2140 2144 #------specHeisGgraphYmin-Ymax---
2141 2145 if not yvalue == '':
2142 2146 yvalueList = yvalue.split(",")
2143 2147 try:
2144 2148 value1 = float(yvalueList[0])
2145 2149 value2 = float(yvalueList[1])
2146 2150 except:
2147 2151 self.console.clear()
2148 2152 self.console.append("Please Write corrects parameter Ymix-Ymax")
2149 2153 return 0
2150 2154 name1 = 'ymin'
2151 2155 name2 = 'ymax'
2152 2156 format = 'float'
2153 2157 opObj.addParameter(name=name1, value=value1, format=format)
2154 2158 opObj.addParameter(name=name2, value=value2, format=format)
2155 2159
2156 2160 if self.specHeisGraphSaveSpectra.isChecked():
2157 2161 checkPath = True
2158 2162 name_parameter1 = 'save'
2159 2163 name_parameter2 = 'figpath'
2160 2164 name_parameter3 = 'figfile'
2161 2165 value1 = '1'
2162 2166 value2 = self.specHeisGraphPath.text()
2163 2167 value3 = self.specHeisGraphPrefix.text()
2164 2168 format1 = 'bool'
2165 2169 format2 = 'str'
2166 2170 opObj.addParameter(name=name_parameter1, value=value1 , format=format1)
2167 2171 opObj.addParameter(name=name_parameter2, value=value2, format=format2)
2168 2172 if not value3 == "":
2169 2173 try:
2170 2174 value3 = str(self.specHeisGraphPrefix.text())
2171 2175 except:
2172 2176 self.console.clear()
2173 2177 self.console.append("Please Write prefix")
2174 2178 return 0
2175 2179 opObj.addParameter(name='figfile', value=self.specHeisGraphPrefix.text(), format='str')
2176 2180
2177 2181 # opObj.addParameter(name=name_parameter3, value=value3, format=format2)
2178 2182 # opObj.addParameter(name='wr_period', value='5',format='int')
2179 2183
2180 2184 if self.specHeisGraphftpSpectra.isChecked():
2181 2185 opObj.addParameter(name='ftp', value='1', format='int')
2182 2186 self.addFTPConf2Operation(puObj, opObj)
2183 2187 addFTP = True
2184 2188
2185 2189 if self.specHeisGraphCebRTIplot.isChecked():
2186 2190 name_operation = 'RTIfromSpectraHeis'
2187 2191 optype = 'other'
2188 2192 name_parameter = 'type'
2189 2193 value = 'RTIfromSpectraHeis'
2190 2194 format = 'str'
2191 2195
2192 2196 if self.idImagrtiHeis == 0:
2193 2197 self.idImagrtiHeis = 900
2194 2198 else:
2195 2199 self.idImagrtiHeis = self.idImagrtiHeis + 1
2196 2200
2197 2201 name_parameter1 = 'id'
2198 2202 value1 = int(self.idImagrtiHeis)
2199 2203 format1 = 'int'
2200 2204
2201 2205 format = 'str'
2202 2206
2203 2207 opObj = puObj.addOperation(name=name_operation, optype=optype)
2204 2208 # opObj.addParameter(name=name_parameter, value=value, format=format)
2205 2209 opObj.addParameter(name=name_parameter1, value=value1, format=format1)
2206 2210
2207 2211 channelList = self.specHeisGgraphChannelList.text()
2208 2212 xvalue = self.specHeisGgraphTminTmax.text()
2209 2213 yvalue = self.specHeisGgraphYminYmax.text()
2210 2214 timerange = self.specHeisGgraphTimeRange.text()
2211 2215
2212 2216 if not channelList == '':
2213 2217 opObj.addParameter(name='channelList', value=channelList, format='intlist')
2214 2218
2215 2219 if not xvalue == '':
2216 2220 xvalueList = xvalue.split(',')
2217 2221 try:
2218 2222 value = float(xvalueList[0])
2219 2223 value = float(xvalueList[1])
2220 2224 except:
2221 2225 return 0
2222 2226 format = 'float'
2223 2227 opObj.addParameter(name='xmin', value=xvalueList[0], format=format)
2224 2228 opObj.addParameter(name='xmax', value=xvalueList[1], format=format)
2225 2229
2226 2230 if not timerange == '':
2227 2231 format = 'int'
2228 2232 try:
2229 2233 timerange = int(timerange)
2230 2234 except:
2231 2235 return 0
2232 2236 opObj.addParameter(name='timerange', value=timerange, format=format)
2233 2237
2234 2238
2235 2239 if not yvalue == '':
2236 2240 yvalueList = yvalue.split(",")
2237 2241 try:
2238 2242 value = float(yvalueList[0])
2239 2243 value = float(yvalueList[1])
2240 2244 except:
2241 2245 return 0
2242 2246 format = 'float'
2243 2247 opObj.addParameter(name='ymin', value=yvalueList[0], format=format)
2244 2248 opObj.addParameter(name='ymax', value=yvalueList[1], format=format)
2245 2249
2246 2250 if self.specHeisGraphSaveRTIplot.isChecked():
2247 2251 checkPath = True
2248 2252 opObj.addParameter(name='save', value='1', format='bool')
2249 2253 opObj.addParameter(name='figpath', value=self.specHeisGraphPath.text(), format='str')
2250 2254 value = self.specHeisGraphPrefix.text()
2251 2255 if not value == "":
2252 2256 try:
2253 2257 value = str(self.specHeisGraphPrefix.text())
2254 2258 except:
2255 2259 self.console.clear()
2256 2260 self.console.append("Please Write prefix")
2257 2261 return 0
2258 2262 opObj.addParameter(name='figfile', value=value, format='str')
2259 2263
2260 2264 # test_ftp
2261 2265 if self.specHeisGraphftpRTIplot.isChecked():
2262 2266 opObj.addParameter(name='ftp', value='1', format='int')
2263 2267 self.addFTPConf2Operation(puObj, opObj)
2264 2268 addFTP = True
2265 2269
2266 2270 localfolder = None
2267 2271 if checkPath:
2268 2272 localfolder = str(self.specGraphPath.text())
2269 2273 if localfolder == '':
2270 2274 self.console.clear()
2271 2275 self.console.append("Graphic path should be defined")
2272 2276 return 0
2273 2277
2274 2278 if addFTP:
2275 2279 if not localfolder:
2276 2280 self.console.clear()
2277 2281 self.console.append("You have to save the plots before sending them to FTP Server")
2278 2282 return 0
2279 2283
2280 2284 if not self.temporalFTP.create:
2281 2285 self.temporalFTP.setwithoutconfiguration()
2282 2286
2283 2287 server, remotefolder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.temporalFTP.recover()
2284 2288 self.createFTPProcUnitView(server, username, password, remotefolder,
2285 2289 ftp_wei, exp_code, sub_exp_code, plot_pos,
2286 2290 localfolder=localfolder)
2287 2291 else:
2288 2292 self.removeFTPProcUnitView()
2289 2293
2290 2294 # if something happened
2291 2295 parms_ok, output_path, blocksperfile, metada = self.checkInputsPUSave(datatype='SpectraHeis')
2292 2296 if parms_ok:
2293 2297 name_operation = 'FitsWriter'
2294 2298 optype = 'other'
2295 2299 name_parameter1 = 'path'
2296 2300 name_parameter2 = 'dataBlocksPerFile'
2297 2301 name_parameter3 = 'metadatafile'
2298 2302 value1 = output_path
2299 2303 value2 = blocksperfile
2300 2304 value3 = metada
2301 2305 format2 = "int"
2302 2306 format3 = "str"
2303 2307 opObj = puObj.addOperation(name=name_operation, optype=optype)
2304 2308 opObj.addParameter(name=name_parameter1, value=value1)
2305 2309 opObj.addParameter(name=name_parameter2, value=value2, format=format2)
2306 2310 opObj.addParameter(name=name_parameter3, value=value3, format=format3)
2307 2311
2308 2312 self.showPUSpectraHeisProperties(puObj)
2309 2313
2310 2314 self.console.clear()
2311 2315 self.console.append("Click on save icon ff you want to save your project")
2312 2316
2313 2317 self.actionSaveToolbar.setEnabled(True)
2314 2318 self.actionStarToolbar.setEnabled(True)
2315 2319
2316 2320 return 1
2317 2321 @pyqtSignature("int")
2318 2322 def on_specHeisGraphCebSpectraplot_stateChanged(self, p0):
2319 2323
2320 2324 if p0 == 2:
2321 2325 self.specHeisGgraphChannelList.setEnabled(True)
2322 2326 self.specHeisGgraphXminXmax.setEnabled(True)
2323 2327 self.specHeisGgraphYminYmax.setEnabled(True)
2324 2328 if p0 == 0:
2325 2329 self.specHeisGgraphXminXmax.setEnabled(False)
2326 2330 self.specHeisGgraphYminYmax.setEnabled(False)
2327 2331
2328 2332 @pyqtSignature("int")
2329 2333 def on_specHeisGraphCebRTIplot_stateChanged(self, p0):
2330 2334
2331 2335 if p0 == 2:
2332 2336 self.specHeisGgraphChannelList.setEnabled(True)
2333 2337 self.specHeisGgraphTminTmax.setEnabled(True)
2334 2338 self.specHeisGgraphYminYmax.setEnabled(True)
2335 2339 self.specHeisGgraphTimeRange.setEnabled(True)
2336 2340
2337 2341 if p0 == 0:
2338 2342 self.specHeisGgraphTminTmax.setEnabled(False)
2339 2343 self.specHeisGgraphYminYmax.setEnabled(False)
2340 2344 self.specHeisGgraphTimeRange.setEnabled(False)
2341 2345
2342 2346 @pyqtSignature("int")
2343 2347 def on_specHeisGraphSaveSpectra_stateChanged(self, p0):
2344 2348 """
2345 2349 """
2346 2350 if p0 == 2:
2347 2351 self.specHeisGraphPath.setEnabled(True)
2348 2352 self.specHeisGraphPrefix.setEnabled(True)
2349 2353 self.specHeisGraphToolPath.setEnabled(True)
2350 2354 if p0 == 0:
2351 2355 self.specHeisGraphPath.setEnabled(False)
2352 2356 self.specHeisGraphPrefix.setEnabled(False)
2353 2357 self.specHeisGraphToolPath.setEnabled(False)
2354 2358
2355 2359 @pyqtSignature("int")
2356 2360 def on_specHeisGraphSaveRTIplot_stateChanged(self, p0):
2357 2361 if p0 == 2:
2358 2362 self.specHeisGraphPath.setEnabled(True)
2359 2363 self.specHeisGraphPrefix.setEnabled(True)
2360 2364 self.specHeisGraphToolPath.setEnabled(True)
2361 2365
2362 2366 #-------ftp-----#
2363 2367 @pyqtSignature("int")
2364 2368 def on_specHeisGraphftpSpectra_stateChanged(self, p0):
2365 2369 """
2366 2370 """
2367 2371 if p0 == 2:
2368 2372 self.specHeisGgraphftpratio.setEnabled(True)
2369 2373
2370 2374 if p0 == 0:
2371 2375 self.specHeisGgraphftpratio.setEnabled(False)
2372 2376
2373 2377 @pyqtSignature("int")
2374 2378 def on_specHeisGraphftpRTIplot_stateChanged(self, p0):
2375 2379 if p0 == 2:
2376 2380 self.specHeisGgraphftpratio.setEnabled(True)
2377 2381
2378 2382 @pyqtSignature("")
2379 2383 def on_specHeisGraphClear_clicked(self):
2380 2384 pass
2381 2385
2382 2386 def on_click(self, index):
2383 2387
2384 2388 self.selectedItemTree = self.projectExplorerModel.itemFromIndex(index)
2385 2389 if self.getSelectedProjectObj():
2386 2390 projectObjView = self.getSelectedProjectObj()
2387 2391 project_name, description = projectObjView.name, projectObjView.description
2388 2392 id = int(projectObjView.id)
2389 2393 idReadUnit = projectObjView.getReadUnitId()
2390 2394 readUnitObj = projectObjView.getProcUnitObj(idReadUnit)
2391 2395 datatype, data_path, startDate, endDate, startTime, endTime , online , delay, walk , set = self.showProjectProperties(projectObjView)
2392 2396 # show ProjectView
2393 2397 self.refreshProjectWindow(project_name, description, datatype, data_path, startDate, endDate, startTime, endTime, online, delay, set)
2394 2398 if datatype == 'Voltage':
2395 2399 ext = '.r'
2396 2400 elif datatype == 'Spectra':
2397 2401 ext = '.pdata'
2398 2402 elif datatype == 'Fits':
2399 2403 ext = '.fits'
2400 2404 if online == 0:
2401 2405 self.proComStartDate.clear()
2402 2406 self.proComEndDate.clear()
2403 2407 self.loadDays(data_path, ext, walk)
2404 2408 self.tabProject.setEnabled(True)
2405 2409 self.tabVoltage.setEnabled(False)
2406 2410 self.tabSpectra.setEnabled(False)
2407 2411 self.tabCorrelation.setEnabled(False)
2408 2412 self.tabSpectraHeis.setEnabled(False)
2409 2413 self.tabWidgetProject.setCurrentWidget(self.tabProject)
2410 2414
2411 2415 if self.selectedItemTree.text() == 'Voltage':
2412 2416 datatype = 'Voltage'
2413 2417 puObj = self.getSelectedPUObj()
2414 2418 self.showtabPUCreated(datatype=datatype)
2415 2419 if len(puObj.getOperationObjList()) == 1:
2416 2420 self.setInputsPU_View(datatype)
2417 2421 else:
2418 2422 self.refreshPUWindow(datatype=datatype, puObj=puObj)
2419 2423 self.showPUVoltageProperties(puObj)
2420 2424
2421 2425 if self.selectedItemTree.text() == 'Spectra':
2422 2426
2423 2427 datatype = 'Spectra'
2424 2428 puObj = self.getSelectedPUObj()
2425 2429 self.showtabPUCreated(datatype=datatype)
2426 2430 if readUnitObj.datatype == 'Spectra':
2427 2431 self.specOpnFFTpoints.setEnabled(False)
2428 2432 self.specOpProfiles.setEnabled(False)
2429 2433 self.specOpippFactor.setEnabled(False)
2430 2434
2431 2435 else:
2432 2436 self.specOpnFFTpoints.setEnabled(True)
2433 2437 self.specOpProfiles.setEnabled(True)
2434 2438 self.specOpippFactor.setEnabled(True)
2435 2439
2436 2440 if len(puObj.getOperationObjList()) == 1:
2437 2441 self.setInputsPU_View(datatype)
2438 2442
2439 2443 opObj = puObj.getOperationObj(name="run")
2440 2444 if opObj == None:
2441 2445 self.specOpnFFTpoints.clear()
2442 2446 self.specOpProfiles.clear()
2443 2447 self.specOpippFactor.clear()
2444 2448 else:
2445 2449 parmObj = opObj.getParameterObj(parameterName='nFFTPoints')
2446 2450 if parmObj == None:
2447 2451 self.specOpnFFTpoints.clear()
2448 2452 else:
2449 2453 value = opObj.getParameterValue(parameterName='nFFTPoints')
2450 2454 self.specOpnFFTpoints.setText(str(value))
2451 2455
2452 2456 parmObj = opObj.getParameterObj(parameterName='nProfiles')
2453 2457 if parmObj == None:
2454 2458 self.specOpProfiles.clear()
2455 2459 else:
2456 2460 value = opObj.getParameterValue(parameterName='nProfiles')
2457 2461 self.specOpProfiles.setText(str(value))
2458 2462
2459 2463 parmObj = opObj.getParameterObj(parameterName="ippFactor")
2460 2464 if parmObj == None:
2461 2465 self.specOpippFactor.clear()
2462 2466 else:
2463 2467 value = opObj.getParameterValue(parameterName='ippFactor')
2464 2468 self.specOpippFactor.setText(str(value))
2465 2469
2466 2470 opObj = puObj.getOperationObj(name="run")
2467 2471 if opObj == None:
2468 2472 self.specOppairsList.clear()
2469 2473 self.specOpCebCrossSpectra.setCheckState(0)
2470 2474 else:
2471 2475 parmObj = opObj.getParameterObj(parameterName='pairsList')
2472 2476 if parmObj == None:
2473 2477 self.specOppairsList.clear()
2474 2478 self.specOpCebCrossSpectra.setCheckState(0)
2475 2479 else:
2476 2480 value = opObj.getParameterValue(parameterName='pairsList')
2477 2481 value = str(value)[1:-1]
2478 2482 self.specOppairsList.setText(str(value))
2479 2483 self.specOppairsList.setEnabled(True)
2480 2484 self.specOpCebCrossSpectra.setCheckState(QtCore.Qt.Checked)
2481 2485
2482 2486 else:
2483 2487 self.refreshPUWindow(datatype=datatype, puObj=puObj)
2484 2488 self.showPUSpectraProperties(puObj)
2485 2489
2486 2490 if self.selectedItemTree.text() == 'Correlation':
2487 2491 self.tabCorrelation.setEnabled(True)
2488 2492 self.tabVoltage.setEnabled(False)
2489 2493 self.tabSpectra.setEnabled(False)
2490 2494 self.tabWidgetProject.setCurrentWidget(self.tabCorrelation)
2491 2495
2492 2496 if self.selectedItemTree.text() == 'SpectraHeis':
2493 2497 datatype = 'SpectraHeis'
2494 2498 puObj = self.getSelectedPUObj()
2495 2499 self.showtabPUCreated(datatype=datatype)
2496 2500 if len(puObj.getOperationObjList()) == 1:
2497 2501 self.setInputsPU_View(datatype)
2498 2502 else:
2499 2503 self.refreshPUWindow(datatype=datatype, puObj=puObj)
2500 2504 self.showPUSpectraHeisProperties(puObj)
2501 2505
2502 2506
2503 2507 def on_right_click(self, pos):
2504 2508
2505 2509 self.menu = QtGui.QMenu()
2506 2510 quitAction0 = self.menu.addAction("NewProject")
2507 2511 quitAction1 = self.menu.addAction("NewProcessingUnit")
2508 2512 quitAction2 = self.menu.addAction("Delete")
2509 2513 quitAction3 = self.menu.addAction("Exit")
2510 2514
2511 2515 if len(self.__itemTreeDict) == 0:
2512 2516 quitAction2.setEnabled(False)
2513 2517 else:
2514 2518 quitAction2.setEnabled(True)
2515 2519
2516 2520 action = self.menu.exec_(self.mapToGlobal(pos))
2517 2521
2518 2522 if action == quitAction0:
2519 2523 self. setInputsProject_View()
2520 2524 self.create = True
2521 2525
2522 2526 if action == quitAction1:
2523 2527 if len(self.__projectObjDict) == 0:
2524 2528 outputstr = "First Create a Project then add Processing Unit"
2525 2529 self.console.clear()
2526 2530 self.console.append(outputstr)
2527 2531 return 0
2528 2532 else:
2529 2533 self.addPUWindow()
2530 2534 self.console.clear()
2531 2535 self.console.append("Please, Choose the type of Processing Unit")
2532 2536 self.console.append("If your Datatype is rawdata, you will start with processing unit Type Voltage")
2533 2537 self.console.append("If your Datatype is pdata, you will choose between processing unit Type Spectra or Correlation")
2534 2538 self.console.append("If your Datatype is fits, you will start with processing unit Type SpectraHeis")
2535 2539
2536 2540 if action == quitAction2:
2537 2541 index = self.selectedItemTree
2538 2542 try:
2539 2543 index.parent()
2540 2544 except:
2541 2545 self.console.append('First left click on Project or Processing Unit')
2542 2546 return 0
2543 2547 # print index.parent(),index
2544 2548 if index.parent() == None:
2545 2549 self.projectExplorerModel.removeRow(index.row())
2546 2550 else:
2547 2551 index.parent().removeRow(index.row())
2548 2552 self.deleteProjectorPU()
2549 2553 self.console.clear()
2550 2554 # for i in self.projectExplorerTree.selectionModel().selection().indexes():
2551 2555 # print i.row()
2552 2556
2553 2557 if action == quitAction3:
2554 2558 return
2555 2559
2556 2560 def refreshProjectWindow(self, project_name, description, datatype, data_path, startDate, endDate, startTime, endTime, online, delay, set):
2557 2561
2558 2562 self.proName.setText(str(project_name))
2559 2563
2560 2564 if datatype == 'Voltage':
2561 2565 ext = '.r'
2562 2566 value = 0
2563 2567 elif datatype == 'Spectra':
2564 2568 ext = '.pdata'
2565 2569 value = 1
2566 2570 elif datatype == 'Fits':
2567 2571 ext = 'fits'
2568 2572 value = 2
2569 2573 self.proDataType.setText(ext)
2570 2574 self.proDataPath.setText(str(data_path))
2571 2575 self.proComDataType.setCurrentIndex(value)
2572 2576 self.proComReadMode.setCurrentIndex(int(online))
2573 2577 self.proDelay.setText(str(delay))
2574 2578 self.proSet.setText(str(set))
2575 2579 self.proComStartDate.clear()
2576 2580 self.proComEndDate.clear()
2577 2581 self.proComStartDate.addItem(str(startDate))
2578 2582 self.proComEndDate.addItem(str(endDate))
2579 2583 starTime = str(startTime)
2580 2584 starlist = starTime.split(":")
2581 2585 endTime = str(endTime)
2582 2586 endlist = endTime.split(":")
2583 2587 self.time.setHMS(int(starlist[0]), int(starlist[1]), int(starlist[2]))
2584 2588 self.proStartTime.setTime(self.time)
2585 2589 self.time.setHMS(int(endlist[0]), int(endlist[1]), int(endlist[2]))
2586 2590 self.proEndTime.setTime(self.time)
2587 2591 self.proDescription.clear()
2588 2592 self.proDescription.append(description)
2589 2593
2590 2594 def refreshPUWindow(self, datatype, puObj):
2591 2595
2592 2596 if datatype == 'Voltage':
2593 2597 opObj = puObj.getOperationObj(name='setRadarFrequency')
2594 2598 if opObj == None:
2595 2599 self.volOpRadarfrequency.clear()
2596 2600 self.volOpCebRadarfrequency.setCheckState(0)
2597 2601 else:
2598 2602 value = opObj.getParameterValue(parameterName='frequency')
2599 2603 value = str(value)
2600 2604 self.volOpRadarfrequency.setText(value)
2601 2605 self.volOpRadarfrequency.setEnabled(True)
2602 2606 self.volOpCebRadarfrequency.setCheckState(QtCore.Qt.Checked)
2603 2607
2604 2608
2605 2609 opObj = puObj.getOperationObj(name="selectChannels")
2606 2610 if opObj == None:
2607 2611 self.volOpChannel.clear()
2608 2612 self.volOpCebChannels.setCheckState(0)
2609 2613
2610 2614 else:
2611 2615 value = opObj.getParameterValue(parameterName='channelList')
2612 2616 value = str(value)[1:-1]
2613 2617 self.volOpChannel.setText(value)
2614 2618 self.volOpChannel.setEnabled(True)
2615 2619 self.volOpCebChannels.setCheckState(QtCore.Qt.Checked)
2616 2620
2617 2621
2618 2622 opObj = puObj.getOperationObj(name="selectHeights")
2619 2623 if opObj == None:
2620 2624 self.volOpHeights.clear()
2621 2625 self.volOpCebHeights.setCheckState(0)
2622 2626 else:
2623 2627 value1 = int(opObj.getParameterValue(parameterName='minHei'))
2624 2628 value1 = str(value1)
2625 2629 value2 = int(opObj.getParameterValue(parameterName='maxHei'))
2626 2630 value2 = str(value2)
2627 2631 value = value1 + "," + value2
2628 2632 self.volOpHeights.setText(value)
2629 2633 self.volOpHeights.setEnabled(True)
2630 2634 self.volOpCebHeights.setCheckState(QtCore.Qt.Checked)
2631 2635
2632 2636 opObj = puObj.getOperationObj(name="filterByHeights")
2633 2637 if opObj == None:
2634 2638 self.volOpFilter.clear()
2635 2639 self.volOpCebFilter.setCheckState(0)
2636 2640 else:
2637 2641 value = opObj.getParameterValue(parameterName='window')
2638 2642 value = str(value)
2639 2643 self.volOpFilter.setText(value)
2640 2644 self.volOpFilter.setEnabled(True)
2641 2645 self.volOpCebFilter.setCheckState(QtCore.Qt.Checked)
2642 2646
2643 2647 opObj = puObj.getOperationObj(name="ProfileSelector")
2644 2648 if opObj == None:
2645 2649 self.volOpProfile.clear()
2646 2650 self.volOpCebProfile.setCheckState(0)
2647 2651 else:
2648 2652 for parmObj in opObj.getParameterObjList():
2649 2653 if parmObj.name == "profileRangeList":
2650 2654 value = opObj.getParameterValue(parameterName='profileRangeList')
2651 2655 value = str(value)[1:-1]
2652 2656 self.volOpProfile.setText(value)
2653 2657 self.volOpProfile.setEnabled(True)
2654 2658 self.volOpCebProfile.setCheckState(QtCore.Qt.Checked)
2655 2659 self.volOpComProfile.setCurrentIndex(1)
2656 2660 if parmObj.name == "profileList":
2657 2661 value = opObj.getParameterValue(parameterName='profileList')
2658 2662 value = str(value)[1:-1]
2659 2663 self.volOpProfile.setText(value)
2660 2664 self.volOpProfile.setEnabled(True)
2661 2665 self.volOpCebProfile.setCheckState(QtCore.Qt.Checked)
2662 2666 self.volOpComProfile.setCurrentIndex(0)
2663 2667
2664 2668
2665 2669 opObj = puObj.getOperationObj(name="Decoder")
2666 2670 if opObj == None:
2667 2671 self.volOpCebDecodification.setCheckState(0)
2668 2672 else:
2669 2673 try:
2670 2674 valueCode = opObj.getParameterValue(parameterName='nCode')
2671 2675 status = "on"
2672 2676 except:
2673 2677 status = "off"
2674 2678 if not status == "off":
2675 2679 if int(valueCode) == 1:
2676 2680 valueBaud = opObj.getParameterValue(parameterName='nBaud')
2677 2681 if int(valueBaud) == 3:
2678 2682 self.volOpComCode.setCurrentIndex(0)
2679 2683 if int(valueBaud) == 4:
2680 2684 self.volOpComCode.setCurrentIndex(1)
2681 2685 if int(valueBaud) == 5:
2682 2686 self.volOpComCode.setCurrentIndex(2)
2683 2687 if int(valueBaud) == 7:
2684 2688 self.volOpComCode.setCurrentIndex(3)
2685 2689 if int(valueBaud) == 11:
2686 2690 self.volOpComCode.setCurrentIndex(4)
2687 2691 if int(valueBaud) == 13:
2688 2692 self.volOpComCode.setCurrentIndex(5)
2689 2693 else:
2690 2694 valueBaud = opObj.getParameterValue(parameterName='nBaud')
2691 2695 if int(valueBaud) == 3:
2692 2696 self.volOpComCode.setCurrentIndex(6)
2693 2697 if int(valueBaud) == 4:
2694 2698 self.volOpComCode.setCurrentIndex(7)
2695 2699 if int(valueBaud) == 5:
2696 2700 self.volOpComCode.setCurrentIndex(8)
2697 2701 if int(valueBaud) == 7:
2698 2702 self.volOpComCode.setCurrentIndex(9)
2699 2703 if int(valueBaud) == 11:
2700 2704 self.volOpComCode.setCurrentIndex(10)
2701 2705 if int(valueBaud) == 13:
2702 2706 self.volOpComCode.setCurrentIndex(11)
2703 2707
2704 2708 for parmObj in opObj.getParameterObjList():
2705 2709 if parmObj.name == "nBaud":
2706 2710 value = opObj.getParameterValue(parameterName='nBaud')
2707 2711 if parmObj.name == "mode":
2708 2712 value = opObj.getParameterValue(parameterName='mode')
2709 2713 self.volOpComMode.setCurrentIndex(value)
2710 2714 else:
2711 2715 self.volOpComCode.setCurrentIndex(12)
2712 2716 self.volOpCebDecodification.setCheckState(QtCore.Qt.Checked)
2713 2717
2714 2718 opObj = puObj.getOperationObj(name="CohInt")
2715 2719 if opObj == None:
2716 2720 self.volOpCohInt.clear()
2717 2721 self.volOpCebCohInt.setCheckState(0)
2718 2722 else:
2719 2723 value = opObj.getParameterValue(parameterName='n')
2720 2724 self.volOpCohInt.setText(str(value))
2721 2725 self.volOpCohInt.setEnabled(True)
2722 2726 self.volOpCebCohInt.setCheckState(QtCore.Qt.Checked)
2723 2727
2724 2728 opObj = puObj.getOperationObj(name='Scope')
2725 2729 if opObj == None:
2726 2730 self.volGraphCebshow.setCheckState(0)
2727 2731 else:
2728 2732 self.volGraphCebshow.setCheckState(QtCore.Qt.Checked)
2729 2733 value = opObj.getParameterObj(parameterName='channelList')
2730 2734 if value == None:
2731 2735 self.volGraphChannelList.clear()
2732 2736 else:
2733 2737 value = opObj.getParameterValue(parameterName='channelList')
2734 2738 value = str(value)[1:-1]
2735 2739 self.volGraphChannelList.setText(value)
2736 2740 self.volOpProfile.setEnabled(True)
2737 2741
2738 2742 for parmObj in opObj.getParameterObjList():
2739 2743 if parmObj.name == "xmin":
2740 2744 value1 = opObj.getParameterValue(parameterName='xmin')
2741 2745 value1 = str(value1)
2742 2746 value2 = opObj.getParameterValue(parameterName='xmax')
2743 2747 value2 = str(value2)
2744 2748 value = value1 + "," + value2
2745 2749 self.volGraphfreqrange.setText(value)
2746 2750 else:
2747 2751 self.volGraphfreqrange.clear()
2748 2752 for parmObj in opObj.getParameterObjList():
2749 2753 if parmObj.name == "ymin":
2750 2754 value1 = opObj.getParameterValue(parameterName='ymin')
2751 2755 value1 = str(value1)
2752 2756 value2 = opObj.getParameterValue(parameterName='ymax')
2753 2757 value2 = str(value2)
2754 2758 value = value1 + "," + value2
2755 2759 value2 = str(value2)
2756 2760 self.volGraphHeightrange.setText(value)
2757 2761 else:
2758 2762 self.volGraphHeightrange.clear()
2759 2763
2760 2764
2761 2765 for parmObj in opObj.getParameterObjList():
2762 2766 if parmObj.name == "save":
2763 2767 self.volGraphCebSave.setCheckState(QtCore.Qt.Checked)
2764 2768 else:
2765 2769 self.volGraphCebSave.setCheckState(QtCore.Qt.Unchecked)
2766 2770
2767 2771 # outputVoltageWrite
2768 2772 opObj = puObj.getOperationObj(name='VoltageWriter')
2769 2773 if opObj == None:
2770 2774 self.volOutputPath.clear()
2771 2775 self.volOutputblocksperfile.clear()
2772 2776 self.volOutputprofilesperblock.clear()
2773 2777 else:
2774 2778 value = opObj.getParameterObj(parameterName='path')
2775 2779 if value == None:
2776 2780 self.volOutputPath.clear()
2777 2781 else:
2778 2782 value = opObj.getParameterValue(parameterName='path')
2779 2783 path = str(value)
2780 2784 self.volOutputPath.setText(path)
2781 2785 value = opObj.getParameterObj(parameterName='blocksPerFile')
2782 2786 if value == None:
2783 2787 self.volOutputblocksperfile.clear()
2784 2788 else:
2785 2789 value = opObj.getParameterValue(parameterName='blocksPerFile')
2786 2790 blocksperfile = str(value)
2787 2791 self.volOutputblocksperfile.setText(blocksperfile)
2788 2792 value = opObj.getParameterObj(parameterName='profilesPerBlock')
2789 2793 if value == None:
2790 2794 self.volOutputprofilesperblock.clear()
2791 2795 else:
2792 2796 value = opObj.getParameterValue(parameterName='profilesPerBlock')
2793 2797 profilesPerBlock = str(value)
2794 2798 self.volOutputprofilesperblock.setText(profilesPerBlock)
2795 2799
2796 2800 if datatype == 'Spectra':
2797 2801
2798 2802 opObj = puObj.getOperationObj(name='setRadarFrequency')
2799 2803 if opObj == None:
2800 2804 self.specOpRadarfrequency.clear()
2801 2805 self.specOpCebRadarfrequency.setCheckState(0)
2802 2806 else:
2803 2807 value = opObj.getParameterValue(parameterName='frequency')
2804 2808 value = str(value)
2805 2809 self.specOpRadarfrequency.setText(value)
2806 2810 self.specOpRadarfrequency.setEnabled(True)
2807 2811 self.specOpCebRadarfrequency.setCheckState(QtCore.Qt.Checked)
2808 2812
2809 2813 opObj = puObj.getOperationObj(name="run")
2810 2814 if opObj == None:
2811 2815 self.specOpnFFTpoints.clear()
2812 2816 self.specOpProfiles.clear()
2813 2817 self.specOpippFactor.clear()
2814 2818 else:
2815 2819 parmObj = opObj.getParameterObj(parameterName='nFFTPoints')
2816 2820 if parmObj == None:
2817 2821 self.specOpnFFTpoints.clear()
2818 2822 else:
2819 2823 self.specOpnFFTpoints.setEnabled(True)
2820 2824 value = opObj.getParameterValue(parameterName='nFFTPoints')
2821 2825 self.specOpnFFTpoints.setText(str(value))
2822 2826
2823 2827 parmObj = opObj.getParameterObj(parameterName='nProfiles')
2824 2828 if parmObj == None:
2825 2829 self.specOpProfiles.clear()
2826 2830 else:
2827 2831 self.specOpProfiles.setEnabled(True)
2828 2832 value = opObj.getParameterValue(parameterName='nProfiles')
2829 2833 self.specOpProfiles.setText(str(value))
2830 2834
2831 2835 parmObj = opObj.getParameterObj(parameterName='ippFactor')
2832 2836 if parmObj == None:
2833 2837 self.specOpippFactor.clear()
2834 2838 else:
2835 2839 self.specOpippFactor.setEnabled(True)
2836 2840 value = opObj.getParameterValue(parameterName='ippFactor')
2837 2841 self.specOpippFactor.setText(str(value))
2838 2842
2839 2843 opObj = puObj.getOperationObj(name="run")
2840 2844 if opObj == None:
2841 2845 self.specOppairsList.clear()
2842 2846 self.specOpCebCrossSpectra.setCheckState(0)
2843 2847 else:
2844 2848 parmObj = opObj.getParameterObj(parameterName='pairsList')
2845 2849 if parmObj == None:
2846 2850 self.specOppairsList.clear()
2847 2851 self.specOpCebCrossSpectra.setCheckState(0)
2848 2852 else:
2849 2853 value = opObj.getParameterValue(parameterName='pairsList')
2850 2854 value = str(value)[1:-1]
2851 2855 self.specOppairsList.setText(str(value))
2852 2856 self.specOppairsList.setEnabled(True)
2853 2857 self.specOpCebCrossSpectra.setCheckState(QtCore.Qt.Checked)
2854 2858
2855 2859 opObj = puObj.getOperationObj(name="selectChannels")
2856 2860 if opObj == None:
2857 2861 self.specOpChannel.clear()
2858 2862 self.specOpCebChannel.setCheckState(0)
2859 2863 else:
2860 2864 value = opObj.getParameterValue(parameterName='channelList')
2861 2865 value = str(value)[1:-1]
2862 2866 self.specOpChannel.setText(value)
2863 2867 self.specOpChannel.setEnabled(True)
2864 2868 self.specOpCebChannel.setCheckState(QtCore.Qt.Checked)
2865 2869
2866 2870 opObj = puObj.getOperationObj(name="selectHeights")
2867 2871 if opObj == None:
2868 2872 self.specOpHeights.clear()
2869 2873 self.specOpCebHeights.setCheckState(0)
2870 2874 else:
2871 2875 value1 = int(opObj.getParameterValue(parameterName='minHei'))
2872 2876 value1 = str(value1)
2873 2877 value2 = int(opObj.getParameterValue(parameterName='maxHei'))
2874 2878 value2 = str(value2)
2875 2879 value = value1 + "," + value2
2876 2880 self.specOpHeights.setText(value)
2877 2881 self.specOpHeights.setEnabled(True)
2878 2882 self.specOpCebHeights.setCheckState(QtCore.Qt.Checked)
2879 2883
2880 2884 opObj = puObj.getOperationObj(name="IncohInt")
2881 2885 if opObj == None:
2882 2886 self.specOpIncoherent.clear()
2883 2887 self.specOpCebIncoherent.setCheckState(0)
2884 2888 else:
2885 2889 for parmObj in opObj.getParameterObjList():
2886 2890 if parmObj.name == 'timeInterval':
2887 2891 value = opObj.getParameterValue(parameterName='timeInterval')
2888 2892 value = float(value)
2889 2893 self.specOpIncoherent.setText(str(value))
2890 2894 self.specOpIncoherent.setEnabled(True)
2891 2895 self.specOpCebIncoherent.setCheckState(QtCore.Qt.Checked)
2892 2896 self.specOpCobIncInt.setCurrentIndex(0)
2893 2897
2894 2898 if parmObj.name == 'n':
2895 2899 value = opObj.getParameterValue(parameterName='n')
2896 2900 value = float(value)
2897 2901 self.specOpIncoherent.setText(str(value))
2898 2902 self.specOpIncoherent.setEnabled(True)
2899 2903 self.specOpCebIncoherent.setCheckState(QtCore.Qt.Checked)
2900 2904 self.specOpCobIncInt.setCurrentIndex(1)
2901 2905
2902 2906 opObj = puObj.getOperationObj(name="removeDC")
2903 2907 if opObj == None:
2904 2908 self.specOpCebRemoveDC.setCheckState(0)
2905 2909 else:
2906 2910 self.specOpCebRemoveDC.setCheckState(QtCore.Qt.Checked)
2907 2911 value = opObj.getParameterValue(parameterName='mode')
2908 2912 if value == 1:
2909 2913 self.specOpComRemoveDC.setCurrentIndex(0)
2910 2914 elif value == 2:
2911 2915 self.specOpComRemoveDC.setCurrentIndex(1)
2912 2916
2913 2917 opObj = puObj.getOperationObj(name="removeInterference")
2914 2918 if opObj == None:
2915 2919 self.specOpCebRemoveInt.setCheckState(0)
2916 2920 else:
2917 2921 self.specOpCebRemoveInt.setCheckState(QtCore.Qt.Checked)
2918 2922
2919 2923 opObj = puObj.getOperationObj(name='getNoise')
2920 2924 if opObj == None:
2921 2925 self.specOpCebgetNoise.setCheckState(0)
2922 2926 self.specOpgetNoise.clear()
2923 2927 else:
2924 2928 self.specOpCebgetNoise.setCheckState(QtCore.Qt.Checked)
2925 2929 parmObj = opObj.getParameterObj(parameterName='minHei')
2926 2930 if parmObj == None:
2927 2931 self.specOpgetNoise.clear()
2928 2932 value1 = None
2929 2933 else:
2930 2934 value1 = opObj.getParameterValue(parameterName='minHei')
2931 2935 value1 = str(value1)
2932 2936 parmObj = opObj.getParameterObj(parameterName='maxHei')
2933 2937 if parmObj == None:
2934 2938 value2 = None
2935 2939 value = value1
2936 2940 self.specOpgetNoise.setText(value)
2937 2941 self.specOpgetNoise.setEnabled(True)
2938 2942 else:
2939 2943 value2 = opObj.getParameterValue(parameterName='maxHei')
2940 2944 value2 = str(value2)
2941 2945 parmObj = opObj.getParameterObj(parameterName='minVel')
2942 2946 if parmObj == None:
2943 2947 value3 = None
2944 2948 value = value1 + "," + value2
2945 2949 self.specOpgetNoise.setText(value)
2946 2950 self.specOpgetNoise.setEnabled(True)
2947 2951 else:
2948 2952 value3 = opObj.getParameterValue(parameterName='minVel')
2949 2953 value3 = str(value3)
2950 2954 parmObj = opObj.getParameterObj(parameterName='maxVel')
2951 2955 if parmObj == None:
2952 2956 value4 = None
2953 2957 value = value1 + "," + value2 + "," + value3
2954 2958 self.specOpgetNoise.setText(value)
2955 2959 self.specOpgetNoise.setEnabled(True)
2956 2960 else:
2957 2961 value4 = opObj.getParameterValue(parameterName='maxVel')
2958 2962 value4 = str(value4)
2959 2963 value = value1 + "," + value2 + "," + value3 + ',' + value4
2960 2964 self.specOpgetNoise.setText(value)
2961 2965 self.specOpgetNoise.setEnabled(True)
2962 2966
2963 2967 opObj = puObj.getOperationObj(name='SpectraPlot')
2964 2968 # opObj = puObj.getOpObjfromParamValue(value="SpectraPlot")
2965 2969 if opObj == None:
2966 2970 self.specGraphCebSpectraplot.setCheckState(0)
2967 2971 self.specGraphSaveSpectra.setCheckState(0)
2968 2972 self.specGraphftpSpectra.setCheckState(0)
2969 2973
2970 2974 else:
2971 2975 operationSpectraPlot = "Enable"
2972 2976 self.specGraphCebSpectraplot.setCheckState(QtCore.Qt.Checked)
2973 2977 parmObj = opObj.getParameterObj(parameterName='channelList')
2974 2978 if parmObj == None:
2975 2979 self.specGgraphChannelList.clear()
2976 2980 else:
2977 2981 value = opObj.getParameterValue(parameterName='channelList')
2978 2982 channelListSpectraPlot = str(value)[1:-1]
2979 2983 self.specGgraphChannelList.setText(channelListSpectraPlot)
2980 2984 self.specGgraphChannelList.setEnabled(True)
2981 2985
2982 2986 parmObj = opObj.getParameterObj(parameterName='xmin')
2983 2987 if parmObj == None:
2984 2988 self.specGgraphFreq.clear()
2985 2989 else:
2986 2990 value1 = opObj.getParameterValue(parameterName='xmin')
2987 2991 value1 = str(value1)
2988 2992 value2 = opObj.getParameterValue(parameterName='xmax')
2989 2993 value2 = str(value2)
2990 2994 value = value1 + "," + value2
2991 2995 self.specGgraphFreq.setText(value)
2992 2996 self.specGgraphFreq.setEnabled(True)
2993 2997
2994 2998 parmObj = opObj.getParameterObj(parameterName='ymin')
2995 2999 if parmObj == None:
2996 3000 self.specGgraphHeight.clear()
2997 3001 else:
2998 3002 value1 = opObj.getParameterValue(parameterName='ymin')
2999 3003 value1 = str(value1)
3000 3004 value2 = opObj.getParameterValue(parameterName='ymax')
3001 3005 value2 = str(value2)
3002 3006 value = value1 + "," + value2
3003 3007 self.specGgraphHeight.setText(value)
3004 3008 self.specGgraphHeight.setEnabled(True)
3005 3009
3006 3010 parmObj = opObj.getParameterObj(parameterName='zmin')
3007 3011 if parmObj == None:
3008 3012 self.specGgraphDbsrange.clear()
3009 3013 else:
3010 3014 value1 = opObj.getParameterValue(parameterName='zmin')
3011 3015 value1 = str(value1)
3012 3016 value2 = opObj.getParameterValue(parameterName='zmax')
3013 3017 value2 = str(value2)
3014 3018 value = value1 + "," + value2
3015 3019 self.specGgraphDbsrange.setText(value)
3016 3020 self.specGgraphDbsrange.setEnabled(True)
3017 3021
3018 3022
3019 3023 parmObj = opObj.getParameterObj(parameterName="figpath")
3020 3024 if parmObj == None:
3021 3025 self.specGraphSaveSpectra.setCheckState(0)
3022 3026 else:
3023 3027 self.specGraphSaveSpectra.setCheckState(QtCore.Qt.Checked)
3024 3028 value = opObj.getParameterValue(parameterName='figpath')
3025 3029 self.specGraphPath.setText(value)
3026 3030
3027 3031 parmObj = opObj.getParameterObj(parameterName="ftp")
3028 3032 if parmObj == None:
3029 3033 self.specGraphftpSpectra.setCheckState(0)
3030 3034 else:
3031 3035 self.specGraphftpSpectra.setCheckState(QtCore.Qt.Checked)
3032 3036 try:
3033 3037 value = opObj.getParameterValue(parameterName='wr_period')
3034 3038 except:
3035 3039 value = " "
3036 3040 self.specGgraphftpratio.setText(str(value))
3037 3041
3038 3042 opObj = puObj.getOperationObj(name='CrossSpectraPlot')
3039 3043 # opObj = puObj.getOpObjfromParamValue(value="CrossSpectraPlot")
3040 3044 if opObj == None:
3041 3045 self.specGraphCebCrossSpectraplot.setCheckState(0)
3042 3046 self.specGraphSaveCross.setCheckState(0)
3043 3047
3044 3048 else:
3045 3049 operationCrossSpectraPlot = "Enable"
3046 3050 self.specGraphCebCrossSpectraplot.setCheckState(QtCore.Qt.Checked)
3047 3051 parmObj = opObj.getParameterObj(parameterName='xmin')
3048 3052 if parmObj == None:
3049 3053 self.specGgraphFreq.clear()
3050 3054 else:
3051 3055 value1 = opObj.getParameterValue(parameterName='xmin')
3052 3056 value1 = str(value1)
3053 3057 value2 = opObj.getParameterValue(parameterName='xmax')
3054 3058 value2 = str(value2)
3055 3059 value = value1 + "," + value2
3056 3060 self.specGgraphFreq.setText(value)
3057 3061 self.specGgraphFreq.setEnabled(True)
3058 3062
3059 3063 parmObj = opObj.getParameterObj(parameterName='ymin')
3060 3064 if parmObj == None:
3061 3065 self.specGgraphHeight.clear()
3062 3066 else:
3063 3067 value1 = opObj.getParameterValue(parameterName='ymin')
3064 3068 value1 = str(value1)
3065 3069 value2 = opObj.getParameterValue(parameterName='ymax')
3066 3070 value2 = str(value2)
3067 3071 value = value1 + "," + value2
3068 3072 self.specGgraphHeight.setText(value)
3069 3073 self.specGgraphHeight.setEnabled(True)
3070 3074
3071 3075 parmObj = opObj.getParameterObj(parameterName='zmin')
3072 3076 if parmObj == None:
3073 3077 self.specGgraphDbsrange.clear()
3074 3078 else:
3075 3079 value1 = opObj.getParameterValue(parameterName='zmin')
3076 3080 value1 = str(value1)
3077 3081 value2 = opObj.getParameterValue(parameterName='zmax')
3078 3082 value2 = str(value2)
3079 3083 value = value1 + "," + value2
3080 3084 self.specGgraphDbsrange.setText(value)
3081 3085 self.specGgraphDbsrange.setEnabled(True)
3082 3086
3083 3087 parmObj = opObj.getParameterObj(parameterName="figpath")
3084 3088 if parmObj == None:
3085 3089 self.specGraphSaveCross.setCheckState(0)
3086 3090
3087 3091 else:
3088 3092 self.specGraphSaveCross.setCheckState(QtCore.Qt.Checked)
3089 3093 value = opObj.getParameterValue(parameterName='figpath')
3090 3094 self.specGraphPath.setText(value)
3091 3095
3092 3096 parmObj = opObj.getParameterObj(parameterName="ftp")
3093 3097 if parmObj == None:
3094 3098 self.specGraphftpCross.setCheckState(0)
3095 3099 else:
3096 3100 self.specGraphftpCross.setCheckState(QtCore.Qt.Checked)
3097 3101 try:
3098 3102 value = opObj.getParameterValue(parameterName='wr_period')
3099 3103 except:
3100 3104 value = " "
3101 3105 self.specGgraphftpratio.setText(str(value))
3102 3106
3103 3107 opObj = puObj.getOperationObj(name='RTIPlot')
3104 3108 # opObj = puObj.getOpObjfromParamValue(value="RTIPlot")
3105 3109 if opObj == None:
3106 3110 self.specGraphCebRTIplot.setCheckState(0)
3107 3111 self.specGraphSaveRTIplot.setCheckState(0)
3108 3112 self.specGraphftpRTIplot.setCheckState(0)
3109 3113 else:
3110 3114 self.specGraphCebRTIplot.setCheckState(QtCore.Qt.Checked)
3111 3115 parmObj = opObj.getParameterObj(parameterName='channelList')
3112 3116 if parmObj == None:
3113 3117 self.specGgraphChannelList.clear()
3114 3118 else:
3115 3119 value = opObj.getParameterValue(parameterName='channelList')
3116 3120 channelListRTIPlot = str(value)[1:-1]
3117 3121 self.specGgraphChannelList.setText(channelListRTIPlot)
3118 3122 self.specGgraphChannelList.setEnabled(True)
3119 3123
3120 3124 parmObj = opObj.getParameterObj(parameterName='xmin')
3121 3125 if parmObj == None:
3122 3126 self.specGgraphTminTmax.clear()
3123 3127 else:
3124 3128 value1 = opObj.getParameterValue(parameterName='xmin')
3125 3129 value1 = str(value1)
3126 3130 value2 = opObj.getParameterValue(parameterName='xmax')
3127 3131 value2 = str(value2)
3128 3132 value = value1 + "," + value2
3129 3133 self.specGgraphTminTmax.setText(value)
3130 3134 self.specGgraphTminTmax.setEnabled(True)
3131 3135
3132 3136 parmObj = opObj.getParameterObj(parameterName='timerange')
3133 3137 if parmObj == None:
3134 3138 self.specGgraphTimeRange.clear()
3135 3139 else:
3136 3140 value1 = opObj.getParameterValue(parameterName='timerange')
3137 3141 value1 = str(value1)
3138 3142 self.specGgraphTimeRange.setText(value1)
3139 3143 self.specGgraphTimeRange.setEnabled(True)
3140 3144
3141 3145 parmObj = opObj.getParameterObj(parameterName='ymin')
3142 3146 if parmObj == None:
3143 3147 self.specGgraphHeight.clear()
3144 3148 else:
3145 3149 value1 = opObj.getParameterValue(parameterName='ymin')
3146 3150 value1 = str(value1)
3147 3151 value2 = opObj.getParameterValue(parameterName='ymax')
3148 3152 value2 = str(value2)
3149 3153 value = value1 + "," + value2
3150 3154 self.specGgraphHeight.setText(value)
3151 3155 self.specGgraphHeight.setEnabled(True)
3152 3156
3153 3157 parmObj = opObj.getParameterObj(parameterName='zmin')
3154 3158 if parmObj == None:
3155 3159 self.specGgraphDbsrange.clear()
3156 3160 else:
3157 3161 value1 = opObj.getParameterValue(parameterName='zmin')
3158 3162 value1 = str(value1)
3159 3163 value2 = opObj.getParameterValue(parameterName='zmax')
3160 3164 value2 = str(value2)
3161 3165 value = value1 + "," + value2
3162 3166 self.specGgraphDbsrange.setText(value)
3163 3167 self.specGgraphDbsrange.setEnabled(True)
3164 3168
3165 3169 parmObj = opObj.getParameterObj(parameterName="figpath")
3166 3170 if parmObj == None:
3167 3171 self.specGraphSaveRTIplot.setCheckState(0)
3168 3172 else:
3169 3173 self.specGraphSaveRTIplot.setCheckState(QtCore.Qt.Checked)
3170 3174 value = opObj.getParameterValue(parameterName='figpath')
3171 3175 self.specGraphPath.setText(value)
3172 3176 #---------add----#
3173 3177 parmObj = opObj.getParameterObj(parameterName="ftp")
3174 3178 if parmObj == None:
3175 3179 self.specGraphftpRTIplot.setCheckState(0)
3176 3180 else:
3177 3181 self.specGraphftpRTIplot.setCheckState(QtCore.Qt.Checked)
3178 3182 try:
3179 3183 value = opObj.getParameterValue(parameterName='wr_period')
3180 3184 except:
3181 3185 value = " "
3182 3186 self.specGgraphftpratio.setText(str(value))
3183 3187
3184 3188 opObj = puObj.getOperationObj(name='CoherenceMap')
3185 3189 # opObj = puObj.getOpObjfromParamValue(value="CoherenceMap")
3186 3190 if opObj == None:
3187 3191 self.specGraphCebCoherencmap.setCheckState(0)
3188 3192 self.specGraphSaveCoherencemap.setCheckState(0)
3189 3193 self.specGraphftpCoherencemap.setCheckState(0)
3190 3194
3191 3195 else:
3192 3196 operationCoherenceMap = "Enable"
3193 3197 self.specGraphCebCoherencmap.setCheckState(QtCore.Qt.Checked)
3194 3198 parmObj = opObj.getParameterObj(parameterName='xmin')
3195 3199 if parmObj == None:
3196 3200 self.specGgraphTminTmax.clear()
3197 3201 else:
3198 3202 value1 = opObj.getParameterValue(parameterName='xmin')
3199 3203 value1 = str(value1)
3200 3204 value2 = opObj.getParameterValue(parameterName='xmax')
3201 3205 value2 = str(value2)
3202 3206 value = value1 + "," + value2
3203 3207 self.specGgraphTminTmax.setText(value)
3204 3208 self.specGgraphTminTmax.setEnabled(True)
3205 3209
3206 3210 parmObj = opObj.getParameterObj(parameterName='timerange')
3207 3211 if parmObj == None:
3208 3212 self.specGgraphTimeRange.clear()
3209 3213 else:
3210 3214 value1 = opObj.getParameterValue(parameterName='timerange')
3211 3215 value1 = str(value1)
3212 3216 self.specGgraphTimeRange.setText(value1)
3213 3217 self.specGgraphTimeRange.setEnabled(True)
3214 3218
3215 3219 parmObj = opObj.getParameterObj(parameterName='ymin')
3216 3220 if parmObj == None:
3217 3221 self.specGgraphHeight.clear()
3218 3222 else:
3219 3223 value1 = opObj.getParameterValue(parameterName='ymin')
3220 3224 value1 = str(value1)
3221 3225 value2 = opObj.getParameterValue(parameterName='ymax')
3222 3226 value2 = str(value2)
3223 3227 value = value1 + "," + value2
3224 3228 self.specGgraphHeight.setText(value)
3225 3229 self.specGgraphHeight.setEnabled(True)
3226 3230
3227 3231 parmObj = opObj.getParameterObj(parameterName='zmin')
3228 3232 if parmObj == None:
3229 3233 self.specGgraphmagnitud.clear()
3230 3234 else:
3231 3235 value1 = opObj.getParameterValue(parameterName='zmin')
3232 3236 value1 = str(value1)
3233 3237 value2 = opObj.getParameterValue(parameterName='zmax')
3234 3238 value2 = str(value2)
3235 3239 value = value1 + "," + value2
3236 3240 self.specGgraphmagnitud.setText(value)
3237 3241 self.specGgraphmagnitud.setEnabled(True)
3238 3242
3239 3243 parmObj = opObj.getParameterObj(parameterName="figpath")
3240 3244 if parmObj == None:
3241 3245 self.specGraphSaveCoherencemap.setCheckState(0)
3242 3246 else:
3243 3247 self.specGraphSaveCoherencemap.setCheckState(QtCore.Qt.Checked)
3244 3248 value = opObj.getParameterValue(parameterName='figpath')
3245 3249 self.specGraphPath.setText(value)
3246 3250
3247 3251 parmObj = opObj.getParameterObj(parameterName="ftp")
3248 3252 if parmObj == None:
3249 3253 self.specGraphftpCoherencemap.setCheckState(0)
3250 3254 else:
3251 3255 self.specGraphftpCoherencemap.setCheckState(QtCore.Qt.Checked)
3252 3256 try:
3253 3257 value = opObj.getParameterValue(parameterName='wr_period')
3254 3258 except:
3255 3259 value = " "
3256 3260 self.specGgraphftpratio.setText(str(value))
3257 3261
3258 3262 opObj = puObj.getOperationObj(name='PowerProfilePlot')
3259 3263 # opObj = puObj.getOpObjfromParamValue(value="PowerProfilePlot")
3260 3264 if opObj == None:
3261 3265 self.specGraphPowerprofile.setCheckState(0)
3262 3266 self.specGraphSavePowerprofile.setCheckState(0)
3263 3267 operationPowerProfilePlot = "Disabled"
3264 3268 channelList = None
3265 3269 freq_vel = None
3266 3270 heightsrange = None
3267 3271 else:
3268 3272 operationPowerProfilePlot = "Enable"
3269 3273 self.specGraphPowerprofile.setCheckState(QtCore.Qt.Checked)
3270 3274 parmObj = opObj.getParameterObj(parameterName='xmin')
3271 3275 if parmObj == None:
3272 3276 self.specGgraphDbsrange.clear()
3273 3277 else:
3274 3278 value1 = opObj.getParameterValue(parameterName='xmin')
3275 3279 value1 = str(value1)
3276 3280 value2 = opObj.getParameterValue(parameterName='xmax')
3277 3281 value2 = str(value2)
3278 3282 value = value1 + "," + value2
3279 3283 self.specGgraphDbsrange.setText(value)
3280 3284 self.specGgraphDbsrange.setEnabled(True)
3281 3285
3282 3286 parmObj = opObj.getParameterObj(parameterName='ymin')
3283 3287 if parmObj == None:
3284 3288 self.specGgraphHeight.clear()
3285 3289 else:
3286 3290 value1 = opObj.getParameterValue(parameterName='ymin')
3287 3291 value1 = str(value1)
3288 3292 value2 = opObj.getParameterValue(parameterName='ymax')
3289 3293 value2 = str(value2)
3290 3294 value = value1 + "," + value2
3291 3295 self.specGgraphHeight.setText(value)
3292 3296 self.specGgraphHeight.setEnabled(True)
3293 3297
3294 3298 parmObj = opObj.getParameterObj(parameterName="figpath")
3295 3299 if parmObj == None:
3296 3300 self.specGraphSavePowerprofile.setCheckState(0)
3297 3301 else:
3298 3302 self.specGraphSavePowerprofile.setCheckState(QtCore.Qt.Checked)
3299 3303 value = opObj.getParameterValue(parameterName='figpath')
3300 3304 self.specGraphPath.setText(value)
3301 3305
3302 3306 parmObj = opObj.getParameterObj(parameterName="ftp")
3303 3307 if parmObj == None:
3304 3308 self.specGraphftpPowerprofile.setCheckState(0)
3305 3309 else:
3306 3310 self.specGraphftpPowerprofile.setCheckState(QtCore.Qt.Checked)
3307 3311 try:
3308 3312 value = opObj.getParameterValue(parameterName='wr_period')
3309 3313 except:
3310 3314 value = " "
3311 3315 self.specGgraphftpratio.setText(str(value))
3312 3316 # -noise
3313 3317 opObj = puObj.getOperationObj(name='Noise')
3314 3318 # opObj = puObj.getOpObjfromParamValue(value="Noise")
3315 3319 if opObj == None:
3316 3320 self.specGraphCebRTInoise.setCheckState(0)
3317 3321 self.specGraphSaveRTInoise.setCheckState(0)
3318 3322 self.specGraphftpRTInoise.setCheckState(0)
3319 3323 else:
3320 3324 self.specGraphCebRTInoise.setCheckState(QtCore.Qt.Checked)
3321 3325 parmObj = opObj.getParameterObj(parameterName='channelList')
3322 3326 if parmObj == None:
3323 3327 self.specGgraphChannelList.clear()
3324 3328 else:
3325 3329 value = opObj.getParameterValue(parameterName='channelList')
3326 3330 channelListRTINoise = str(value)[1:-1]
3327 3331 self.specGgraphChannelList.setText(channelListRTINoise)
3328 3332 self.specGgraphChannelList.setEnabled(True)
3329 3333
3330 3334 parmObj = opObj.getParameterObj(parameterName='xmin')
3331 3335 if parmObj == None:
3332 3336 self.specGgraphTminTmax.clear()
3333 3337 else:
3334 3338 value1 = opObj.getParameterValue(parameterName='xmin')
3335 3339 value1 = str(value1)
3336 3340 value2 = opObj.getParameterValue(parameterName='xmax')
3337 3341 value2 = str(value2)
3338 3342 value = value1 + "," + value2
3339 3343 self.specGgraphTminTmax.setText(value)
3340 3344 self.specGgraphTminTmax.setEnabled(True)
3341 3345
3342 3346 parmObj = opObj.getParameterObj(parameterName='timerange')
3343 3347 if parmObj == None:
3344 3348 self.specGgraphTimeRange.clear()
3345 3349 else:
3346 3350 value1 = opObj.getParameterValue(parameterName='timerange')
3347 3351 value1 = str(value1)
3348 3352 self.specGgraphTimeRange.setText(value1)
3349 3353 self.specGgraphTimeRange.setEnabled(True)
3350 3354
3351 3355
3352 3356 parmObj = opObj.getParameterObj(parameterName='ymin')
3353 3357 if parmObj == None:
3354 3358 self.specGgraphDbsrange.clear()
3355 3359 else:
3356 3360 value1 = opObj.getParameterValue(parameterName='ymin')
3357 3361 value1 = str(value1)
3358 3362 value2 = opObj.getParameterValue(parameterName='ymax')
3359 3363 value2 = str(value2)
3360 3364 value = value1 + "," + value2
3361 3365 self.specGgraphDbsrange.setText(value)
3362 3366 self.specGgraphDbsrange.setEnabled(True)
3363 3367
3364 3368 parmObj = opObj.getParameterObj(parameterName="figpath")
3365 3369 if parmObj == None:
3366 3370 self.specGraphSaveRTInoise.setCheckState(0)
3367 3371 else:
3368 3372 self.specGraphSaveRTInoise.setCheckState(QtCore.Qt.Checked)
3369 3373 value = opObj.getParameterValue(parameterName='figpath')
3370 3374 self.specGraphPath.setText(value)
3371 3375 #---------add----#
3372 3376 parmObj = opObj.getParameterObj(parameterName="ftp")
3373 3377 if parmObj == None:
3374 3378 self.specGraphftpRTInoise.setCheckState(0)
3375 3379 else:
3376 3380 self.specGraphftpRTInoise.setCheckState(QtCore.Qt.Checked)
3377 3381 try:
3378 3382 value = opObj.getParameterValue(parameterName='wr_period')
3379 3383 except:
3380 3384 value = " "
3381 3385 self.specGgraphftpratio.setText(str(value))
3382 3386
3383 3387 # outputSpectraWrite
3384 3388 opObj = puObj.getOperationObj(name='SpectraWriter')
3385 3389 if opObj == None:
3386 3390 self.specOutputPath.clear()
3387 3391 self.specOutputblocksperfile.clear()
3388 3392 self.specOutputprofileperblock.clear()
3389 3393 else:
3390 3394 value = opObj.getParameterObj(parameterName='path')
3391 3395 if value == None:
3392 3396 self.specOutputPath.clear()
3393 3397 else:
3394 3398 value = opObj.getParameterValue(parameterName='path')
3395 3399 path = str(value)
3396 3400 self.specOutputPath.setText(path)
3397 3401 value = opObj.getParameterObj(parameterName='blocksPerFile')
3398 3402 if value == None:
3399 3403 self.specOutputblocksperfile.clear()
3400 3404 else:
3401 3405 value = opObj.getParameterValue(parameterName='blocksPerFile')
3402 3406 blocksperfile = str(value)
3403 3407 self.specOutputblocksperfile.setText(blocksperfile)
3404 3408 value = opObj.getParameterObj(parameterName='profilesPerBlock')
3405 3409 if value == None:
3406 3410 self.specOutputprofileperblock.clear()
3407 3411 else:
3408 3412 value = opObj.getParameterValue(parameterName='profilesPerBlock')
3409 3413 profilesPerBlock = str(value)
3410 3414 self.specOutputprofileperblock.setText(profilesPerBlock)
3411 3415
3412 3416 if datatype == 'SpectraHeis':
3413 3417 opObj = puObj.getOperationObj(name="IncohInt4SpectraHeis")
3414 3418 if opObj == None:
3415 3419 self.specHeisOpIncoherent.clear()
3416 3420 self.specHeisOpCebIncoherent.setCheckState(0)
3417 3421 else:
3418 3422 for parmObj in opObj.getParameterObjList():
3419 3423 if parmObj.name == 'timeInterval':
3420 3424 value = opObj.getParameterValue(parameterName='timeInterval')
3421 3425 value = float(value)
3422 3426 self.specHeisOpIncoherent.setText(str(value))
3423 3427 self.specHeisOpIncoherent.setEnabled(True)
3424 3428 self.specHeisOpCebIncoherent.setCheckState(QtCore.Qt.Checked)
3425 3429 self.specHeisOpCobIncInt.setCurrentIndex(0)
3426 3430
3427 3431 # SpectraHeis Graph
3428 3432 opObj = puObj.getOperationObj(name='SpectraHeisScope')
3429 3433 # opObj = puObj.getOpObjfromParamValue(value="SpectraHeisScope")
3430 3434 if opObj == None:
3431 3435 self.specHeisGraphCebSpectraplot.setCheckState(0)
3432 3436 self.specHeisGraphSaveSpectra.setCheckState(0)
3433 3437 self.specHeisGraphftpSpectra.setCheckState(0)
3434 3438
3435 3439 else:
3436 3440 operationSpectraHeisScope = "Enable"
3437 3441 self.specHeisGraphCebSpectraplot.setCheckState(QtCore.Qt.Checked)
3438 3442 parmObj = opObj.getParameterObj(parameterName='channelList')
3439 3443 if parmObj == None:
3440 3444 self.specHeisGgraphChannelList.clear()
3441 3445 else:
3442 3446 value = opObj.getParameterValue(parameterName='channelList')
3443 3447 channelListSpectraHeisScope = str(value)[1:-1]
3444 3448 self.specHeisGgraphChannelList.setText(channelListSpectraHeisScope)
3445 3449 self.specHeisGgraphChannelList.setEnabled(True)
3446 3450
3447 3451 parmObj = opObj.getParameterObj(parameterName='xmin')
3448 3452 if parmObj == None:
3449 3453 self.specHeisGgraphXminXmax.clear()
3450 3454 else:
3451 3455 value1 = opObj.getParameterValue(parameterName='xmin')
3452 3456 value1 = str(value1)
3453 3457 value2 = opObj.getParameterValue(parameterName='xmax')
3454 3458 value2 = str(value2)
3455 3459 value = value1 + "," + value2
3456 3460 self.specHeisGgraphXminXmax.setText(value)
3457 3461 self.specHeisGgraphXminXmax.setEnabled(True)
3458 3462
3459 3463 parmObj = opObj.getParameterObj(parameterName='ymin')
3460 3464 if parmObj == None:
3461 3465 self.specHeisGgraphYminYmax.clear()
3462 3466 else:
3463 3467 value1 = opObj.getParameterValue(parameterName='ymin')
3464 3468 value1 = str(value1)
3465 3469 value2 = opObj.getParameterValue(parameterName='ymax')
3466 3470 value2 = str(value2)
3467 3471 value = value1 + "," + value2
3468 3472 self.specHeisGgraphYminYmax.setText(value)
3469 3473 self.specHeisGgraphYminYmax.setEnabled(True)
3470 3474
3471 3475 parmObj = opObj.getParameterObj(parameterName="figpath")
3472 3476 if parmObj == None:
3473 3477 self.specHeisGraphSaveSpectra.setCheckState(0)
3474 3478 else:
3475 3479 self.specHeisGraphSaveSpectra.setCheckState(QtCore.Qt.Checked)
3476 3480 value = opObj.getParameterValue(parameterName='figpath')
3477 3481 self.specHeisGraphPath.setText(value)
3478 3482
3479 3483 parmObj = opObj.getParameterObj(parameterName="ftp")
3480 3484 if parmObj == None:
3481 3485 self.specHeisGraphftpSpectra.setCheckState(0)
3482 3486 else:
3483 3487 self.specHeisGraphftpSpectra.setCheckState(QtCore.Qt.Checked)
3484 3488 try:
3485 3489 value = opObj.getParameterValue(parameterName='wr_period')
3486 3490 except:
3487 3491 value = " "
3488 3492 self.specHeisGgraphftpratio.setText(str(value))
3489 3493
3490 3494 opObj = puObj.getOperationObj(name='RTIfromSpectraHeis')
3491 3495 # opObj = puObj.getOpObjfromParamValue(value="RTIfromSpectraHeis")
3492 3496 if opObj == None:
3493 3497 self.specHeisGraphCebRTIplot.setCheckState(0)
3494 3498 self.specHeisGraphSaveRTIplot.setCheckState(0)
3495 3499 self.specHeisGraphftpRTIplot.setCheckState(0)
3496 3500 else:
3497 3501 self.specHeisGraphCebRTIplot.setCheckState(QtCore.Qt.Checked)
3498 3502 parmObj = opObj.getParameterObj(parameterName='channelList')
3499 3503 if parmObj == None:
3500 3504 self.specHeisGgraphChannelList.clear()
3501 3505 else:
3502 3506 value = opObj.getParameterValue(parameterName='channelList')
3503 3507 channelListRTIPlot = str(value)[1:-1]
3504 3508 self.specGgraphChannelList.setText(channelListRTIPlot)
3505 3509 self.specGgraphChannelList.setEnabled(True)
3506 3510
3507 3511 parmObj = opObj.getParameterObj(parameterName='xmin')
3508 3512 if parmObj == None:
3509 3513 self.specHeisGgraphTminTmax.clear()
3510 3514 else:
3511 3515 value1 = opObj.getParameterValue(parameterName='xmin')
3512 3516 value1 = str(value1)
3513 3517 value2 = opObj.getParameterValue(parameterName='xmax')
3514 3518 value2 = str(value2)
3515 3519 value = value1 + "," + value2
3516 3520 self.specHeisGgraphTminTmax.setText(value)
3517 3521 self.specHeisGgraphTminTmax.setEnabled(True)
3518 3522
3519 3523 parmObj = opObj.getParameterObj(parameterName='timerange')
3520 3524 if parmObj == None:
3521 3525 self.specGgraphTimeRange.clear()
3522 3526 else:
3523 3527 value1 = opObj.getParameterValue(parameterName='timerange')
3524 3528 value1 = str(value1)
3525 3529 self.specHeisGgraphTimeRange.setText(value1)
3526 3530 self.specHeisGgraphTimeRange.setEnabled(True)
3527 3531
3528 3532 parmObj = opObj.getParameterObj(parameterName='ymin')
3529 3533 if parmObj == None:
3530 3534 self.specHeisGgraphYminYmax.clear()
3531 3535 else:
3532 3536 value1 = opObj.getParameterValue(parameterName='ymin')
3533 3537 value1 = str(value1)
3534 3538 value2 = opObj.getParameterValue(parameterName='ymax')
3535 3539 value2 = str(value2)
3536 3540 value = value1 + "," + value2
3537 3541 self.specHeisGgraphYminYmax.setText(value)
3538 3542 self.specHeisGgraphYminYmax.setEnabled(True)
3539 3543
3540 3544 parmObj = opObj.getParameterObj(parameterName="figpath")
3541 3545 if parmObj == None:
3542 3546 self.specHeisGraphSaveRTIplot.setCheckState(0)
3543 3547 else:
3544 3548 self.specHeisGraphSaveRTIplot.setCheckState(QtCore.Qt.Checked)
3545 3549 value = opObj.getParameterValue(parameterName='figpath')
3546 3550 self.specHeisGraphPath.setText(value)
3547 3551 #---------add----#
3548 3552 parmObj = opObj.getParameterObj(parameterName="ftp")
3549 3553 if parmObj == None:
3550 3554 self.specHeisGraphftpRTIplot.setCheckState(0)
3551 3555 else:
3552 3556 self.specHeisGraphftpRTIplot.setCheckState(QtCore.Qt.Checked)
3553 3557 try:
3554 3558 value = opObj.getParameterValue(parameterName='wr_period')
3555 3559 except:
3556 3560 value = " "
3557 3561 self.specHeisGgraphftpratio.setText(str(value))
3558 3562
3559 3563
3560 3564
3561 3565 # outputSpectraHeisWrite
3562 3566 opObj = puObj.getOperationObj(name='FitsWriter')
3563 3567 if opObj == None:
3564 3568 self.specHeisOutputPath.clear()
3565 3569 self.specHeisOutputblocksperfile.clear()
3566 3570 self.specHeisOutputMetada.clear()
3567 3571 else:
3568 3572 value = opObj.getParameterObj(parameterName='path')
3569 3573 if value == None:
3570 3574 self.specHeisOutputPath.clear()
3571 3575 else:
3572 3576 value = opObj.getParameterValue(parameterName='path')
3573 3577 path = str(value)
3574 3578 self.specHeisOutputPath.setText(path)
3575 3579 value = opObj.getParameterObj(parameterName='dataBlocksPerFile')
3576 3580 if value == None:
3577 3581 self.specHeisOutputblocksperfile.clear()
3578 3582 else:
3579 3583 value = opObj.getParameterValue(parameterName='dataBlocksPerFile')
3580 3584 blocksperfile = str(value)
3581 3585 self.specHeisOutputblocksperfile.setText(blocksperfile)
3582 3586 value = opObj.getParameterObj(parameterName='metadatafile')
3583 3587 if value == None:
3584 3588 self.specHeisOutputMetada.clear()
3585 3589 else:
3586 3590 value = opObj.getParameterValue(parameterName='metadatafile')
3587 3591 metada = str(value)
3588 3592 self.specHeisOutputMetada.setText(metada)
3589 3593
3590 3594
3591 3595
3592 3596 def setspecGraph(self):
3593 3597
3594 3598 self.specGgraphChannelList.setEnabled(True)
3595 3599
3596 3600 def clearspecGraph(self):
3597 3601
3598 3602 self.specGgraphChannelList.clear()
3599 3603
3600 3604 def create_comm(self):
3601 3605 self.commCtrlPThread = CommCtrlProcessThread()
3602 3606 self.commCtrlPThread.start()
3603 3607
3604 3608 def create_timers(self):
3605 3609 self.comm_data_timer = QtCore.QTimer(self)
3606 3610 self.comm_data_timer.timeout.connect(self.on_comm_data_timer)
3607 3611 self.comm_data_timer.start(10)
3608 3612
3609 3613 def create_figure(self):
3610 3614 self.queue_plot = Queue.Queue()
3611 3615 self.plotmanager = PlotManager(self.queue_plot)
3612 3616 self.plot_timer = QtCore.QTimer()
3613 3617 QtCore.QObject.connect(self.plot_timer, QtCore.SIGNAL("timeout()"), self.periodicCall)
3614 3618 self.plot_timer.start(100)
3615 3619 self.running = 1
3616 3620
3617 3621 def periodicCall(self):
3618 3622 """
3619 3623 Check every 100 ms if there is something new in the queue.
3620 3624 """
3621 3625 self.plotmanager.processIncoming()
3622 3626 if not self.running:
3623 3627 app.quit()
3624 3628
3625 3629 def on_comm_data_timer(self):
3626 3630 # lee el data_queue y la coloca en el queue de ploteo
3627 3631 try:
3628 3632 reply = self.commCtrlPThread.data_q.get(block=False)
3629 3633 self.queue_plot.put(reply.data)
3630 3634
3631 3635 except Queue.Empty:
3632 3636 pass
3633 3637
3634 3638 def createProjectView(self, id):
3635 3639
3636 3640 self.create = False
3637 3641 project_name, description, datatype, data_path, starDate, endDate, startTime, endTime, online, delay, walk, set = self.getParmsFromProjectWindow()
3638 3642
3639 3643 projectObjView = Project()
3640 3644 projectObjView.setup(id=id, name=project_name, description=description)
3641 3645
3642 3646 self.__projectObjDict[id] = projectObjView
3643 3647
3644 3648 return projectObjView
3645 3649
3646 3650 def updateProjectView(self):
3647 3651
3648 3652 project_name, description, datatype, data_path, starDate, endDate, startTime, endTime, online, delay, walk, set = self.getParmsFromProjectWindow()
3649 3653
3650 3654 projectObjView = self.getSelectedProjectObj()
3651 3655 projectObjView.update(name=project_name, description=description)
3652 3656
3653 3657 return projectObjView
3654 3658
3655 3659 def createReadUnitView(self, projectObjView):
3656 3660
3657 3661 project_name, description, datatype, data_path, startDate, endDate, startTime, endTime, online, delay, walk , set = self.getParmsFromProjectWindow()
3658 3662 if set == None:
3659 3663 readUnitConfObj = projectObjView.addReadUnit(datatype=datatype,
3660 3664 path=data_path,
3661 3665 startDate=startDate,
3662 3666 endDate=endDate,
3663 3667 startTime=startTime,
3664 3668 endTime=endTime,
3665 3669 online=online,
3666 3670 delay=delay,
3667 3671 walk=walk)
3668 3672 else:
3669 3673 readUnitConfObj = projectObjView.addReadUnit(datatype=datatype,
3670 3674 path=data_path,
3671 3675 startDate=startDate,
3672 3676 endDate=endDate,
3673 3677 startTime=startTime,
3674 3678 endTime=endTime,
3675 3679 online=online,
3676 3680 delay=delay,
3677 3681 walk=walk,
3678 3682 set=set)
3679 3683
3680 3684 return readUnitConfObj
3681 3685
3682 3686 def updateReadUnitView(self, projectObjView, idReadUnit):
3683 3687
3684 3688 project_name, description, datatype, data_path, startDate, endDate, startTime, endTime, online, delay, walk , set = self.getParmsFromProjectWindow()
3685 3689
3686 3690 readUnitConfObj = projectObjView.getProcUnitObj(idReadUnit)
3687 3691
3688 3692 if set == None:
3689 3693
3690 3694 readUnitConfObj.update(datatype=datatype,
3691 3695 path=data_path,
3692 3696 startDate=startDate,
3693 3697 endDate=endDate,
3694 3698 startTime=startTime,
3695 3699 endTime=endTime,
3696 3700 online=online,
3697 3701 delay=delay,
3698 3702 walk=walk)
3699 3703
3700 3704 else:
3701 3705 readUnitConfObj.update(datatype=datatype,
3702 3706 path=data_path,
3703 3707 startDate=startDate,
3704 3708 endDate=endDate,
3705 3709 startTime=startTime,
3706 3710 endTime=endTime,
3707 3711 online=online,
3708 3712 delay=delay,
3709 3713 walk=walk,
3710 3714 set=set)
3711 3715
3712 3716
3713 3717
3714 3718 return readUnitConfObj
3715 3719
3716 3720 def createProcUnitView(self, projectObjView, datatype, inputId):
3717 3721
3718 3722 procUnitConfObj = projectObjView.addProcUnit(datatype=datatype, inputId=inputId)
3719 3723
3720 3724 self.__puObjDict[procUnitConfObj.getId()] = procUnitConfObj
3721 3725
3722 3726 return procUnitConfObj
3723 3727
3724 3728 def updateProcUnitView(self, id):
3725 3729
3726 3730 procUnitConfObj = projectObjView.getProcUnitObj(id)
3727 3731 procUnitConfObj.removeOperations()
3728 3732
3729 3733 return procUnitConfObj
3730 3734
3731 3735 def addPUWindow(self):
3732 3736
3733 3737 self.configUPWindowObj = UnitProcessWindow(self)
3734 3738 fatherObj = self.getSelectedPUObj()
3735 3739 try:
3736 3740 fatherObj.getElementName()
3737 3741 except:
3738 3742 self.console.append("First left click on Project or Processing Unit")
3739 3743 return 0
3740 3744
3741 3745 if fatherObj.getElementName() == 'Project':
3742 3746 readUnitConfObj = fatherObj.getReadUnitObj()
3743 3747 self.configUPWindowObj.dataTypeProject = str(readUnitConfObj.datatype)
3744 3748
3745 3749 self.configUPWindowObj.getfromWindowList.append(fatherObj)
3746 3750 self.configUPWindowObj.loadTotalList()
3747 3751 self.configUPWindowObj.show()
3748 3752 self.configUPWindowObj.closed.connect(self.createPUWindow)
3749 3753
3750 3754 def createPUWindow(self):
3751 3755
3752 3756 self.console.clear()
3753 3757
3754 3758 if not self.configUPWindowObj.create:
3755 3759 return
3756 3760
3757 3761 fatherObj = self.configUPWindowObj.getFromWindow
3758 3762 datatype = self.configUPWindowObj.typeofUP
3759 3763
3760 3764 if fatherObj.getElementName() == 'Project':
3761 3765 inputId = fatherObj.getReadUnitId()
3762 3766 projectObjView = fatherObj
3763 3767 else:
3764 3768 inputId = fatherObj.getId()
3765 3769 projectObjView = self.getSelectedProjectObj()
3766 3770
3767 3771 #----------------------------
3768 3772 puObj = self.createProcUnitView(projectObjView, datatype, inputId)
3769 3773 #----------------------------
3770 3774 self.addPU2ProjectExplorer(id=puObj.getId(), name=datatype)
3771 3775
3772 3776 self.showtabPUCreated(datatype)
3773 3777
3774 3778 self.setInputsPU_View(datatype)
3775 3779
3776 3780 self.showPUinitView()
3777 3781
3778 3782 def addFTPConf2Operation(self, puObj, opObj):
3779 3783
3780 3784 if self.temporalFTP.create:
3781 3785 server, remotefolder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.temporalFTP.recover()
3782 3786 else:
3783 3787 self.temporalFTP.setwithoutconfiguration()
3784 3788 server, remotefolder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.temporalFTP.recover()
3785 3789
3786 3790 # opObj.addParameter(name='server', value=server, format='str')
3787 3791 # opObj.addParameter(name='folder', value=remotefolder, format='str')
3788 3792 # opObj.addParameter(name='username', value=username, format='str')
3789 3793 # opObj.addParameter(name='password', value=password, format='str')
3790 3794
3791 3795 if ftp_wei:
3792 3796 opObj.addParameter(name='ftp_wei', value=int(ftp_wei), format='int')
3793 3797 if exp_code:
3794 3798 opObj.addParameter(name='exp_code', value=int(exp_code), format='int')
3795 3799 if sub_exp_code:
3796 3800 opObj.addParameter(name='sub_exp_code', value=int(sub_exp_code), format='int')
3797 3801 if plot_pos:
3798 3802 opObj.addParameter(name='plot_pos', value=int(plot_pos), format='int')
3799 3803
3800 3804 if puObj.datatype == "Spectra":
3801 3805 value = self.specGgraphftpratio.text()
3802 3806 if puObj.datatype == "SpectraHeis":
3803 3807 value = self.specHeisGgraphftpratio.text()
3804 3808
3805 3809 if not value == "":
3806 3810 try:
3807 3811 value = int(value)
3808 3812 except:
3809 3813 self.console.clear()
3810 3814 self.console.append("Please fill Ratio on the textbox")
3811 3815 return 0
3812 3816
3813 3817 opObj.addParameter(name='wr_period', value=value, format='int')
3814 3818
3815 3819 def createFTPProcUnitView(self, server, username, password, remotefolder,
3816 3820 ftp_wei, exp_code, sub_exp_code, plot_pos,
3817 3821 localfolder='./', extension='.png', period='60', protocol='ftp'):
3818 3822
3819 3823 projectObj = self.getSelectedProjectObj()
3820 3824 procUnitConfObj = projectObj.getProcUnitObjByName(name="SendToServer")
3821 3825
3822 3826 if not procUnitConfObj:
3823 3827 procUnitConfObj = projectObj.addProcUnit(name="SendToServer")
3824 3828 else:
3825 3829 procUnitConfObj.removeOperations()
3826 3830
3827 3831 procUnitConfObj.addParameter(name='server', value=server, format='str')
3828 3832 procUnitConfObj.addParameter(name='username', value=username, format='str')
3829 3833 procUnitConfObj.addParameter(name='password', value=password, format='str')
3830 3834 procUnitConfObj.addParameter(name='localfolder', value=localfolder, format='str')
3831 3835 procUnitConfObj.addParameter(name='remotefolder', value=remotefolder, format='str')
3832 3836 procUnitConfObj.addParameter(name='ext', value=extension, format='str')
3833 3837 procUnitConfObj.addParameter(name='period', value=period, format='int')
3834 3838 procUnitConfObj.addParameter(name='protocol', value=protocol, format='str')
3835 3839
3836 3840 procUnitConfObj.addParameter(name='ftp_wei', value=ftp_wei, format='str')
3837 3841 procUnitConfObj.addParameter(name='exp_code', value=exp_code, format='str')
3838 3842 procUnitConfObj.addParameter(name='sub_exp_code', value=sub_exp_code, format='str')
3839 3843 procUnitConfObj.addParameter(name='plot_pos', value=plot_pos, format='str')
3840 3844
3841 3845 self.__puObjDict[procUnitConfObj.getId()] = procUnitConfObj
3842 3846
3843 3847 self.__ftpProcUnitAdded = True
3844 3848 self.__ftpProcUnitId = procUnitConfObj.getId()
3845 3849
3846 3850 def removeFTPProcUnitView(self):
3847 3851
3848 3852 projectObj = self.getSelectedProjectObj()
3849 3853 procUnitConfObj = projectObj.getProcUnitObjByName(name="SendToServer")
3850 3854
3851 3855 self.__ftpProcUnitAdded = False
3852 3856 self.__ftpProcUnitId = None
3853 3857
3854 3858 if not procUnitConfObj:
3855 3859 return
3856 3860
3857 3861 procUnitConfObj.removeOperations()
3858 3862
3859 3863 self.__puObjDict.pop(procUnitConfObj.getId())
3860 3864
3861 3865 def bufferProject(self, caracteristica, principal, description):
3862 3866
3863 3867 self.projectProperCaracteristica.append(caracteristica)
3864 3868 self.projectProperPrincipal.append(principal)
3865 3869 self.projectProperDescripcion.append(description)
3866 3870 return self.projectProperCaracteristica, self.projectProperPrincipal, self.projectProperDescripcion
3867 3871
3868 3872
3869 3873 def showProjectProperties(self, projectObjView):
3870 3874
3871 3875 project_name, description = projectObjView.name, projectObjView.description
3872 3876
3873 3877 id = projectObjView.id
3874 3878 readUnitId = projectObjView.getReadUnitId()
3875 3879 readUnitObj = projectObjView.getProcUnitObj(readUnitId)
3876 3880 operationObj = readUnitObj.getOperationObj(name='run')
3877 3881
3878 3882
3879 3883 datatype = operationObj.getParameterValue(parameterName='datatype')
3880 3884 dpath = operationObj.getParameterValue(parameterName='path')
3881 3885 startDate = operationObj.getParameterValue(parameterName='startDate')
3882 3886 endDate = operationObj.getParameterValue(parameterName='endDate')
3883 3887 startDate = str(startDate)
3884 3888 endDate = str(endDate)
3885 3889 startDateList = startDate.split('-')
3886 3890 endDateList = endDate.split('-')
3887 3891 startDate = startDateList[0] + "/" + startDateList[1] + "/" + startDateList[2]
3888 3892 endDate = endDateList[0] + "/" + endDateList[1] + "/" + endDateList[2]
3889 3893
3890 3894 startTime = operationObj.getParameterValue(parameterName='startTime')
3891 3895 endTime = operationObj.getParameterValue(parameterName='endTime')
3892 3896 online = operationObj.getParameterValue(parameterName='online')
3893 3897 walk = operationObj.getParameterValue(parameterName='walk')
3894 3898 delay = operationObj.getParameterValue(parameterName='delay')
3895 3899 try:
3896 3900 set = operationObj.getParameterValue(parameterName='set')
3897 3901 except:
3898 3902 set = " "
3899 3903
3900 3904 if online == 0:
3901 3905 remode = "offline"
3902 3906 else:
3903 3907 remode = "online"
3904 3908
3905 3909 if walk == 0:
3906 3910 walk_str = 'On Files'
3907 3911 else:
3908 3912 walk_str = 'On Folder'
3909 3913
3910 3914 self.bufferProject("Properties", "Name", project_name),
3911 3915 self.bufferProject("Properties", "Data Path", dpath)
3912 3916 self.bufferProject("Properties", "Workspace", self.pathWorkSpace)
3913 3917 self.bufferProject("Parameters", "Read Mode ", remode)
3914 3918 self.bufferProject("Parameters", "DataType ", datatype)
3915 3919 self.bufferProject("Parameters", "Start Date", str(startDate))
3916 3920 self.bufferProject("Parameters", "End Date ", str(endDate))
3917 3921 self.bufferProject("Parameters", "Start Time", str(startTime))
3918 3922 self.bufferProject("Parameters", "End Time ", str(endTime))
3919 3923 self.bufferProject("Parameters", "Delay ", str(delay))
3920 3924 try:
3921 3925 set = operationObj.getParameterValue(parameterName='set')
3922 3926 self.bufferProject("Parameters", "Set ", set)
3923 3927 except:
3924 3928 set = " "
3925 3929 self.bufferProject("Parameters", "Walk ", str(walk_str))
3926 3930 self.bufferProject("Parameters", "Time zone", "Local")
3927 3931 self.bufferProject("Description", "Summary ", description)
3928 3932
3929 3933 self.propertiesModel = treeModel()
3930 3934 self.propertiesModel.showProjectParms(self.projectProperCaracteristica, self.projectProperPrincipal, self.projectProperDescripcion)
3931 3935 self.treeProjectProperties.setModel(self.propertiesModel)
3932 3936 self.treeProjectProperties.expandAll()
3933 3937 self.treeProjectProperties.resizeColumnToContents(0)
3934 3938 self.treeProjectProperties.resizeColumnToContents(1)
3935 3939
3936 3940 self.projectProperCaracteristica = []
3937 3941 self.projectProperPrincipal = []
3938 3942 self.projectProperDescripcion = []
3939 3943
3940 3944 return datatype , dpath , startDate , endDate, startTime, endTime, online, delay, walk, set
3941 3945
3942 3946 def showPUinitView(self):
3943 3947 self.propertiesModel = treeModel()
3944 3948 self.propertiesModel.initPUVoltageView()
3945 3949 self.treeProjectProperties.setModel(self.propertiesModel)
3946 3950 self.treeProjectProperties.expandAll()
3947 3951 self.treeProjectProperties.allColumnsShowFocus()
3948 3952 self.treeProjectProperties.resizeColumnToContents(1)
3949 3953
3950 3954 def bufferVoltage(self, caracteristica, principal, description):
3951 3955 self.volProperCaracteristica.append(caracteristica)
3952 3956 self.volProperPrincipal.append(principal)
3953 3957 self.volProperDescripcion.append(description)
3954 3958 return self.volProperCaracteristica, self.volProperPrincipal, self.volProperDescripcion
3955 3959
3956 3960 def showPUVoltageProperties(self, puObj):
3957 3961
3958 3962
3959 3963 type = puObj.name
3960 3964 self.bufferVoltage("Processing Unit", "Type", type)
3961 3965
3962 3966 opObj = puObj.getOperationObj(name="setRadarFrequency")
3963 3967 if opObj == None:
3964 3968 radarfrequency = None
3965 3969 else:
3966 3970 value = opObj.getParameterValue(parameterName='frequency')
3967 3971 value = str(value)
3968 3972 radarfrequency = value
3969 3973 self.bufferVoltage("Processing Unit", "Radar Frequency", radarfrequency)
3970 3974
3971 3975 opObj = puObj.getOperationObj(name="selectChannels")
3972 3976 if opObj == None:
3973 3977 channel = None
3974 3978 else:
3975 3979 value = opObj.getParameterValue(parameterName='channelList')
3976 3980 value = str(value)[1:-1]
3977 3981 channel = value
3978 3982 self.bufferVoltage("Processing Unit", "Select Channel", channel)
3979 3983
3980 3984
3981 3985
3982 3986 opObj = puObj.getOperationObj(name="selectHeights")
3983 3987 if opObj == None:
3984 3988 heights = None
3985 3989 else:
3986 3990 value1 = int(opObj.getParameterValue(parameterName='minHei'))
3987 3991 value1 = str(value1)
3988 3992 value2 = int(opObj.getParameterValue(parameterName='maxHei'))
3989 3993 value2 = str(value2)
3990 3994 value = value1 + "," + value2
3991 3995 heights = value
3992 3996 self.bufferVoltage("Processing Unit", "Select Heights", heights)
3993 3997
3994 3998
3995 3999 opObj = puObj.getOperationObj(name="filterByHeights")
3996 4000 if opObj == None:
3997 4001 filter = None
3998 4002 else:
3999 4003 value = opObj.getParameterValue(parameterName='window')
4000 4004 value = str(value)
4001 4005 filter = value
4002 4006 self.bufferVoltage("Processing Unit", "Filter", filter)
4003 4007
4004 4008
4005 4009 opObj = puObj.getOperationObj(name="ProfileSelector")
4006 4010 if opObj == None:
4007 4011 profile = None
4008 4012 else:
4009 4013 for parmObj in opObj.getParameterObjList():
4010 4014 if parmObj.name == "profileRangeList":
4011 4015 value = opObj.getParameterValue(parameterName='profileRangeList')
4012 4016 value = str(value)[1:-1]
4013 4017 profile = value
4014 4018 self.bufferVoltage("Processing Unit", "Select Profile", profile)
4015 4019
4016 4020 if parmObj.name == "profileList":
4017 4021 value = opObj.getParameterValue(parameterName='profileList')
4018 4022 value = str(value)[1:-1]
4019 4023 profile = value
4020 4024 self.bufferVoltage("Processing Unit", "Select Profile", profile)
4021 4025
4022 4026 opObj = puObj.getOperationObj(name="CohInt")
4023 4027 if opObj == None:
4024 4028 coherentintegration = None
4025 4029 else:
4026 4030 value = opObj.getParameterValue(parameterName='n')
4027 4031 coherentintegration = value
4028 4032 self.bufferVoltage("Processing Unit", "Coherente Integration", coherentintegration)
4029 4033
4030 4034
4031 4035
4032 4036 opObj = puObj.getOperationObj(name="Decoder")
4033 4037 if opObj == None:
4034 4038 self.volOpCebDecodification.setCheckState(0)
4035 4039 code = None
4036 4040 mode = None
4037 4041 else:
4038 4042 self.volOpCebDecodification.setCheckState(QtCore.Qt.Checked)
4039 4043 try:
4040 4044 valueBaud = opObj.getParameterValue(parameterName='nBaud')
4041 4045 except:
4042 4046 status = "off"
4043 4047 try:
4044 4048 valueCode = opObj.getParameterValue(parameterName='nCode')
4045 4049 status = "on"
4046 4050 except:
4047 4051 status = "off"
4048 4052
4049 4053 if not status == "off":
4050 4054 if int(valueCode) == 1:
4051 4055 Comp = ""
4052 4056 else:
4053 4057 Comp = "+" + "Comp."
4054 4058 code = "Barker" + str(valueBaud) + str(Comp)
4055 4059 else:
4056 4060 code = "Default"
4057 4061 self.bufferVoltage("Decodification", "Code", code)
4058 4062
4059 4063 try:
4060 4064 value = opObj.getParameterValue(parameterName='mode')
4061 4065 status = "on"
4062 4066 except:
4063 4067 status = "off"
4064 4068
4065 4069 if not status == "off":
4066 4070 self.volOpComMode.setCurrentIndex(value)
4067 4071 if int(value) == 0:
4068 4072 mode = "Time"
4069 4073 else:
4070 4074 mode = "freq" + str(value)
4071 4075 else:
4072 4076 mode = "Default"
4073 4077 self.bufferVoltage("Decodification", "Mode", mode)
4074 4078
4075 4079 # graph
4076 4080 # opObj = puObj.getOperationObj(name='Plot')
4077 4081 opObj = puObj.getOperationObj(name='Scope')
4078 4082 if opObj == None:
4079 4083 self.volGraphCebshow.setCheckState(0)
4080 4084 operation = "Disabled"
4081 4085 channelList = None
4082 4086 freq_vel = None
4083 4087 heightsrange = None
4084 4088 else:
4085 4089 operation = 'Enabled'
4086 4090 self.bufferVoltage("Scope", "Operation", operation),
4087 4091 self.volGraphCebshow.setCheckState(QtCore.Qt.Checked)
4088 4092 value = opObj.getParameterObj(parameterName='channelList')
4089 4093 if value == None:
4090 4094 channelList = None
4091 4095 else:
4092 4096 value = opObj.getParameterValue(parameterName='channelList')
4093 4097 value = str(value)[1:-1]
4094 4098 channelList = value
4095 4099 self.bufferVoltage("Scope", "Channel List", channelList)
4096 4100
4097 4101
4098 4102 value1 = opObj.getParameterObj(parameterName='xmin')
4099 4103 if value1 == None:
4100 4104 freq_vel = None
4101 4105 else:
4102 4106 value1 = opObj.getParameterValue(parameterName='xmin')
4103 4107 value1 = str(value1)
4104 4108 value2 = opObj.getParameterObj(parameterName='xmax')
4105 4109 if value2 == None:
4106 4110 freq_vel = None
4107 4111 else:
4108 4112 value2 = opObj.getParameterValue(parameterName='xmax')
4109 4113 value2 = str(value2)
4110 4114 value = value1 + "," + value2
4111 4115 freq_vel = value
4112 4116 self.bufferVoltage("Scope", "Freq/Vel", freq_vel)
4113 4117
4114 4118 value1 = opObj.getParameterObj(parameterName='ymin')
4115 4119 if value1 == None:
4116 4120 heightsrange = None
4117 4121 else:
4118 4122 value1 = opObj.getParameterValue(parameterName='ymin')
4119 4123 value1 = str(value1)
4120 4124 value2 = opObj.getParameterObj(parameterName='ymax')
4121 4125 if value2 == None:
4122 4126 fheightsrange = None
4123 4127 else:
4124 4128 value2 = opObj.getParameterValue(parameterName='ymax')
4125 4129 value2 = str(value2)
4126 4130 value = value1 + "," + value2
4127 4131 heightsrange = value
4128 4132 self.bufferVoltage("Scope", "Height Range", heightsrange)
4129 4133
4130 4134 parmObj = opObj.getParameterObj(parameterName="figpath")
4131 4135 if parmObj == None:
4132 4136 self.volGraphCebSave.setCheckState(QtCore.Qt.Unchecked)
4133 4137 figpath = None
4134 4138 else:
4135 4139 self.volGraphCebSave.setCheckState(QtCore.Qt.Checked)
4136 4140 value = opObj.getParameterValue(parameterName='figpath')
4137 4141 figpath = value
4138 4142 self.bufferVoltage("Scope", "Path", figpath)
4139 4143 # outputVoltageWrite
4140 4144 opObj = puObj.getOperationObj(name='VoltageWriter')
4141 4145 if opObj == None:
4142 4146 pass
4143 4147 else:
4144 4148 operation = 'Enabled'
4145 4149 self.bufferVoltage("Output", "Operation", operation)
4146 4150 value = opObj.getParameterObj(parameterName='path')
4147 4151 if value == None:
4148 4152 path = None
4149 4153 else:
4150 4154 value = opObj.getParameterValue(parameterName='path')
4151 4155 path = str(value)
4152 4156 self.bufferVoltage("Output", "Path", path)
4153 4157 value = opObj.getParameterObj(parameterName='blocksPerFile')
4154 4158 if value == None:
4155 4159 blocksperfile = None
4156 4160 else:
4157 4161 value = opObj.getParameterValue(parameterName='blocksPerFile')
4158 4162 blocksperfile = str(value)
4159 4163 self.bufferVoltage("Output", "BlocksPerFile", blocksperfile)
4160 4164 value = opObj.getParameterObj(parameterName='profilesPerBlock')
4161 4165 if value == None:
4162 4166 profilesPerBlock = None
4163 4167 else:
4164 4168 value = opObj.getParameterValue(parameterName='profilesPerBlock')
4165 4169 profilesPerBlock = str(value)
4166 4170 self.bufferVoltage("Output", "ProfilesPerBlock", profilesPerBlock)
4167 4171
4168 4172
4169 4173 # set model PU Properties
4170 4174
4171 4175 self.propertiesModel = treeModel()
4172 4176 self.propertiesModel.showPUVoltageParms(self.volProperCaracteristica, self.volProperPrincipal, self.volProperDescripcion)
4173 4177 self.volProperCaracteristica = []
4174 4178 self.volProperPrincipal = []
4175 4179 self.volProperDescripcion = []
4176 4180 self.treeProjectProperties.setModel(self.propertiesModel)
4177 4181 self.treeProjectProperties.expandAll()
4178 4182 self.treeProjectProperties.allColumnsShowFocus()
4179 4183 self.treeProjectProperties.resizeColumnToContents(0)
4180 4184 self.treeProjectProperties.resizeColumnToContents(1)
4181 4185
4182 4186 def bufferSpectra(self, caracteristica, principal, description):
4183 4187 self.specProperCaracteristica.append(caracteristica)
4184 4188 self.specProperPrincipal.append(principal)
4185 4189 self.specProperDescripcion.append(description)
4186 4190 return self.specProperCaracteristica, self.specProperPrincipal, self.specProperDescripcion
4187 4191
4188 4192 def showPUSpectraProperties(self, puObj):
4189 4193 type = puObj.name
4190 4194 self.bufferSpectra("Processing Unit", "Type", type)
4191 4195
4192 4196 opObj = puObj.getOperationObj(name="setRadarFrequency")
4193 4197 if opObj == None:
4194 4198 radarfrequency = None
4195 4199 else:
4196 4200 value = opObj.getParameterValue(parameterName='frequency')
4197 4201 value = str(value)
4198 4202 radarfrequency = value
4199 4203 self.bufferSpectra("Processing Unit", "Radar Frequency", radarfrequency)
4200 4204
4201 4205
4202 4206 opObj = puObj.getOperationObj(name="run")
4203 4207 if opObj == None:
4204 4208 self.specOpnFFTpoints.clear()
4205 4209 self.specOpProfiles.clear()
4206 4210 self.specOpippFactor.clear()
4207 4211 else:
4208 4212 parmObj = opObj.getParameterObj(parameterName='nProfiles')
4209 4213 if parmObj == None:
4210 4214 nProfiles = None
4211 4215 else:
4212 4216 value = opObj.getParameterValue(parameterName='nProfiles')
4213 4217 nProfiles = value
4214 4218 self.bufferSpectra("Processing Unit", "nProfiles", nProfiles)
4215 4219
4216 4220 parmObj = opObj.getParameterObj(parameterName='nFFTPoints')
4217 4221 if parmObj == None:
4218 4222 nFFTPoints = None
4219 4223 else:
4220 4224 value = opObj.getParameterValue(parameterName='nFFTPoints')
4221 4225 nFFTPoints = value
4222 4226 self.bufferSpectra("Processing Unit", "nFFTpoints", nFFTPoints)
4223 4227
4224 4228 parmObj = opObj.getParameterObj(parameterName='ippFactor')
4225 4229 if parmObj == None:
4226 4230 ippFactor = None
4227 4231 else:
4228 4232 value = opObj.getParameterValue(parameterName='ippFactor')
4229 4233 ippFactor = value
4230 4234 self.bufferSpectra("Processing Unit", "Ipp Factor", ippFactor)
4231 4235
4232 4236
4233 4237 opObj = puObj.getOperationObj(name="run")
4234 4238 if opObj == None:
4235 4239 pairsList = None
4236 4240 else:
4237 4241 parm = opObj.getParameterObj(parameterName='pairsList')
4238 4242 if parm == None:
4239 4243 pairsList = None
4240 4244 else:
4241 4245 value = opObj.getParameterValue(parameterName='pairsList')
4242 4246 value = str(value)[1:-1]
4243 4247 pairsList = value
4244 4248 self.bufferSpectra("Processing Unit", "PairsList", pairsList)
4245 4249
4246 4250
4247 4251 opObj = puObj.getOperationObj(name="selectChannels")
4248 4252 if opObj == None:
4249 4253 channel = None
4250 4254 else:
4251 4255 value = opObj.getParameterValue(parameterName='channelList')
4252 4256 value = str(value)[1:-1]
4253 4257 channel = value
4254 4258 self.bufferSpectra("Processing Unit", "Channel", channel)
4255 4259
4256 4260 opObj = puObj.getOperationObj(name="selectHeights")
4257 4261 if opObj == None:
4258 4262 heights = None
4259 4263 else:
4260 4264 value1 = int(opObj.getParameterValue(parameterName='minHei'))
4261 4265 value1 = str(value1)
4262 4266 value2 = int(opObj.getParameterValue(parameterName='maxHei'))
4263 4267 value2 = str(value2)
4264 4268 value = value1 + "," + value2
4265 4269 heights = value
4266 4270 self.bufferSpectra("Processing Unit", "Heights", heights)
4267 4271
4268 4272 opObj = puObj.getOperationObj(name="IncohInt")
4269 4273 if opObj == None:
4270 4274 incoherentintegration = None
4271 4275 else:
4272 4276 try:
4273 4277 value = opObj.getParameterValue(parameterName='timeInterval')
4274 4278 except:
4275 4279 value = opObj.getParameterValue(parameterName='n')
4276 4280
4277 4281 value = float(value)
4278 4282 incoherentintegration = str(value)
4279 4283 self.bufferSpectra("Processing Unit", "Incoherent Integration", incoherentintegration)
4280 4284
4281 4285
4282 4286 opObj = puObj.getOperationObj(name="removeDC")
4283 4287 if opObj == None:
4284 4288 removeDC = None
4285 4289 else:
4286 4290 value = opObj.getParameterValue(parameterName='mode')
4287 4291 self.bufferSpectra("Processing Unit", "Remove DC", value)
4288 4292
4289 4293 opObj = puObj.getOperationObj(name="removeInterference")
4290 4294 if opObj == None:
4291 4295 removeInterference = None
4292 4296 else:
4293 4297 self.bufferSpectra("Processing Unit", "Remove Interference", "1")
4294 4298
4295 4299 opObj = puObj.getOperationObj(name="getNoise")
4296 4300 if opObj == None:
4297 4301 getNoise = None
4298 4302 else:
4299 4303 value1 = opObj.getParameterObj(parameterName='minHei')
4300 4304 if value1 == None:
4301 4305 getNoise = None
4302 4306 getNoise = "Default"
4303 4307 self.bufferSpectra("Processing Unit", "Get Noise", getNoise)
4304 4308
4305 4309 else:
4306 4310 value1 = opObj.getParameterValue(parameterName='minHei')
4307 4311 value1 = str(value1)
4308 4312 value2 = opObj.getParameterObj(parameterName='maxHei')
4309 4313 if value2 == None:
4310 4314 getNoise = None
4311 4315 value = value1
4312 4316 getNoise = value
4313 4317 self.bufferSpectra("Processing Unit", "Get Noise", getNoise)
4314 4318 else:
4315 4319 value2 = opObj.getParameterValue(parameterName='maxHei')
4316 4320 value2 = str(value2)
4317 4321 value3 = opObj.getParameterObj(parameterName='minVel')
4318 4322 if value3 == None:
4319 4323 getNoise = None
4320 4324 value = value1 + "," + value2
4321 4325 getNoise = value
4322 4326 self.bufferSpectra("Processing Unit", "Get Noise", getNoise)
4323 4327 else:
4324 4328 value3 = opObj.getParameterValue(parameterName='minVel')
4325 4329 value3 = str(value3)
4326 4330 value4 = opObj.getParameterObj(parameterName='maxVel')
4327 4331 if value4 == None:
4328 4332 getNoise = None
4329 4333 value = value1 + "," + value2 + ',' + value3
4330 4334 getNoise = value
4331 4335 self.bufferSpectra("Processing Unit", "Get Noise", getNoise)
4332 4336 else:
4333 4337 value4 = opObj.getParameterValue(parameterName='maxVel')
4334 4338 value4 = str(value4)
4335 4339 value = value1 + "," + value2 + ',' + value3 + ',' + value4
4336 4340 getNoise = value
4337 4341 self.bufferSpectra("Processing Unit", "Get Noise", getNoise)
4338 4342
4339 4343 opObj = puObj.getOperationObj(name='SpectraPlot')
4340 4344 # opObj = puObj.getOpObjfromParamValue(value="SpectraPlot")
4341 4345
4342 4346 if opObj == None:
4343 4347 operationSpectraPlot = "Disabled"
4344 4348 freq_vel = None
4345 4349 heightsrange = None
4346 4350 channelListSpectraPlot = None
4347 4351 else:
4348 4352 operationSpectraPlot = "Enable"
4349 4353 self.bufferSpectra("Spectra Plot", "Operation", operationSpectraPlot)
4350 4354 parmObj = opObj.getParameterObj(parameterName='channelList')
4351 4355 if parmObj == None:
4352 4356 channelListSpectraPlot = None
4353 4357 else:
4354 4358 value = opObj.getParameterValue(parameterName='channelList')
4355 4359 channelListSpectraPlot = str(value)[1:-1]
4356 4360 self.bufferSpectra("Spectra Plot", "Channel List", channelListSpectraPlot)
4357 4361
4358 4362
4359 4363 value1 = opObj.getParameterObj(parameterName='xmin')
4360 4364 if value1 == None:
4361 4365 freq_vel = None
4362 4366 else:
4363 4367 value1 = opObj.getParameterValue(parameterName='xmin')
4364 4368 value1 = str(value1)
4365 4369 value2 = opObj.getParameterObj(parameterName='xmax')
4366 4370 if value2 == None:
4367 4371 freq_vel = None
4368 4372 else:
4369 4373 value2 = opObj.getParameterValue(parameterName='xmax')
4370 4374 value2 = str(value2)
4371 4375 value = value1 + "," + value2
4372 4376 freq_vel = value
4373 4377 self.bufferSpectra("Spectra Plot", "Freq/Vel", freq_vel)
4374 4378
4375 4379 value1 = opObj.getParameterObj(parameterName='ymin')
4376 4380 if value1 == None:
4377 4381 heightsrange = None
4378 4382 else:
4379 4383 value1 = opObj.getParameterValue(parameterName='ymin')
4380 4384 value1 = str(value1)
4381 4385 value2 = opObj.getParameterObj(parameterName='ymax')
4382 4386 if value2 == None:
4383 4387 fheightsrange = None
4384 4388 else:
4385 4389 value2 = opObj.getParameterValue(parameterName='ymax')
4386 4390 value2 = str(value2)
4387 4391 value = value1 + "," + value2
4388 4392 heightsrange = value
4389 4393 self.bufferSpectra("Spectra Plot", "Height Range", heightsrange)
4390 4394
4391 4395 value1 = opObj.getParameterObj(parameterName='zmin')
4392 4396 if value1 == None:
4393 4397 dBrange = None
4394 4398 else:
4395 4399 value1 = opObj.getParameterValue(parameterName='zmin')
4396 4400 value1 = str(value1)
4397 4401 value2 = opObj.getParameterObj(parameterName='zmax')
4398 4402 if value2 == None:
4399 4403 fdBrange = None
4400 4404 else:
4401 4405 value2 = opObj.getParameterValue(parameterName='zmax')
4402 4406 value2 = str(value2)
4403 4407 value = value1 + "," + value2
4404 4408 dbrange = value
4405 4409 self.bufferSpectra("Spectra Plot", "dB Range", dbrange)
4406 4410
4407 4411 parmObj = opObj.getParameterObj(parameterName="figpath")
4408 4412 if parmObj == None:
4409 4413 path = None
4410 4414 else:
4411 4415 path = opObj.getParameterValue(parameterName='figpath')
4412 4416 self.bufferSpectra("Spectra Plot", "Save Path", path)
4413 4417
4414 4418 parmObj = opObj.getParameterObj(parameterName="ftp")
4415 4419 if parmObj == None:
4416 4420 status = 'disable'
4417 4421 else:
4418 4422 status = 'enable'
4419 4423 self.bufferSpectra("Spectra Plot", "FTP", status)
4420 4424 self.showWr_Period(puObj, opObj, nameplotop="Spectra Plot")
4421 4425 # self.saveFTPvalues(opObj)
4422 4426
4423 4427 opObj = puObj.getOperationObj(name='CrossSpectraPlot')
4424 4428 # opObj = puObj.getOpObjfromParamValue(value="CrossSpectraPlot")
4425 4429 if opObj == None:
4426 4430 self.specGraphCebCrossSpectraplot.setCheckState(0)
4427 4431 operationCrossSpectraPlot = "Disabled"
4428 4432 channelList = None
4429 4433 freq_vel = None
4430 4434 heightsrange = None
4431 4435 else:
4432 4436 operationCrossSpectraPlot = "Enable"
4433 4437 self.specGraphCebCrossSpectraplot.setCheckState(QtCore.Qt.Checked)
4434 4438 self.bufferSpectra("Cross Spectra Plot", "Operation", operationCrossSpectraPlot)
4435 4439
4436 4440 value1 = opObj.getParameterObj(parameterName='xmin')
4437 4441 if value1 == None:
4438 4442 freq_vel = None
4439 4443 else:
4440 4444 value1 = opObj.getParameterValue(parameterName='xmin')
4441 4445 value1 = str(value1)
4442 4446 value2 = opObj.getParameterObj(parameterName='xmax')
4443 4447 if value2 == None:
4444 4448 freq_vel = None
4445 4449 else:
4446 4450 value2 = opObj.getParameterValue(parameterName='xmax')
4447 4451 value2 = str(value2)
4448 4452 value = value1 + "," + value2
4449 4453 freq_vel = value
4450 4454 self.bufferSpectra("Cross Spectra Plot", "Freq/Vel", freq_vel)
4451 4455
4452 4456 value1 = opObj.getParameterObj(parameterName='ymin')
4453 4457 if value1 == None:
4454 4458 heightsrange = None
4455 4459 else:
4456 4460 value1 = opObj.getParameterValue(parameterName='ymin')
4457 4461 value1 = str(value1)
4458 4462 value2 = opObj.getParameterObj(parameterName='ymax')
4459 4463 if value2 == None:
4460 4464 fheightsrange = None
4461 4465 else:
4462 4466 value2 = opObj.getParameterValue(parameterName='ymax')
4463 4467 value2 = str(value2)
4464 4468 value = value1 + "," + value2
4465 4469 heightsrange = value
4466 4470 self.bufferSpectra("Cross Spectra Plot", "Height Range", heightsrange)
4467 4471
4468 4472 value1 = opObj.getParameterObj(parameterName='zmin')
4469 4473 if value1 == None:
4470 4474 dBrange = None
4471 4475 else:
4472 4476 value1 = opObj.getParameterValue(parameterName='zmin')
4473 4477 value1 = str(value1)
4474 4478 value2 = opObj.getParameterObj(parameterName='zmax')
4475 4479 if value2 == None:
4476 4480 fdBrange = None
4477 4481 else:
4478 4482 value2 = opObj.getParameterValue(parameterName='zmax')
4479 4483 value2 = str(value2)
4480 4484 value = value1 + "," + value2
4481 4485 dbrange = value
4482 4486 self.bufferSpectra("Cross Spectra Plot", "dB Range", dbrange)
4483 4487
4484 4488 parmObj = opObj.getParameterObj(parameterName="figpath")
4485 4489 if parmObj == None:
4486 4490 path = None
4487 4491 else:
4488 4492 path = opObj.getParameterValue(parameterName='figpath')
4489 4493 self.bufferSpectra("Cross Spectra Plot", "Save Path", path)
4490 4494
4491 4495 parmObj = opObj.getParameterObj(parameterName="ftp")
4492 4496 if parmObj == None:
4493 4497 status = 'disable'
4494 4498 else:
4495 4499 status = 'enable'
4496 4500 self.bufferSpectra("Cross Spectra Plot", "FTP", status)
4497 4501 self.showWr_Period(puObj, opObj, nameplotop="Cross Spectra Plot")
4498 4502 # self.saveFTPvalues(opObj)
4499 4503
4500 4504 opObj = puObj.getOperationObj(name='RTIPlot')
4501 4505 # opObj = puObj.getOpObjfromParamValue(value="RTIPlot")
4502 4506 if opObj == None:
4503 4507 self.specGraphCebRTIplot.setCheckState(0)
4504 4508 operationRTIPlot = "Disabled"
4505 4509 channelList = None
4506 4510 freq_vel = None
4507 4511 heightsrange = None
4508 4512 else:
4509 4513 operationRTIPlot = "Enable"
4510 4514 self.specGraphCebRTIplot.setCheckState(QtCore.Qt.Checked)
4511 4515 self.bufferSpectra("RTI Plot", "Operation", operationRTIPlot)
4512 4516 parmObj = opObj.getParameterObj(parameterName='channelList')
4513 4517 if parmObj == None:
4514 4518 channelListRTIPlot = None
4515 4519 else:
4516 4520 value = opObj.getParameterValue(parameterName='channelList')
4517 4521 channelListRTIPlot = str(value)[1:-1]
4518 4522 self.bufferSpectra("RTI Plot", "Channel List", channelListRTIPlot)
4519 4523
4520 4524
4521 4525 value1 = opObj.getParameterObj(parameterName='xmin')
4522 4526 if value1 == None:
4523 4527 freq_vel = None
4524 4528 else:
4525 4529 value1 = opObj.getParameterValue(parameterName='xmin')
4526 4530 value1 = str(value1)
4527 4531 value2 = opObj.getParameterObj(parameterName='xmax')
4528 4532 if value2 == None:
4529 4533 freq_vel = None
4530 4534 else:
4531 4535 value2 = opObj.getParameterValue(parameterName='xmax')
4532 4536 value2 = str(value2)
4533 4537 value = value1 + "," + value2
4534 4538 tmintmax = value
4535 4539 self.bufferSpectra("RTI Plot", "Tmin,Tmax", tmintmax)
4536 4540
4537 4541 parmObj = opObj.getParameterObj(parameterName='timerange')
4538 4542 if parmObj == None:
4539 4543 timerange = None
4540 4544 else:
4541 4545 value = opObj.getParameterValue(parameterName='timerange')
4542 4546 timerange = str(value)
4543 4547 self.bufferSpectra("RTI Plot", "Time Range", timerange)
4544 4548
4545 4549 value1 = opObj.getParameterObj(parameterName='ymin')
4546 4550 if value1 == None:
4547 4551 heightsrange = None
4548 4552 else:
4549 4553 value1 = opObj.getParameterValue(parameterName='ymin')
4550 4554 value1 = str(value1)
4551 4555 value2 = opObj.getParameterObj(parameterName='ymax')
4552 4556 if value2 == None:
4553 4557 fheightsrange = None
4554 4558 else:
4555 4559 value2 = opObj.getParameterValue(parameterName='ymax')
4556 4560 value2 = str(value2)
4557 4561 value = value1 + "," + value2
4558 4562 heightsrange = value
4559 4563 self.bufferSpectra("RTI Plot", "Height Range", heightsrange)
4560 4564
4561 4565 value1 = opObj.getParameterObj(parameterName='zmin')
4562 4566 if value1 == None:
4563 4567 dBrange = None
4564 4568 else:
4565 4569 value1 = opObj.getParameterValue(parameterName='zmin')
4566 4570 value1 = str(value1)
4567 4571 value2 = opObj.getParameterObj(parameterName='zmax')
4568 4572 if value2 == None:
4569 4573 fdBrange = None
4570 4574 else:
4571 4575 value2 = opObj.getParameterValue(parameterName='zmax')
4572 4576 value2 = str(value2)
4573 4577 value = value1 + "," + value2
4574 4578 dbrange = value
4575 4579 self.bufferSpectra("RTI Plot", "dB Range", dbrange)
4576 4580
4577 4581 parmObj = opObj.getParameterObj(parameterName="figpath")
4578 4582 if parmObj == None:
4579 4583 path = None
4580 4584 else:
4581 4585 path = opObj.getParameterValue(parameterName='figpath')
4582 4586 self.bufferSpectra("RTI Plot", "Save Path", path)
4583 4587
4584 4588 parmObj = opObj.getParameterObj(parameterName="ftp")
4585 4589 if parmObj == None:
4586 4590 status = 'disable'
4587 4591 else:
4588 4592 status = 'enable'
4589 4593 self.bufferSpectra("RTI Plot", "FTP", status)
4590 4594 self.showWr_Period(puObj, opObj, nameplotop="RTI Plot")
4591 4595 # self.saveFTPvalues(opObj)
4592 4596
4593 4597 opObj = puObj.getOperationObj(name='CoherenceMap')
4594 4598 # opObj = puObj.getOpObjfromParamValue(value="CoherenceMap")
4595 4599 if opObj == None:
4596 4600 self.specGraphCebCoherencmap.setCheckState(0)
4597 4601 operationCoherenceMap = "Disabled"
4598 4602 channelList = None
4599 4603 freq_vel = None
4600 4604 heightsrange = None
4601 4605 else:
4602 4606 operationCoherenceMap = "Enable"
4603 4607 self.specGraphCebCoherencmap.setCheckState(QtCore.Qt.Checked)
4604 4608 self.bufferSpectra("Coherence Map Plot", "Operation", operationCoherenceMap)
4605 4609 parmObj = opObj.getParameterObj(parameterName='channelList')
4606 4610 if parmObj == None:
4607 4611 channelListRTIPlot = None
4608 4612 else:
4609 4613 value = opObj.getParameterValue(parameterName='channelList')
4610 4614 channelListRTIPlot = str(value)[1:-1]
4611 4615 self.bufferSpectra("Coherence Map Plot", "Channel List", channelListRTIPlot)
4612 4616
4613 4617
4614 4618 value1 = opObj.getParameterObj(parameterName='xmin')
4615 4619 if value1 == None:
4616 4620 freq_vel = None
4617 4621 else:
4618 4622 value1 = opObj.getParameterValue(parameterName='xmin')
4619 4623 value1 = str(value1)
4620 4624 value2 = opObj.getParameterObj(parameterName='xmax')
4621 4625 if value2 == None:
4622 4626 freq_vel = None
4623 4627 else:
4624 4628 value2 = opObj.getParameterValue(parameterName='xmax')
4625 4629 value2 = str(value2)
4626 4630 value = value1 + "," + value2
4627 4631 tmintmax = value
4628 4632 self.bufferSpectra("Coherence Map Plot", "Tmin,Tmax", tmintmax)
4629 4633
4630 4634 parmObj = opObj.getParameterObj(parameterName='timerange')
4631 4635 if parmObj == None:
4632 4636 timerange = None
4633 4637 else:
4634 4638 value = opObj.getParameterValue(parameterName='timerange')
4635 4639 timerange = str(value)
4636 4640 self.bufferSpectra("Coherence Map Plot", "Time Range", timerange)
4637 4641
4638 4642 value1 = opObj.getParameterObj(parameterName='ymin')
4639 4643 if value1 == None:
4640 4644 heightsrange = None
4641 4645 else:
4642 4646 value1 = opObj.getParameterValue(parameterName='ymin')
4643 4647 value1 = str(value1)
4644 4648 value2 = opObj.getParameterObj(parameterName='ymax')
4645 4649 if value2 == None:
4646 4650 fheightsrange = None
4647 4651 else:
4648 4652 value2 = opObj.getParameterValue(parameterName='ymax')
4649 4653 value2 = str(value2)
4650 4654 value = value1 + "," + value2
4651 4655 heightsrange = value
4652 4656 self.bufferSpectra("Coherence Map Plot", "Height Range", heightsrange)
4653 4657
4654 4658 value1 = opObj.getParameterObj(parameterName='zmin')
4655 4659 if value1 == None:
4656 4660 dBrange = None
4657 4661 else:
4658 4662 value1 = opObj.getParameterValue(parameterName='zmin')
4659 4663 value1 = str(value1)
4660 4664 value2 = opObj.getParameterObj(parameterName='zmax')
4661 4665 if value2 == None:
4662 4666 fdBrange = None
4663 4667 else:
4664 4668 value2 = opObj.getParameterValue(parameterName='zmax')
4665 4669 value2 = str(value2)
4666 4670 value = value1 + "," + value2
4667 4671 dbrange = value
4668 4672 self.bufferSpectra("Coherence Map Plot", "Magnitud", dbrange)
4669 4673
4670 4674 parmObj = opObj.getParameterObj(parameterName="figpath")
4671 4675 if parmObj == None:
4672 4676 path = None
4673 4677 else:
4674 4678 path = opObj.getParameterValue(parameterName='figpath')
4675 4679 self.bufferSpectra("Coherence Map Plot", "Save Path", path)
4676 4680
4677 4681 parmObj = opObj.getParameterObj(parameterName="ftp")
4678 4682 if parmObj == None:
4679 4683 status = 'disable'
4680 4684 else:
4681 4685 status = 'enable'
4682 4686 self.bufferSpectra("Coherence Map Plot", "FTP", status)
4683 4687 self.showWr_Period(puObj, opObj, nameplotop="Coherence Map Plot")
4684 4688 # self.saveFTPvalues(opObj)
4685 4689
4686 4690
4687 4691 opObj = puObj.getOperationObj(name='PowerProfilePlot')
4688 4692 # opObj = puObj.getOpObjfromParamValue(value="PowerProfilePlot")
4689 4693 if opObj == None:
4690 4694 self.specGraphPowerprofile.setCheckState(0)
4691 4695 operationPowerProfilePlot = "Disabled"
4692 4696 channelList = None
4693 4697 freq_vel = None
4694 4698 heightsrange = None
4695 4699 else:
4696 4700 operationPowerProfilePlot = "Enable"
4697 4701 self.specGraphPowerprofile.setCheckState(QtCore.Qt.Checked)
4698 4702 self.bufferSpectra("PowerProfile Plot", "Operation", operationPowerProfilePlot)
4699 4703 parmObj = opObj.getParameterObj(parameterName='channelList')
4700 4704 if parmObj == None:
4701 4705 channelListSpectraPlot = None
4702 4706 else:
4703 4707 value = opObj.getParameterValue(parameterName='channelList')
4704 4708 channelListSpectraPlot = str(value)[1:-1]
4705 4709 self.bufferSpectra("PowerProfile Plot", "Channel List", channelListSpectraPlot)
4706 4710
4707 4711
4708 4712 value1 = opObj.getParameterObj(parameterName='xmin')
4709 4713 if value1 == None:
4710 4714 freq_vel = None
4711 4715 else:
4712 4716 value1 = opObj.getParameterValue(parameterName='xmin')
4713 4717 value1 = str(value1)
4714 4718 value2 = opObj.getParameterObj(parameterName='xmax')
4715 4719 if value2 == None:
4716 4720 freq_vel = None
4717 4721 else:
4718 4722 value2 = opObj.getParameterValue(parameterName='xmax')
4719 4723 value2 = str(value2)
4720 4724 value = value1 + "," + value2
4721 4725 dbrange = value
4722 4726 self.bufferSpectra("PowerProfile Plot", "dbRange", dbrange)
4723 4727
4724 4728 value1 = opObj.getParameterObj(parameterName='ymin')
4725 4729 if value1 == None:
4726 4730 heightsrange = None
4727 4731 else:
4728 4732 value1 = opObj.getParameterValue(parameterName='ymin')
4729 4733 value1 = str(value1)
4730 4734 value2 = opObj.getParameterObj(parameterName='ymax')
4731 4735 if value2 == None:
4732 4736 fheightsrange = None
4733 4737 else:
4734 4738 value2 = opObj.getParameterValue(parameterName='ymax')
4735 4739 value2 = str(value2)
4736 4740 value = value1 + "," + value2
4737 4741 heightsrange = value
4738 4742 self.bufferSpectra("PowerProfile Plot", "Height Range", heightsrange)
4739 4743
4740 4744
4741 4745 parmObj = opObj.getParameterObj(parameterName="figpath")
4742 4746 if parmObj == None:
4743 4747 path = None
4744 4748 else:
4745 4749 path = opObj.getParameterValue(parameterName='figpath')
4746 4750 self.bufferSpectra("PowerProfile Plot", "Save Path", path)
4747 4751
4748 4752 parmObj = opObj.getParameterObj(parameterName="ftp")
4749 4753 if parmObj == None:
4750 4754 status = 'disable'
4751 4755 else:
4752 4756 status = 'enable'
4753 4757 self.bufferSpectra("PowerProfile Plot", "FTP", status)
4754 4758 self.showWr_Period(puObj, opObj, nameplotop="PowerProfile Plot")
4755 4759 # self.saveFTPvalues(opObj)
4756 4760
4757 4761 # noise
4758 4762 opObj = puObj.getOperationObj(name='Noise')
4759 4763 # opObj = puObj.getOpObjfromParamValue(value="Noise")
4760 4764 if opObj == None:
4761 4765 self.specGraphCebRTInoise.setCheckState(0)
4762 4766 operationRTINoise = "Disabled"
4763 4767 channelList = None
4764 4768 freq_vel = None
4765 4769 dbRange = None
4766 4770 else:
4767 4771 operationRTINoise = "Enable"
4768 4772 self.specGraphCebRTInoise.setCheckState(QtCore.Qt.Checked)
4769 4773 self.bufferSpectra("Noise Plot", "Operation", operationRTINoise)
4770 4774 parmObj = opObj.getParameterObj(parameterName='channelList')
4771 4775 if parmObj == None:
4772 4776 channelListRTINoise = None
4773 4777 else:
4774 4778 value = opObj.getParameterValue(parameterName='channelList')
4775 4779 channelListRTINoise = str(value)[1:-1]
4776 4780 self.bufferSpectra("Noise Plot", "Channel List", channelListRTINoise)
4777 4781
4778 4782
4779 4783 value1 = opObj.getParameterObj(parameterName='xmin')
4780 4784 if value1 == None:
4781 4785 freq_vel = None
4782 4786 else:
4783 4787 value1 = opObj.getParameterValue(parameterName='xmin')
4784 4788 value1 = str(value1)
4785 4789 value2 = opObj.getParameterObj(parameterName='xmax')
4786 4790 if value2 == None:
4787 4791 freq_vel = None
4788 4792 else:
4789 4793 value2 = opObj.getParameterValue(parameterName='xmax')
4790 4794 value2 = str(value2)
4791 4795 value = value1 + "," + value2
4792 4796 tmintmax = value
4793 4797 self.bufferSpectra("Noise Plot", "Tmin,Tmax", tmintmax)
4794 4798
4795 4799 parmObj = opObj.getParameterObj(parameterName='timerange')
4796 4800 if parmObj == None:
4797 4801 timerange = None
4798 4802 else:
4799 4803 value = opObj.getParameterValue(parameterName='timerange')
4800 4804 timerange = str(value)
4801 4805 self.bufferSpectra("Noise Plot", "Time Range", timerange)
4802 4806
4803 4807
4804 4808
4805 4809 value1 = opObj.getParameterObj(parameterName='ymin')
4806 4810 if value1 == None:
4807 4811 DBrange = None
4808 4812 else:
4809 4813 value1 = opObj.getParameterValue(parameterName='ymin')
4810 4814 value1 = str(value1)
4811 4815 value2 = opObj.getParameterObj(parameterName='ymax')
4812 4816 if value2 == None:
4813 4817 fdBrange = None
4814 4818 else:
4815 4819 value2 = opObj.getParameterValue(parameterName='ymax')
4816 4820 value2 = str(value2)
4817 4821 value = value1 + "," + value2
4818 4822 dBrange = value
4819 4823 self.bufferSpectra("Noise Plot", "dB Range", dBrange)
4820 4824
4821 4825 parmObj = opObj.getParameterObj(parameterName="figpath")
4822 4826 if parmObj == None:
4823 4827 path = None
4824 4828 else:
4825 4829 path = opObj.getParameterValue(parameterName='figpath')
4826 4830 self.bufferSpectra("Noise Plot", "Save Path", path)
4827 4831
4828 4832 parmObj = opObj.getParameterObj(parameterName="ftp")
4829 4833 if parmObj == None:
4830 4834 status = 'disable'
4831 4835 else:
4832 4836 status = 'enable'
4833 4837 self.bufferSpectra("Noise Plot", "FTP", status)
4834 4838 self.showWr_Period(puObj, opObj, nameplotop="Noise Plot")
4835 4839 # self.saveFTPvalues(opObj)
4836 4840
4837 4841 projectObj = self.getSelectedProjectObj()
4838 4842 ftpProcUnitConfObj = projectObj.getProcUnitObjByName(name="SendToServer")
4839 4843
4840 4844 if ftpProcUnitConfObj:
4841 4845
4842 4846 opObj = ftpProcUnitConfObj.getOperationObj(name='run')
4843 4847
4844 4848 server = opObj.getParameterValue(parameterName='server')
4845 4849 folder = opObj.getParameterValue(parameterName='remotefolder')
4846 4850 username = opObj.getParameterValue(parameterName='username')
4847 4851 password = opObj.getParameterValue(parameterName='password')
4848 4852 ftp_wei = opObj.getParameterValue(parameterName='ftp_wei')
4849 4853 exp_code = opObj.getParameterValue(parameterName='exp_code')
4850 4854 sub_exp_code = opObj.getParameterValue(parameterName='sub_exp_code')
4851 4855 plot_pos = opObj.getParameterValue(parameterName='plot_pos')
4852 4856 localfolder = opObj.getParameterValue(parameterName='localfolder')
4853 4857
4854 4858 self.bufferSpectra("FTP", "Server", server)
4855 4859 self.bufferSpectra("FTP", "Remote folder", folder)
4856 4860 self.bufferSpectra("FTP", "Local folder", localfolder)
4857 4861 self.bufferSpectra("FTP", "Username", username)
4858 4862 self.bufferSpectra("FTP", "Password", '*'*len(password))
4859 4863 self.bufferSpectra("FTP", "Ftp_wei", ftp_wei)
4860 4864 self.bufferSpectra("FTP", "Exp_code", exp_code)
4861 4865 self.bufferSpectra("FTP", "Sub_exp_code", sub_exp_code)
4862 4866 self.bufferSpectra("FTP", "Plot_pos", plot_pos)
4863 4867
4864 4868 # outputSpectraWrite
4865 4869 opObj = puObj.getOperationObj(name='SpectraWriter')
4866 4870 if opObj == None:
4867 4871 pass
4868 4872 else:
4869 4873 operation = 'Enabled'
4870 4874 self.bufferSpectra("Output", "Operation", operation)
4871 4875 value = opObj.getParameterObj(parameterName='path')
4872 4876 if value == None:
4873 4877 path = None
4874 4878 else:
4875 4879 value = opObj.getParameterValue(parameterName='path')
4876 4880 path = str(value)
4877 4881 self.bufferSpectra("Output", "Path", path)
4878 4882 value = opObj.getParameterObj(parameterName='blocksPerFile')
4879 4883 if value == None:
4880 4884 blocksperfile = None
4881 4885 else:
4882 4886 value = opObj.getParameterValue(parameterName='blocksPerFile')
4883 4887 blocksperfile = str(value)
4884 4888 self.bufferSpectra("Output", "BlocksPerFile", blocksperfile)
4885 4889 value = opObj.getParameterObj(parameterName='profilesPerBlock')
4886 4890 if value == None:
4887 4891 profilesPerBlock = None
4888 4892 else:
4889 4893 value = opObj.getParameterValue(parameterName='profilesPerBlock')
4890 4894 profilesPerBlock = str(value)
4891 4895 self.bufferSpectra("Output", "ProfilesPerBlock", profilesPerBlock)
4892 4896
4893 4897 # set model PU Properties
4894 4898
4895 4899 self.propertiesModel = treeModel()
4896 4900 self.propertiesModel.showPUSpectraParms(self.specProperCaracteristica, self.specProperPrincipal, self.specProperDescripcion)
4897 4901
4898 4902 self.treeProjectProperties.setModel(self.propertiesModel)
4899 4903 self.treeProjectProperties.expandAll()
4900 4904 self.treeProjectProperties.allColumnsShowFocus()
4901 4905 self.treeProjectProperties.resizeColumnToContents(0)
4902 4906 self.treeProjectProperties.resizeColumnToContents(1)
4903 4907
4904 4908 self.specProperCaracteristica = []
4905 4909 self.specProperDescripcion = []
4906 4910 self.specProperPrincipal = []
4907 4911
4908 4912
4909 4913 def bufferSpectraHeis(self, caracteristica, principal, description):
4910 4914 self.specHeisProperCaracteristica.append(caracteristica)
4911 4915 self.specHeisProperPrincipal.append(principal)
4912 4916 self.specHeisProperDescripcion.append(description)
4913 4917 return self.specHeisProperCaracteristica, self.specHeisProperPrincipal, self.specHeisProperDescripcion
4914 4918
4915 4919
4916 4920 def showPUSpectraHeisProperties(self, puObj):
4917 4921 type = puObj.name
4918 4922 self.bufferSpectraHeis("Processing Unit", "Type", type)
4919 4923
4920 4924 opObj = puObj.getOperationObj(name="IncohInt4SpectraHeis")
4921 4925 if opObj == None:
4922 4926 incoherentintegration = None
4923 4927 else:
4924 4928 value = opObj.getParameterValue(parameterName='timeInterval')
4925 4929 value = float(value)
4926 4930 incoherentintegration = str(value)
4927 4931 self.bufferSpectraHeis("Processing Unit", "Incoherent Integration", incoherentintegration)
4928 4932 # spectraheis graph
4929 4933 opObj = puObj.getOperationObj(name='SpectraHeisScope')
4930 4934 # opObj = puObj.getOpObjfromParamValue(value="SpectraHeisScope")
4931 4935 if opObj == None:
4932 4936 self.specHeisGraphCebSpectraplot.setCheckState(0)
4933 4937 operationSpectraHeisPlot = "Disabled"
4934 4938 xmin_xmax = None
4935 4939 ymin_ymax = None
4936 4940 channelListSpectraPlot = None
4937 4941 else:
4938 4942 operationSpectraHeisPlot = "Enable"
4939 4943 self.specHeisGraphCebSpectraplot.setCheckState(QtCore.Qt.Checked)
4940 4944 self.bufferSpectraHeis("SpectraHeis Plot", "Operation", operationSpectraHeisPlot)
4941 4945 parmObj = opObj.getParameterObj(parameterName='channelList')
4942 4946 if parmObj == None:
4943 4947 channelListSpectraPlot = None
4944 4948 else:
4945 4949 value = opObj.getParameterValue(parameterName='channelList')
4946 4950 channelListSpectraPlot = str(value)[1:-1]
4947 4951 self.bufferSpectraHeis("SpectraHeis Plot", "Channel List", channelListSpectraPlot)
4948 4952
4949 4953
4950 4954 value1 = opObj.getParameterObj(parameterName='xmin')
4951 4955 if value1 == None:
4952 4956 xmin_xmax = None
4953 4957 else:
4954 4958 value1 = opObj.getParameterValue(parameterName='xmin')
4955 4959 value1 = str(value1)
4956 4960 value2 = opObj.getParameterObj(parameterName='xmax')
4957 4961 if value2 == None:
4958 4962 xmin_xmax = None
4959 4963 else:
4960 4964 value2 = opObj.getParameterValue(parameterName='xmax')
4961 4965 value2 = str(value2)
4962 4966 value = value1 + "," + value2
4963 4967 xmin_xmax = value
4964 4968 self.bufferSpectraHeis("SpectraHeis Plot", "Xmin-Xmax", xmin_xmax)
4965 4969
4966 4970 value1 = opObj.getParameterObj(parameterName='ymin')
4967 4971 if value1 == None:
4968 4972 ymin_ymax = None
4969 4973 else:
4970 4974 value1 = opObj.getParameterValue(parameterName='ymin')
4971 4975 value1 = str(value1)
4972 4976 value2 = opObj.getParameterObj(parameterName='ymax')
4973 4977 if value2 == None:
4974 4978 ymin_ymax = None
4975 4979 else:
4976 4980 value2 = opObj.getParameterValue(parameterName='ymax')
4977 4981 value2 = str(value2)
4978 4982 value = value1 + "," + value2
4979 4983 ymin_ymax = value
4980 4984 self.bufferSpectraHeis("SpectraHeis Plot", "Ymin-Ymax", ymin_ymax)
4981 4985
4982 4986 parmObj = opObj.getParameterObj(parameterName="figpath")
4983 4987 if parmObj == None:
4984 4988 path = None
4985 4989 else:
4986 4990 path = opObj.getParameterValue(parameterName='figpath')
4987 4991 self.bufferSpectraHeis("SpectraHeis Plot", "Save Path", path)
4988 4992
4989 4993 parmObj = opObj.getParameterObj(parameterName="ftp")
4990 4994 if parmObj == None:
4991 4995 status = 'disable'
4992 4996 else:
4993 4997 status = 'enable'
4994 4998 self.bufferSpectraHeis("SpectraHeis Plot", "FTP", status)
4995 4999 self.showWr_Period(puObj, opObj, nameplotop="SpectraHeis Plot")
4996 5000 # self.saveFTPvalues(opObj)
4997 5001
4998 5002 opObj = puObj.getOperationObj(name='RTIfromSpectraHeis')
4999 5003 # opObj = puObj.getOpObjfromParamValue(value="RTIfromSpectraHeis")
5000 5004 if opObj == None:
5001 5005 self.specHeisGraphCebRTIplot.setCheckState(0)
5002 5006 operationRTIPlot = "Disabled"
5003 5007 channelList = None
5004 5008 freq_vel = None
5005 5009 heightsrange = None
5006 5010 else:
5007 5011 operationRTIPlot = "Enable"
5008 5012 self.specHeisGraphCebRTIplot.setCheckState(QtCore.Qt.Checked)
5009 5013 self.bufferSpectraHeis("RTIHeis Plot", "Operation", operationRTIPlot)
5010 5014 parmObj = opObj.getParameterObj(parameterName='channelList')
5011 5015 if parmObj == None:
5012 5016 channelListRTIPlot = None
5013 5017 else:
5014 5018 value = opObj.getParameterValue(parameterName='channelList')
5015 5019 channelListRTIPlot = str(value)[1:-1]
5016 5020 self.bufferSpectraHeis("RTIHeis Plot", "Channel List", channelListRTIPlot)
5017 5021
5018 5022
5019 5023 value1 = opObj.getParameterObj(parameterName='xmin')
5020 5024 if value1 == None:
5021 5025 freq_vel = None
5022 5026 else:
5023 5027 value1 = opObj.getParameterValue(parameterName='xmin')
5024 5028 value1 = str(value1)
5025 5029 value2 = opObj.getParameterObj(parameterName='xmax')
5026 5030 if value2 == None:
5027 5031 freq_vel = None
5028 5032 else:
5029 5033 value2 = opObj.getParameterValue(parameterName='xmax')
5030 5034 value2 = str(value2)
5031 5035 value = value1 + "," + value2
5032 5036 tmintmax = value
5033 5037 self.bufferSpectraHeis("RTIHeis Plot", "Tmin,Tmax", tmintmax)
5034 5038
5035 5039 parmObj = opObj.getParameterObj(parameterName='timerange')
5036 5040 if parmObj == None:
5037 5041 timerange = None
5038 5042 else:
5039 5043 value = opObj.getParameterValue(parameterName='timerange')
5040 5044 timerange = str(value)
5041 5045 self.bufferSpectraHeis("RTIHeis Plot", "Time Range", timerange)
5042 5046
5043 5047 value1 = opObj.getParameterObj(parameterName='ymin')
5044 5048 if value1 == None:
5045 5049 heightsrange = None
5046 5050 else:
5047 5051 value1 = opObj.getParameterValue(parameterName='ymin')
5048 5052 value1 = str(value1)
5049 5053 value2 = opObj.getParameterObj(parameterName='ymax')
5050 5054 if value2 == None:
5051 5055 fheightsrange = None
5052 5056 else:
5053 5057 value2 = opObj.getParameterValue(parameterName='ymax')
5054 5058 value2 = str(value2)
5055 5059 value = value1 + "," + value2
5056 5060 heightsrange = value
5057 5061 self.bufferSpectraHeis("RTIHeis Plot", "Ymin-Ymax", heightsrange)
5058 5062
5059 5063 parmObj = opObj.getParameterObj(parameterName="figpath")
5060 5064 if parmObj == None:
5061 5065 path = None
5062 5066 else:
5063 5067 path = opObj.getParameterValue(parameterName='figpath')
5064 5068 self.bufferSpectraHeis("RTIHeis Plot", "Save Path", path)
5065 5069
5066 5070 parmObj = opObj.getParameterObj(parameterName="ftp")
5067 5071 if parmObj == None:
5068 5072 status = 'disable'
5069 5073 else:
5070 5074 status = 'enable'
5071 5075 self.bufferSpectraHeis("RTIHeis Plot", "FTP", status)
5072 5076 self.showWr_Period(puObj, opObj, nameplotop="RTIHeis Plot")
5073 5077 # self.saveFTPvalues(opObj)
5074 5078
5075 5079 projectObj = self.getSelectedProjectObj()
5076 5080 ftpProcUnitConfObj = projectObj.getProcUnitObjByName(name="SendToServer")
5077 5081
5078 5082 if ftpProcUnitConfObj:
5079 5083
5080 5084 opObj = ftpProcUnitConfObj.getOperationObj(name='run')
5081 5085
5082 5086 server = opObj.getParameterValue(parameterName='server')
5083 5087 folder = opObj.getParameterValue(parameterName='folder')
5084 5088 username = opObj.getParameterValue(parameterName='username')
5085 5089 password = opObj.getParameterValue(parameterName='password')
5086 5090 ftp_wei = opObj.getParameterValue(parameterName='ftp_wei')
5087 5091 exp_code = opObj.getParameterValue(parameterName='exp_code')
5088 5092 sub_exp_code = opObj.getParameterValue(parameterName='sub_exp_code')
5089 5093 plot_pos = opObj.getParameterValue(parameterName='plot_pos')
5090 5094 localfolder = opObj.getParameterValue(parameterName='localfolder')
5091 5095
5092 5096 self.bufferSpectraHeis("FTP", "Server", server)
5093 5097 self.bufferSpectraHeis("FTP", "Remote folder", folder)
5094 5098 self.bufferSpectraHeis("FTP", "Local folder", localfolder)
5095 5099 self.bufferSpectraHeis("FTP", "Username", username)
5096 5100 self.bufferSpectraHeis("FTP", "Password", '*'*len(password))
5097 5101 self.bufferSpectraHeis("FTP", "Ftp_wei", ftp_wei)
5098 5102 self.bufferSpectraHeis("FTP", "Exp_code", exp_code)
5099 5103 self.bufferSpectraHeis("FTP", "Sub_exp_code", sub_exp_code)
5100 5104 self.bufferSpectraHeis("FTP", "Plot_pos", plot_pos)
5101 5105
5102 5106 # outputSpectraHeisWrite
5103 5107 opObj = puObj.getOperationObj(name='FitsWriter')
5104 5108 if opObj == None:
5105 5109 pass
5106 5110 else:
5107 5111 operation = 'Enabled'
5108 5112 self.bufferSpectraHeis("Output", "Operation", operation)
5109 5113 value = opObj.getParameterObj(parameterName='path')
5110 5114 if value == None:
5111 5115 path = None
5112 5116 else:
5113 5117 value = opObj.getParameterValue(parameterName='path')
5114 5118 path = str(value)
5115 5119 self.bufferSpectraHeis("Output", "Path", path)
5116 5120 value = opObj.getParameterObj(parameterName='dataBlocksPerFile')
5117 5121 if value == None:
5118 5122 blocksperfile = None
5119 5123 else:
5120 5124 value = opObj.getParameterValue(parameterName='dataBlocksPerFile')
5121 5125 blocksperfile = str(value)
5122 5126 self.bufferSpectraHeis("Output", "BlocksPerFile", blocksperfile)
5123 5127 value = opObj.getParameterObj(parameterName='metadatafile')
5124 5128 if value == None:
5125 5129 metadata = None
5126 5130 else:
5127 5131 value = opObj.getParameterValue(parameterName='metadatafile')
5128 5132 metadata = str(value)
5129 5133 self.bufferSpectraHeis("Output", "Metadata", metadata)
5130 5134
5131 5135 # set model PU Properties
5132 5136
5133 5137 self.propertiesModel = treeModel()
5134 5138 self.propertiesModel.showPUSpectraHeisParms(self.specHeisProperCaracteristica, self.specHeisProperPrincipal, self.specHeisProperDescripcion)
5135 5139
5136 5140 self.treeProjectProperties.setModel(self.propertiesModel)
5137 5141 self.treeProjectProperties.expandAll()
5138 5142 self.treeProjectProperties.allColumnsShowFocus()
5139 5143 self.treeProjectProperties.resizeColumnToContents(0)
5140 5144 self.treeProjectProperties.resizeColumnToContents(1)
5141 5145
5142 5146 self.specHeisProperCaracteristica = []
5143 5147 self.specHeisProperDescripcion = []
5144 5148 self.specHeisProperPrincipal = []
5145 5149
5146 5150
5147 5151 def showWr_Period(self, puObj, opObj, nameplotop):
5148 5152 parmObj = opObj.getParameterObj(parameterName='wr_period')
5149 5153 if parmObj == None:
5150 5154 wr_period = None
5151 5155 else:
5152 5156 value = opObj.getParameterValue(parameterName='wr_period')
5153 5157 wr_period = str(value)
5154 5158 if puObj.datatype == "Spectra":
5155 5159 self.bufferSpectra(nameplotop, "wr_period", wr_period)
5156 5160 if puObj.datatype == "SpectraHeis":
5157 5161 self.bufferSpectraHeis(nameplotop, "wr_period", wr_period)
5158 5162
5159 5163 def saveFTPvalues(self, opObj):
5160 5164
5161 5165 parmObj = opObj.getParameterObj(parameterName="server")
5162 5166 if parmObj == None:
5163 5167 server = 'jro-app.igp.gob.pe'
5164 5168 else:
5165 5169 server = opObj.getParameterValue(parameterName='server')
5166 5170
5167 5171 parmObj = opObj.getParameterObj(parameterName="folder")
5168 5172 if parmObj == None:
5169 5173 folder = '/home/wmaster/graficos'
5170 5174 else:
5171 5175 folder = opObj.getParameterValue(parameterName='folder')
5172 5176
5173 5177 parmObj = opObj.getParameterObj(parameterName="username")
5174 5178 if parmObj == None:
5175 5179 username = 'wmaster'
5176 5180 else:
5177 5181 username = opObj.getParameterValue(parameterName='username')
5178 5182
5179 5183 parmObj = opObj.getParameterObj(parameterName="password")
5180 5184 if parmObj == None:
5181 5185 password = 'mst2010vhf'
5182 5186 else:
5183 5187 password = opObj.getParameterValue(parameterName='password')
5184 5188
5185 5189 parmObj = opObj.getParameterObj(parameterName="ftp_wei")
5186 5190 if parmObj == None:
5187 5191 ftp_wei = '0'
5188 5192 else:
5189 5193 ftp_wei = opObj.getParameterValue(parameterName='ftp_wei')
5190 5194
5191 5195 parmObj = opObj.getParameterObj(parameterName="exp_code")
5192 5196 if parmObj == None:
5193 5197 exp_code = '0'
5194 5198 else:
5195 5199 exp_code = opObj.getParameterValue(parameterName='exp_code')
5196 5200
5197 5201 parmObj = opObj.getParameterObj(parameterName="sub_exp_code")
5198 5202 if parmObj == None:
5199 5203 sub_exp_code = '0'
5200 5204 else:
5201 5205 sub_exp_code = opObj.getParameterValue(parameterName='sub_exp_code')
5202 5206
5203 5207 parmObj = opObj.getParameterObj(parameterName="plot_pos")
5204 5208 if parmObj == None:
5205 5209 plot_pos = '0'
5206 5210 else:
5207 5211 plot_pos = opObj.getParameterValue(parameterName='plot_pos')
5208 5212
5209 5213 parmObj = opObj.getParameterObj(parameterName="localfolder")
5210 5214 if parmObj == None:
5211 5215 localfolder = None
5212 5216 else:
5213 5217 localfolder = opObj.getParameterValue(parameterName='localfolder')
5214 5218
5215 5219 parmObj = opObj.getParameterObj(parameterName="extension")
5216 5220 if parmObj == None:
5217 5221 extension = None
5218 5222 else:
5219 5223 extension = opObj.getParameterValue(parameterName='extension')
5220 5224
5221 5225 self.temporalFTP.save(server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos,
5222 5226 localfolder=localfolder,
5223 5227 extension=extension)
5224 5228
5225 5229 def addProject2ProjectExplorer(self, id, name):
5226 5230
5227 5231 itemTree = QtGui.QStandardItem(QtCore.QString(str(name)))
5228 5232 self.parentItem = self.projectExplorerModel.invisibleRootItem()
5229 5233 self.parentItem.appendRow(itemTree)
5230 5234 self.parentItem = itemTree
5231 5235 self.projectExplorerTree.setCurrentIndex(self.parentItem.index())
5232 5236
5233 5237 self.selectedItemTree = itemTree
5234 5238
5235 5239 self.__itemTreeDict[id] = itemTree
5236 5240
5237 5241 def addPU2ProjectExplorer(self, id, name):
5238 5242 # id1= round(int(id)/10.)*10
5239 5243 # id= int(id)
5240 5244 # id=id-id1
5241 5245 itemTree = QtGui.QStandardItem(QtCore.QString(str(name)))
5242 5246
5243 5247 self.parentItem = self.selectedItemTree
5244 5248 self.parentItem.appendRow(itemTree)
5245 5249 self.projectExplorerTree.expandAll()
5246 5250 self.parentItem = itemTree
5247 5251 self.projectExplorerTree.setCurrentIndex(self.parentItem.index())
5248 5252
5249 5253 self.selectedItemTree = itemTree
5250 5254
5251 5255 self.__itemTreeDict[id] = itemTree
5252 5256
5253 5257 def addPU2PELoadXML(self, id, name, idParent):
5254 5258
5255 5259 itemTree = QtGui.QStandardItem(QtCore.QString(str(name)))
5256 5260 if self.__itemTreeDict.has_key(idParent):
5257 5261 self.parentItem = self.__itemTreeDict[idParent]
5258 5262 else:
5259 5263 self.parentItem = self.selectedItemTree
5260 5264 self.parentItem.appendRow(itemTree)
5261 5265 self.projectExplorerTree.expandAll()
5262 5266 self.parentItem = itemTree
5263 5267 self.projectExplorerTree.setCurrentIndex(self.parentItem.index())
5264 5268
5265 5269 self.selectedItemTree = itemTree
5266 5270
5267 5271 self.__itemTreeDict[id] = itemTree
5268 5272 # print "stop"
5269 5273
5270 5274 def getSelectedProjectObj(self):
5271 5275
5272 5276 for key in self.__itemTreeDict.keys():
5273 5277 if self.__itemTreeDict[key] != self.selectedItemTree:
5274 5278 continue
5275 5279
5276 5280 if self.__projectObjDict.has_key(key):
5277 5281 projectObj = self.__projectObjDict[key]
5278 5282 else:
5279 5283 puObj = self.__puObjDict[key]
5280 5284 if puObj.parentId == None:
5281 5285 id = puObj.getId()[0]
5282 5286 else:
5283 5287 id = puObj.parentId
5284 5288 projectObj = self.__projectObjDict[id]
5285 5289
5286 5290 return projectObj
5287 5291
5288 5292 self.showWarning()
5289 5293
5290 5294 return None
5291 5295
5292 5296 def getSelectedPUObj(self):
5293 5297
5294 5298 for key in self.__itemTreeDict.keys():
5295 5299 if self.__itemTreeDict[key] != self.selectedItemTree:
5296 5300 continue
5297 5301
5298 5302 if self.__projectObjDict.has_key(key) == True:
5299 5303 fatherObj = self.__projectObjDict[key]
5300 5304 else:
5301 5305 fatherObj = self.__puObjDict[key]
5302 5306
5303 5307 return fatherObj
5304 5308
5305 5309 self.showWarning()
5306 5310
5307 5311 return None
5308 5312
5309 5313 def playProject(self, ext=".xml"):
5310 5314
5311 5315 projectObj = self.getSelectedProjectObj()
5312 5316
5313 5317 filename = os.path.join(str(self.pathWorkSpace),
5314 5318 "%s%s%s" %(str(projectObj.name), str(projectObj.id), ext)
5315 5319 )
5316 5320
5317 5321 self.console.clear()
5318 5322 filename = self.saveProject()
5319 5323 # projectObj.writeXml(filename)
5320 5324 if filename == None:
5321 5325 self.console.append("Process did not initialize.")
5322 5326 return
5323 5327
5324 5328 self.actionStarToolbar.setEnabled(False)
5325 5329 self.actionPauseToolbar.setEnabled(True)
5326 5330 self.actionStopToolbar.setEnabled(True)
5327 5331
5328 5332 self.console.append("Please Wait...")
5329 5333 # try:
5330 5334 self.commCtrlPThread.cmd_q.put(ProcessCommand(ProcessCommand.PROCESS, filename))
5331 5335 # #
5332 5336 # except:
5333 5337 # self.console.append("Error............................................!")
5334 5338 # self.actionStarToolbar.setEnabled(True)
5335 5339 # self.actionPauseToolbar.setEnabled(False)
5336 5340 # self.actionStopToolbar.setEnabled(False)
5337 5341
5338 5342 # filename = '/home/dsuarez/workspace_signalchain/schain_guiJune04/test/ewdrifts3.xml'
5339 5343 # data = filename
5340 5344 # self.commCtrlPThread.cmd_q.put(ProcessCommand(ProcessCommand.PROCESS, data))
5341 5345
5342 5346 def stopProject(self):
5343 5347 stop = False
5344 5348 self.actionStarToolbar.setEnabled(True)
5345 5349 self.actionPauseToolbar.setEnabled(stop)
5346 5350 self.actionStopToolbar.setEnabled(stop)
5347 5351
5348 5352 self.commCtrlPThread.cmd_q.put(ProcessCommand(ProcessCommand.STOP, stop))
5349 5353
5350 5354 def pauseProject(self):
5351 5355
5352 5356 self.actionStarToolbar.setEnabled(False)
5353 5357 self.actionPauseToolbar.setEnabled(True)
5354 5358 self.actionStopToolbar.setEnabled(True)
5355 5359
5356 5360 self.commCtrlPThread.cmd_q.put(ProcessCommand(ProcessCommand.PAUSE, data=True))
5357 5361
5358 5362
5359 5363 def saveProject(self):
5360 5364
5361 5365 sts = True
5362 5366 puObj = self.getSelectedPUObj()
5363 5367 if puObj.name == 'VoltageProc':
5364 5368 sts = self.on_volOpOk_clicked()
5365 5369 if puObj.name == 'SpectraProc':
5366 5370 sts = self.on_specOpOk_clicked()
5367 5371 if puObj.name == 'SpectraHeisProc':
5368 5372 sts = self.on_specHeisOpOk_clicked()
5369 5373
5370 5374 if not sts:
5371 5375 return None
5372 5376
5373 5377 projectObj = self.getSelectedProjectObj()
5374 5378 puObjorderList = OrderedDict(sorted(projectObj.procUnitConfObjDict.items(), key=lambda x: x[0]))
5375 5379
5376 5380 for inputId, puObj in puObjorderList.items():
5377 5381 # print puObj.datatype, puObj.inputId,puObj.getId(),puObj.parentId
5378 5382
5379 5383 if puObj.name == "VoltageProc":
5380 5384 self.refreshID(puObj)
5381 5385 if puObj.name == "SpectraProc":
5382 5386 self.refreshID(puObj)
5383 5387 if puObj.name == "SpectraHeisProc":
5384 5388 self.refreshID(puObj)
5385 5389
5386 5390 filename = os.path.join(str(self.pathWorkSpace),
5387 5391 "%s%s%s" %(str(projectObj.name), str(projectObj.id), '.xml')
5388 5392 )
5389 5393 projectObj.writeXml(filename)
5390 5394 self.console.append("Now, you can press the Start Icon on the toolbar")
5391 5395
5392 5396 return filename
5393 5397
5394 5398 def deleteProjectorPU(self):
5395 5399 """
5396 5400 Metodo para eliminar el proyecto en el dictionario de proyectos y en el dictionario de vista de arbol
5397 5401 """
5398 5402 for key in self.__itemTreeDict.keys():
5399 5403 if self.__itemTreeDict[key] != self.selectedItemTree:
5400 5404 continue
5401 5405
5402 5406 if self.__projectObjDict.has_key(key) == True:
5403 5407
5404 5408 del self.__projectObjDict[key]
5405 5409 del self.__itemTreeDict[key]
5406 5410
5407 5411 else:
5408 5412 puObj = self.__puObjDict[key]
5409 5413 if puObj.parentId == None:
5410 5414 id = puObj.getId()[0]
5411 5415 else:
5412 5416 id = puObj.parentId
5413 5417 projectObj = self.__projectObjDict[id]
5414 5418 del self.__puObjDict[key]
5415 5419 del self.__itemTreeDict[key]
5416 5420 del projectObj.procUnitConfObjDict[key]
5417 5421 for key in projectObj.procUnitConfObjDict.keys():
5418 5422 if projectObj.procUnitConfObjDict[key].inputId != puObj.getId():
5419 5423 continue
5420 5424 del self.__puObjDict[projectObj.procUnitConfObjDict[key].getId()]
5421 5425 del self.__itemTreeDict[projectObj.procUnitConfObjDict[key].getId()]
5422 5426 del projectObj.procUnitConfObjDict[key]
5423 5427 # print projectObj.procUnitConfObjDict
5424 5428 # print self.__itemTreeDict,self.__projectObjDict,self.__puObjDict
5425 5429 self.showWarning()
5426 5430
5427 5431 def showWarning(self):
5428 5432 pass
5429 5433
5430 5434 def getParmsFromProjectWindow(self):
5431 5435 """
5432 5436 Return Inputs Project:
5433 5437 - id
5434 5438 - project_name
5435 5439 - datatype
5436 5440 - ext
5437 5441 - data_path
5438 5442 - readmode
5439 5443 - delay
5440 5444 - set
5441 5445 - walk
5442 5446 """
5443 5447 project_name = str(self.proName.text())
5444 5448 try:
5445 5449 name = str(self.proName.text())
5446 5450 except:
5447 5451 self.console.clear()
5448 5452 self.console.append("Please Write a name")
5449 5453 return 0
5450 5454
5451 5455 desc = str(self.proDescription.toPlainText())
5452 5456 datatype = str(self.proComDataType.currentText())
5453 5457 data_path = str(self.proDataPath.text())
5454 5458 if not os.path.exists(data_path):
5455 5459 self.proOk.setEnabled(False)
5456 5460 self.console.clear()
5457 5461 self.console.append("Write a correct a path")
5458 5462 return
5459 5463
5460 5464 online = int(self.online)
5461 5465 if online == 0:
5462 5466 delay = 0
5463 5467 set = 0
5464 5468 else:
5465 5469 delay = self.proDelay.text()
5466 5470 try:
5467 5471 delay = int(self.proDelay.text())
5468 5472 except:
5469 5473 self.console.clear()
5470 5474 self.console.append("Please Write a number for delay")
5471 5475 return 0
5472 5476
5473 5477 set = self.proSet.text()
5474 5478 try:
5475 5479 set = int(self.proSet.text())
5476 5480 except:
5477 5481 self.console.clear()
5478 5482 set = None
5479 5483
5480 5484
5481 5485 walk = int(self.walk)
5482 5486 starDate = str(self.proComStartDate.currentText())
5483 5487 endDate = str(self.proComEndDate.currentText())
5484 5488 reloj1 = self.proStartTime.time()
5485 5489 reloj2 = self.proEndTime.time()
5486 5490 startTime = str(reloj1.hour()) + ":" + str(reloj1.minute()) + ":" + str(reloj1.second())
5487 5491 endTime = str(reloj2.hour()) + ":" + str(reloj2.minute()) + ":" + str(reloj2.second())
5488 5492
5489 5493 return project_name, desc, datatype, data_path, starDate, endDate, startTime, endTime, online, delay, walk , set
5490 5494
5491 5495 def removefromtree(self, row):
5492 5496 self.parentItem.removeRow(row)
5493 5497
5494 5498
5495 5499 def setInputsProject_View(self):
5496 5500 self.tabWidgetProject.setEnabled(True)
5497 5501 self.tabWidgetProject.setCurrentWidget(self.tabProject)
5498 5502 self.tabProject.setEnabled(True)
5499 5503 self.frame_2.setEnabled(False)
5500 5504 self.proName.clear()
5501 5505 self.proName.setFocus()
5502 5506 self.proName.setSelection(0, 0)
5503 5507 self.proName.setCursorPosition(0)
5504 5508 self.proDataType.setText('.r')
5505 5509 self.proDataPath.clear()
5506 5510 self.proComDataType.clear()
5507 5511 self.proComDataType.addItem("Voltage")
5508 5512 self.proComDataType.addItem("Spectra")
5509 5513 self.proComDataType.addItem("Fits")
5510 5514
5511 5515 self.proComStartDate.clear()
5512 5516 self.proComEndDate.clear()
5513 5517
5514 5518 startTime = "00:00:00"
5515 5519 endTime = "23:59:59"
5516 5520 starlist = startTime.split(":")
5517 5521 endlist = endTime.split(":")
5518 5522 self.proDelay.setText("0")
5519 5523 self.proSet.setText("0")
5520 5524 self.time.setHMS(int(starlist[0]), int(starlist[1]), int(starlist[2]))
5521 5525 self.proStartTime.setTime(self.time)
5522 5526 self.time.setHMS(int(endlist[0]), int(endlist[1]), int(endlist[2]))
5523 5527 self.proEndTime.setTime(self.time)
5524 5528 self.proDescription.clear()
5525 5529 self.proOk.setEnabled(False)
5526 5530 self.console.clear()
5527 5531 # self.console.append("Please, Write a name Project")
5528 5532 # self.console.append("Introduce Project Parameters")DC
5529 5533 # self.console.append("Select data type Voltage( .rawdata) or Spectra(.pdata)")
5530 5534
5531 5535 def setInputsPU_View(self, datatype):
5532 5536 projectObjView = self.getSelectedProjectObj()
5533 5537 idReadUnit = projectObjView.getReadUnitId()
5534 5538 readUnitObj = projectObjView.getProcUnitObj(idReadUnit)
5535 5539
5536 5540 if datatype == 'Voltage':
5537 5541 self.volOpComChannels.setEnabled(False)
5538 5542 self.volOpComHeights.setEnabled(False)
5539 5543 self.volOpFilter.setEnabled(False)
5540 5544 self.volOpComProfile.setEnabled(False)
5541 5545 self.volOpComCode.setEnabled(False)
5542 5546 self.volOpCohInt.setEnabled(False)
5543 5547 self.volOpChannel.setEnabled(False)
5544 5548 self.volOpHeights.setEnabled(False)
5545 5549 self.volOpProfile.setEnabled(False)
5546 5550 self.volOpRadarfrequency.setEnabled(False)
5547 5551 self.volOpCebChannels.setCheckState(0)
5548 5552 self.volOpCebRadarfrequency.setCheckState(0)
5549 5553 self.volOpCebHeights.setCheckState(0)
5550 5554 self.volOpCebFilter.setCheckState(0)
5551 5555 self.volOpCebProfile.setCheckState(0)
5552 5556 self.volOpCebDecodification.setCheckState(0)
5553 5557 self.volOpCebCohInt.setCheckState(0)
5554 5558
5555 5559 self.volOpChannel.clear()
5556 5560 self.volOpHeights.clear()
5557 5561 self.volOpProfile.clear()
5558 5562 self.volOpFilter.clear()
5559 5563 self.volOpCohInt.clear()
5560 5564 self.volOpRadarfrequency.clear()
5561 5565
5562 5566 if datatype == 'Spectra':
5563 5567
5564 5568 if readUnitObj.datatype == 'Spectra':
5565 5569 self.specOpnFFTpoints.setEnabled(False)
5566 5570 self.specOpProfiles.setEnabled(False)
5567 5571 self.specOpippFactor.setEnabled(False)
5568 5572 else:
5569 5573 self.specOpnFFTpoints.setEnabled(True)
5570 5574 self.specOpProfiles.setEnabled(True)
5571 5575 self.specOpippFactor.setEnabled(True)
5572 5576
5573 5577 self.specOpCebCrossSpectra.setCheckState(0)
5574 5578 self.specOpCebChannel.setCheckState(0)
5575 5579 self.specOpCebHeights.setCheckState(0)
5576 5580 self.specOpCebIncoherent.setCheckState(0)
5577 5581 self.specOpCebRemoveDC.setCheckState(0)
5578 5582 self.specOpCebRemoveInt.setCheckState(0)
5579 5583 self.specOpCebgetNoise.setCheckState(0)
5580 5584 self.specOpCebRadarfrequency.setCheckState(0)
5581 5585
5582 5586 self.specOpRadarfrequency.setEnabled(False)
5583 5587 self.specOppairsList.setEnabled(False)
5584 5588 self.specOpChannel.setEnabled(False)
5585 5589 self.specOpHeights.setEnabled(False)
5586 5590 self.specOpIncoherent.setEnabled(False)
5587 5591 self.specOpgetNoise.setEnabled(False)
5588 5592
5589 5593 self.specOpRadarfrequency.clear()
5590 5594 self.specOpnFFTpoints.clear()
5591 5595 self.specOpProfiles.clear()
5592 5596 self.specOpippFactor.clear
5593 5597 self.specOppairsList.clear()
5594 5598 self.specOpChannel.clear()
5595 5599 self.specOpHeights.clear()
5596 5600 self.specOpIncoherent.clear()
5597 5601 self.specOpgetNoise.clear()
5598 5602
5599 5603 self.specGraphCebSpectraplot.setCheckState(0)
5600 5604 self.specGraphCebCrossSpectraplot.setCheckState(0)
5601 5605 self.specGraphCebRTIplot.setCheckState(0)
5602 5606 self.specGraphCebRTInoise.setCheckState(0)
5603 5607 self.specGraphCebCoherencmap.setCheckState(0)
5604 5608 self.specGraphPowerprofile.setCheckState(0)
5605 5609
5606 5610 self.specGraphSaveSpectra.setCheckState(0)
5607 5611 self.specGraphSaveCross.setCheckState(0)
5608 5612 self.specGraphSaveRTIplot.setCheckState(0)
5609 5613 self.specGraphSaveRTInoise.setCheckState(0)
5610 5614 self.specGraphSaveCoherencemap.setCheckState(0)
5611 5615 self.specGraphSavePowerprofile.setCheckState(0)
5612 5616
5613 5617 self.specGraphftpRTIplot.setCheckState(0)
5614 5618 self.specGraphftpRTInoise.setCheckState(0)
5615 5619 self.specGraphftpCoherencemap.setCheckState(0)
5616 5620
5617 5621 self.specGraphPath.clear()
5618 5622 self.specGraphPrefix.clear()
5619 5623
5620 5624 self.specGgraphftpratio.clear()
5621 5625
5622 5626 self.specGgraphChannelList.clear()
5623 5627 self.specGgraphFreq.clear()
5624 5628 self.specGgraphHeight.clear()
5625 5629 self.specGgraphDbsrange.clear()
5626 5630 self.specGgraphmagnitud.clear()
5627 5631 self.specGgraphTminTmax.clear()
5628 5632 self.specGgraphTimeRange.clear()
5629 5633
5630 5634 if datatype == 'SpectraHeis':
5631 5635 self.specHeisOpCebIncoherent.setCheckState(0)
5632 5636 self.specHeisOpIncoherent.setEnabled(False)
5633 5637 self.specHeisOpIncoherent.clear()
5634 5638
5635 5639 self.specHeisGraphCebSpectraplot.setCheckState(0)
5636 5640 self.specHeisGraphCebRTIplot.setCheckState(0)
5637 5641
5638 5642 self.specHeisGraphSaveSpectra.setCheckState(0)
5639 5643 self.specHeisGraphSaveRTIplot.setCheckState(0)
5640 5644
5641 5645 self.specHeisGraphftpSpectra.setCheckState(0)
5642 5646 self.specHeisGraphftpRTIplot.setCheckState(0)
5643 5647
5644 5648 self.specHeisGraphPath.clear()
5645 5649 self.specHeisGraphPrefix.clear()
5646 5650 self.specHeisGgraphChannelList.clear()
5647 5651 self.specHeisGgraphXminXmax.clear()
5648 5652 self.specHeisGgraphYminYmax.clear()
5649 5653 self.specHeisGgraphTminTmax.clear()
5650 5654 self.specHeisGgraphTimeRange.clear()
5651 5655 self.specHeisGgraphftpratio.clear()
5652 5656
5653 5657
5654 5658
5655 5659
5656 5660
5657 5661 def showtabPUCreated(self, datatype):
5658 5662 if datatype == "Voltage":
5659 5663 self.tabVoltage.setEnabled(True)
5660 5664 self.tabProject.setEnabled(False)
5661 5665 self.tabSpectra.setEnabled(False)
5662 5666 self.tabCorrelation.setEnabled(False)
5663 5667 self.tabSpectraHeis.setEnabled(False)
5664 5668 self.tabWidgetProject.setCurrentWidget(self.tabVoltage)
5665 5669
5666 5670 if datatype == "Spectra":
5667 5671 self.tabVoltage.setEnabled(False)
5668 5672 self.tabProject.setEnabled(False)
5669 5673 self.tabSpectra.setEnabled(True)
5670 5674 self.tabCorrelation.setEnabled(False)
5671 5675 self.tabSpectraHeis.setEnabled(False)
5672 5676 self.tabWidgetProject.setCurrentWidget(self.tabSpectra)
5673 5677 if datatype == "SpectraHeis":
5674 5678 self.tabVoltage.setEnabled(False)
5675 5679 self.tabProject.setEnabled(False)
5676 5680 self.tabSpectra.setEnabled(False)
5677 5681 self.tabCorrelation.setEnabled(False)
5678 5682 self.tabSpectraHeis.setEnabled(True)
5679 5683 self.tabWidgetProject.setCurrentWidget(self.tabSpectraHeis)
5680 5684
5681 5685
5682 5686 def searchData(self, data_path, ext, walk, expLabel=''):
5683 5687 dateList = []
5684 5688 fileList = []
5685 5689
5686 5690 if not os.path.exists(data_path):
5687 5691 return None
5688 5692
5689 5693 if walk == 0:
5690 5694 files = os.listdir(data_path)
5691 5695 for thisFile in files:
5692 5696 thisExt = os.path.splitext(thisFile)[-1]
5693 5697 if thisExt == ext:
5694 5698 fileList.append(thisFile)
5695 5699
5696 5700 for thisFile in fileList:
5697 5701 try:
5698 5702 year = int(thisFile[1:5])
5699 5703 doy = int(thisFile[5:8])
5700 5704
5701 5705 date = datetime.date(year, 1, 1) + datetime.timedelta(doy - 1)
5702 5706 dateformat = date.strftime("%Y/%m/%d")
5703 5707
5704 5708 if dateformat not in dateList:
5705 5709 dateList.append(dateformat)
5706 5710 except:
5707 5711 continue
5708 5712 # REVISION---------------------------------1
5709 5713 if walk == 1:
5710 5714
5711 5715 dirList = os.listdir(data_path)
5712 5716
5713 5717 dirList.sort()
5714 5718
5715 5719 dateList = []
5716 5720
5717 5721 for thisDir in dirList:
5718 5722
5719 5723 if not isRadarPath(thisDir):
5720 5724 self.console.clear()
5721 5725 self.console.append("Please, Choose the Correct Path")
5722 5726 self.proOk.setEnabled(False)
5723 5727 continue
5724 5728
5725 5729 doypath = os.path.join(data_path, thisDir, expLabel)
5726 5730 if not os.path.exists(doypath):
5727 5731 self.console.clear()
5728 5732 self.console.append("Please, Choose the Correct Path")
5729 5733 return
5730 5734 files = os.listdir(doypath)
5731 5735 fileList = []
5732 5736
5733 5737 for thisFile in files:
5734 5738 thisExt = os.path.splitext(thisFile)[-1]
5735 5739 if thisExt != ext:
5736 5740 self.console.clear()
5737 5741 self.console.append("There is no datatype selected in the Path Directory")
5738 5742 self.proOk.setEnabled(False)
5739 5743 continue
5740 5744
5741 5745 if not isRadarFile(thisFile):
5742 5746 self.proOk.setEnabled(False)
5743 5747 self.console.clear()
5744 5748 self.console.append("Please, Choose the Correct Path")
5745 5749 continue
5746 5750
5747 5751 fileList.append(thisFile)
5748 5752 break
5749 5753
5750 5754 if fileList == []:
5751 5755 continue
5752 5756
5753 5757 year = int(thisDir[1:5])
5754 5758 doy = int(thisDir[5:8])
5755 5759
5756 5760 date = datetime.date(year, 1, 1) + datetime.timedelta(doy - 1)
5757 5761 dateformat = date.strftime("%Y/%m/%d")
5758 5762 dateList.append(dateformat)
5759 5763
5760 5764 if len(dateList) > 0:
5761 5765 self.proOk.setEnabled(True)
5762 5766 return dateList
5763 5767
5764 5768
5765 5769 # self.proOk.setEnabled(False)
5766 5770 return None
5767 5771
5768 5772 def checkInputsProject(self):
5769 5773 """
5770 5774 Check Inputs Project:
5771 5775 - project_name
5772 5776 - datatype
5773 5777 - ext
5774 5778 - data_path
5775 5779 - readmode
5776 5780 - delay
5777 5781 - set
5778 5782 - walk
5779 5783 """
5780 5784 parms_ok = True
5781 5785 project_name = str(self.proName.text())
5782 5786 if project_name == '' or project_name == None:
5783 5787 outputstr = "Enter the Project Name"
5784 5788 self.console.append(outputstr)
5785 5789 parms_ok = False
5786 5790 project_name = None
5787 5791
5788 5792 datatype = str(self.proComDataType.currentText())
5789 5793 if not(datatype in ['Voltage', 'Spectra', 'Fits']):
5790 5794 outputstr = 'datatype = %s, this must be either Voltage, Spectra or SpectraHeis' % datatype
5791 5795 self.console.append(outputstr)
5792 5796 parms_ok = False
5793 5797 datatype = None
5794 5798
5795 5799 ext = str(self.proDataType.text())
5796 5800 if not(ext in ['.r', '.pdata', '.fits']):
5797 5801 outputstr = "extension files must be .r , .pdata or .fits"
5798 5802 self.console.append(outputstr)
5799 5803 parms_ok = False
5800 5804 ext = None
5801 5805
5802 5806 data_path = str(self.proDataPath.text())
5803 5807
5804 5808 if data_path == '':
5805 5809 outputstr = 'Datapath is empty'
5806 5810 self.console.append(outputstr)
5807 5811 parms_ok = False
5808 5812 data_path = None
5809 5813
5810 5814 if data_path != None:
5811 5815 if not os.path.exists(data_path):
5812 5816 outputstr = 'Datapath:%s does not exists' % data_path
5813 5817 self.console.append(outputstr)
5814 5818 parms_ok = False
5815 5819 data_path = None
5816 5820
5817 5821 read_mode = str(self.proComReadMode.currentText())
5818 5822 if not(read_mode in ['Online', 'Offline']):
5819 5823 outputstr = 'Read Mode: %s, this must be either Online or Offline' % read_mode
5820 5824 self.console.append(outputstr)
5821 5825 parms_ok = False
5822 5826 read_mode = None
5823 5827
5824 5828 try:
5825 5829 delay = int(str(self.proDelay.text()))
5826 5830 except:
5827 5831 outputstr = 'Delay: %s, this must be a integer number' % str(self.proName.text())
5828 5832 self.console.append(outputstr)
5829 5833 parms_ok = False
5830 5834 delay = None
5831 5835
5832 5836 try:
5833 5837 set = int(str(self.proSet.text()))
5834 5838 except:
5835 5839 # outputstr = 'Set: %s, this must be a integer number' % str(self.proName.text())
5836 5840 # self.console.append(outputstr)
5837 5841 # parms_ok = False
5838 5842 set = None
5839 5843
5840 5844 walk_str = str(self.proComWalk.currentText())
5841 5845 if walk_str == 'On Files':
5842 5846 walk = 0
5843 5847 elif walk_str == 'On Folder':
5844 5848 walk = 1
5845 5849 else:
5846 5850 outputstr = 'Walk: %s, this must be either On Files or On Folders' % walk_str
5847 5851 self.console.append(outputstr)
5848 5852 parms_ok = False
5849 5853 walk = None
5850 5854
5851 5855 return parms_ok, project_name, datatype, ext, data_path, read_mode, delay, walk, set
5852 5856
5853 5857 def checkInputsPUSave(self, datatype):
5854 5858 """
5855 5859 Check Inputs Spectra Save:
5856 5860 - path
5857 5861 - blocks Per File
5858 5862 - sufix
5859 5863 - dataformat
5860 5864 """
5861 5865 parms_ok = True
5862 5866
5863 5867 if datatype == "Voltage":
5864 5868 output_path = str(self.volOutputPath.text())
5865 5869 blocksperfile = str(self.volOutputblocksperfile.text())
5866 5870 profilesperblock = str(self.volOutputprofilesperblock.text())
5867 5871
5868 5872 if datatype == "Spectra":
5869 5873 output_path = str(self.specOutputPath.text())
5870 5874 blocksperfile = str(self.specOutputblocksperfile.text())
5871 5875 profilesperblock = str(self.specOutputprofileperblock.text())
5872 5876
5873 5877 if datatype == "SpectraHeis":
5874 5878 output_path = str(self.specHeisOutputPath.text())
5875 5879 blocksperfile = str(self.specHeisOutputblocksperfile.text())
5876 5880 metada = str(self.specHeisOutputMetada.text())
5877 5881
5878 5882 if output_path == '':
5879 5883 outputstr = 'Outputpath is empty'
5880 5884 self.console.append(outputstr)
5881 5885 parms_ok = False
5882 5886 data_path = None
5883 5887
5884 5888 if output_path != None:
5885 5889 if not os.path.exists(output_path):
5886 5890 outputstr = 'OutputPath:%s does not exists' % output_path
5887 5891 self.console.append(outputstr)
5888 5892 parms_ok = False
5889 5893 output_path = None
5890 5894
5891 5895
5892 5896 try:
5893 5897 profilesperblock = int(profilesperblock)
5894 5898 except:
5895 5899 if datatype == "Voltage":
5896 5900 outputstr = 'Profilesperblock: %s, this must be a integer number' % str(self.volOutputprofilesperblock.text())
5897 5901 self.console.append(outputstr)
5898 5902 parms_ok = False
5899 5903 profilesperblock = None
5900 5904
5901 5905 elif datatype == "Spectra":
5902 5906 outputstr = 'Profilesperblock: %s, this must be a integer number' % str(self.specOutputprofileperblock.text())
5903 5907 self.console.append(outputstr)
5904 5908 parms_ok = False
5905 5909 profilesperblock = None
5906 5910
5907 5911 try:
5908 5912 blocksperfile = int(blocksperfile)
5909 5913 except:
5910 5914 if datatype == "Voltage":
5911 5915 outputstr = 'Blocksperfile: %s, this must be a integer number' % str(self.volOutputblocksperfile.text())
5912 5916 elif datatype == "Spectra":
5913 5917 outputstr = 'Blocksperfile: %s, this must be a integer number' % str(self.specOutputblocksperfile.text())
5914 5918 elif datatype == "SpectraHeis":
5915 5919 outputstr = 'Blocksperfile: %s, this must be a integer number' % str(self.specHeisOutputblocksperfile.text())
5916 5920
5917 5921 self.console.append(outputstr)
5918 5922 parms_ok = False
5919 5923 blocksperfile = None
5920 5924
5921 5925 if datatype == "SpectraHeis":
5922 5926 if metada == '':
5923 5927 outputstr = 'Choose metada file'
5924 5928 self.console.append(outputstr)
5925 5929 parms_ok = False
5926 5930 if metada != None:
5927 5931 if not os.path.isfile(metada):
5928 5932 outputstr = 'Metadata:%s does not exists' % metada
5929 5933 self.console.append(outputstr)
5930 5934 parms_ok = False
5931 5935 output_path = None
5932 5936
5933 5937 if datatype == "Voltage":
5934 5938 return parms_ok, output_path, blocksperfile, profilesperblock
5935 5939
5936 5940
5937 5941 if datatype == "Spectra":
5938 5942 return parms_ok, output_path, blocksperfile, profilesperblock
5939 5943
5940 5944
5941 5945 if datatype == "SpectraHeis":
5942 5946 return parms_ok, output_path, blocksperfile, metada
5943 5947
5944 5948 def loadDays(self, data_path, ext, walk):
5945 5949 """
5946 5950 Method to loads day
5947 5951 """
5948 5952 dateList = self.searchData(data_path, ext, walk)
5949 5953 if dateList == None:
5950 5954 self.console.clear()
5951 5955 outputstr = "The path: %s is empty with file extension *%s" % (data_path, ext)
5952 5956 self.console.append(outputstr)
5953 5957 return
5954 5958
5955 5959 self.dateList = dateList
5956 5960 for thisDate in dateList:
5957 5961 self.proComStartDate.addItem(thisDate)
5958 5962 self.proComEndDate.addItem(thisDate)
5959 5963 self.proComEndDate.setCurrentIndex(self.proComStartDate.count() - 1)
5960 5964
5961 5965 def setWorkSpaceGUI(self, pathWorkSpace):
5962 5966 self.pathWorkSpace = pathWorkSpace
5963 5967
5964 5968 """
5965 5969 Comandos Usados en Console
5966 5970 """
5967 5971 def __del__(self):
5968 5972 sys.stdout = sys.__stdout__
5969 5973 sys.stderr = sys.__stderr__
5970 5974
5971 5975 def normalOutputWritten(self, text):
5972 5976 self.console.append(text)
5973 5977
5974 5978
5975 5979 def setParameter(self):
5976 5980
5977 5981 self.setWindowTitle("ROJ-Signal Chain")
5978 self.setWindowIcon(QtGui.QIcon("schainpy/gui/figure/adn.jpg"))
5982 self.setWindowIcon(QtGui.QIcon( os.path.join(FIGURES_PATH,"adn.jpg") ))
5979 5983 sys.stdout = ShowMeConsole(textWritten=self.normalOutputWritten)
5980 5984 # sys.stderr = ShowMeConsole(textWritten=self.normalOutputWritten)
5981 5985 self.tabWidgetProject.setEnabled(False)
5982 5986 self.tabVoltage.setEnabled(False)
5983 5987 self.tabSpectra.setEnabled(False)
5984 5988 self.tabCorrelation.setEnabled(False)
5985 5989 self.frame_2.setEnabled(False)
5986 5990
5987 5991 self.actionCreate.setShortcut('Ctrl+N')
5988 5992 self.actionStart.setShortcut('Ctrl+P')
5989 5993 self.actionSave.setShortcut('Ctrl+S')
5990 5994 self.actionClose.setShortcut('Ctrl+Q')
5991 5995
5992 5996 self.actionStarToolbar.setEnabled(True)
5993 5997 self.actionPauseToolbar.setEnabled(False)
5994 5998 self.actionStopToolbar.setEnabled(False)
5995 5999
5996 6000 self.proName.clear()
5997 6001 self.proDataPath.setText('')
5998 6002 self.console.setReadOnly(True)
5999 6003 self.console.append("Welcome to Signal Chain\nOpen a project or Create a new one")
6000 6004 self.proStartTime.setDisplayFormat("hh:mm:ss")
6001 6005 self.proDataType.setEnabled(False)
6002 6006 self.time = QtCore.QTime()
6003 6007 self.hour = 0
6004 6008 self.min = 0
6005 6009 self.sec = 0
6006 6010 self.proEndTime.setDisplayFormat("hh:mm:ss")
6007 6011 startTime = "00:00:00"
6008 6012 endTime = "23:59:59"
6009 6013 starlist = startTime.split(":")
6010 6014 endlist = endTime.split(":")
6011 6015 self.time.setHMS(int(starlist[0]), int(starlist[1]), int(starlist[2]))
6012 6016 self.proStartTime.setTime(self.time)
6013 6017 self.time.setHMS(int(endlist[0]), int(endlist[1]), int(endlist[2]))
6014 6018 self.proEndTime.setTime(self.time)
6015 6019 self.proOk.setEnabled(False)
6016 6020 # set model Project Explorer
6017 6021 self.projectExplorerModel = QtGui.QStandardItemModel()
6018 6022 self.projectExplorerModel.setHorizontalHeaderLabels(("Project Explorer",))
6019 6023 layout = QtGui.QVBoxLayout()
6020 6024 layout.addWidget(self.projectExplorerTree)
6021 6025 self.projectExplorerTree.setModel(self.projectExplorerModel)
6022 6026 self.projectExplorerTree.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
6023 6027 self.projectExplorerTree.customContextMenuRequested.connect(self.on_right_click)
6024 6028 self.projectExplorerTree.clicked.connect(self.on_click)
6025 6029 self.projectExplorerTree.expandAll()
6026 6030 # set model Project Properties
6027 6031
6028 6032 self.propertiesModel = treeModel()
6029 6033 self.propertiesModel.initProjectView()
6030 6034 self.treeProjectProperties.setModel(self.propertiesModel)
6031 6035 self.treeProjectProperties.expandAll()
6032 6036 self.treeProjectProperties.allColumnsShowFocus()
6033 6037 self.treeProjectProperties.resizeColumnToContents(1)
6034 6038
6035 6039 # set Project
6036 6040 self.proDelay.setEnabled(False)
6037 6041 self.proSet.setEnabled(False)
6038 6042 self.proDataType.setReadOnly(True)
6039 6043
6040 6044 # set Operation Voltage
6041 6045 self.volOpComChannels.setEnabled(False)
6042 6046 self.volOpComHeights.setEnabled(False)
6043 6047 self.volOpFilter.setEnabled(False)
6044 6048 self.volOpComProfile.setEnabled(False)
6045 6049 self.volOpComCode.setEnabled(False)
6046 6050 self.volOpCohInt.setEnabled(False)
6047 6051 self.volOpRadarfrequency.setEnabled(False)
6048 6052
6049 6053 self.volOpChannel.setEnabled(False)
6050 6054 self.volOpHeights.setEnabled(False)
6051 6055 self.volOpProfile.setEnabled(False)
6052 6056 self.volOpComMode.setEnabled(False)
6053 6057
6054 6058 self.volGraphPath.setEnabled(False)
6055 6059 self.volGraphPrefix.setEnabled(False)
6056 6060 self.volGraphToolPath.setEnabled(False)
6057 6061
6058 6062 # set Graph Voltage
6059 6063 self.volGraphChannelList.setEnabled(False)
6060 6064 self.volGraphfreqrange.setEnabled(False)
6061 6065 self.volGraphHeightrange.setEnabled(False)
6062 6066
6063 6067 # set Operation Spectra
6064 6068 self.specOpnFFTpoints.setEnabled(False)
6065 6069 self.specOpProfiles.setEnabled(False)
6066 6070 self.specOpippFactor.setEnabled(False)
6067 6071 self.specOppairsList.setEnabled(False)
6068 6072 self.specOpComChannel.setEnabled(False)
6069 6073 self.specOpComHeights.setEnabled(False)
6070 6074 self.specOpIncoherent.setEnabled(False)
6071 6075 self.specOpgetNoise.setEnabled(False)
6072 6076 self.specOpRadarfrequency.setEnabled(False)
6073 6077
6074 6078
6075 6079 self.specOpChannel.setEnabled(False)
6076 6080 self.specOpHeights.setEnabled(False)
6077 6081 # set Graph Spectra
6078 6082 self.specGgraphChannelList.setEnabled(False)
6079 6083 self.specGgraphFreq.setEnabled(False)
6080 6084 self.specGgraphHeight.setEnabled(False)
6081 6085 self.specGgraphDbsrange.setEnabled(False)
6082 6086 self.specGgraphmagnitud.setEnabled(False)
6083 6087 self.specGgraphTminTmax.setEnabled(False)
6084 6088 self.specGgraphTimeRange.setEnabled(False)
6085 6089 self.specGraphPath.setEnabled(False)
6086 6090 self.specGraphToolPath.setEnabled(False)
6087 6091 self.specGraphPrefix.setEnabled(False)
6088 6092
6089 6093 self.specGgraphftpratio.setEnabled(False)
6090 6094 # set Operation SpectraHeis
6091 6095 self.specHeisOpIncoherent.setEnabled(False)
6092 6096 self.specHeisOpCobIncInt.setEnabled(False)
6093 6097 # set Graph SpectraHeis
6094 6098 self.specHeisGgraphChannelList.setEnabled(False)
6095 6099 self.specHeisGgraphXminXmax.setEnabled(False)
6096 6100 self.specHeisGgraphYminYmax.setEnabled(False)
6097 6101 self.specHeisGgraphTminTmax.setEnabled(False)
6098 6102 self.specHeisGgraphTimeRange.setEnabled(False)
6099 6103 self.specHeisGgraphftpratio.setEnabled(False)
6100 6104 self.specHeisGraphPath.setEnabled(False)
6101 6105 self.specHeisGraphPrefix.setEnabled(False)
6102 6106 self.specHeisGraphToolPath.setEnabled(False)
6103 6107
6104 6108
6105 6109 # tool tip gui
6106 6110 QtGui.QToolTip.setFont(QtGui.QFont('SansSerif', 10))
6107 6111 self.projectExplorerTree.setToolTip('Right clik to add Project or Unit Process')
6108 6112 # tool tip gui project
6109 6113 self.proComWalk.setToolTip('<b>On Files</b>:<i>Search file in format .r or pdata</i> <b>On Folders</b>:<i>Search file in a directory DYYYYDOY</i>')
6110 6114 self.proComWalk.setCurrentIndex(0)
6111 6115 # tool tip gui volOp
6112 6116 self.volOpChannel.setToolTip('Example: 1,2,3,4,5')
6113 6117 self.volOpHeights.setToolTip('Example: 90,180')
6114 6118 self.volOpFilter.setToolTip('Example: 2')
6115 6119 self.volOpProfile.setToolTip('Example:0,127')
6116 6120 self.volOpCohInt.setToolTip('Example: 128')
6117 6121 self.volOpFlip.setToolTip('ChannelList where flip will be applied. Example: 0,2,3')
6118 6122 self.volOpOk.setToolTip('If you have finished, please Ok ')
6119 6123 # tool tip gui volGraph
6120 6124 self.volGraphfreqrange.setToolTip('Example: -30,30')
6121 6125 self.volGraphHeightrange.setToolTip('Example: 20,180')
6122 6126 # tool tip gui specOp
6123 6127 self.specOpnFFTpoints.setToolTip('Example: 128')
6124 6128 self.specOpProfiles.setToolTip('Example: 128')
6125 6129 self.specOpippFactor.setToolTip('Example:1.0')
6126 6130 self.specOpIncoherent.setToolTip('Example: 10')
6127 6131 self.specOpgetNoise.setToolTip('Example:20,180,30,120 (minHei,maxHei,minVel,maxVel)')
6128 6132
6129 6133 self.specOpChannel.setToolTip('Example: 0,1,2,3')
6130 6134 self.specOpHeights.setToolTip('Example: 90,180')
6131 6135 self.specOppairsList.setToolTip('Example: (0,1),(2,3)')
6132 6136 # tool tip gui specGraph
6133 6137
6134 6138 self.specGgraphChannelList.setToolTip('Example: 0,3,4')
6135 6139 self.specGgraphFreq.setToolTip('Example: -20,20')
6136 6140 self.specGgraphHeight.setToolTip('Example: 100,400')
6137 6141 self.specGgraphDbsrange.setToolTip('Example: 30,170')
6138 6142
6139 6143 self.specGraphPrefix.setToolTip('Example: EXPERIMENT_NAME')
6140 6144
6141 6145
6142 6146 class UnitProcessWindow(QMainWindow, Ui_UnitProcess):
6143 6147 """
6144 6148 Class documentation goes here.
6145 6149 """
6146 6150 closed = pyqtSignal()
6147 6151 create = False
6148 6152
6149 6153 def __init__(self, parent=None):
6150 6154 """
6151 6155 Constructor
6152 6156 """
6153 6157 QMainWindow.__init__(self, parent)
6154 6158 self.setupUi(self)
6155 6159 self.getFromWindow = None
6156 6160 self.getfromWindowList = []
6157 6161 self.dataTypeProject = None
6158 6162
6159 6163 self.listUP = None
6160 6164
6161 6165 @pyqtSignature("")
6162 6166 def on_unitPokbut_clicked(self):
6163 6167 """
6164 6168 Slot documentation goes here.
6165 6169 """
6166 6170 self.create = True
6167 6171 self.getFromWindow = self.getfromWindowList[int(self.comboInputBox.currentIndex())]
6168 6172 # self.nameofUP= str(self.nameUptxt.text())
6169 6173 self.typeofUP = str(self.comboTypeBox.currentText())
6170 6174 self.close()
6171 6175
6172 6176
6173 6177 @pyqtSignature("")
6174 6178 def on_unitPcancelbut_clicked(self):
6175 6179 """
6176 6180 Slot documentation goes here.
6177 6181 """
6178 6182 self.create = False
6179 6183 self.close()
6180 6184
6181 6185 def loadTotalList(self):
6182 6186 self.comboInputBox.clear()
6183 6187 for i in self.getfromWindowList:
6184 6188
6185 6189 name = i.getElementName()
6186 6190 if name == 'Project':
6187 6191 id = i.id
6188 6192 name = i.name
6189 6193 if self.dataTypeProject == 'Voltage':
6190 6194 self.comboTypeBox.clear()
6191 6195 self.comboTypeBox.addItem("Voltage")
6192 6196
6193 6197 if self.dataTypeProject == 'Spectra':
6194 6198 self.comboTypeBox.clear()
6195 6199 self.comboTypeBox.addItem("Spectra")
6196 6200 self.comboTypeBox.addItem("Correlation")
6197 6201 if self.dataTypeProject == 'Fits':
6198 6202 self.comboTypeBox.clear()
6199 6203 self.comboTypeBox.addItem("SpectraHeis")
6200 6204
6201 6205
6202 6206 if name == 'ProcUnit':
6203 6207 id = int(i.id) - 1
6204 6208 name = i.datatype
6205 6209 if name == 'Voltage':
6206 6210 self.comboTypeBox.clear()
6207 6211 self.comboTypeBox.addItem("Spectra")
6208 6212 self.comboTypeBox.addItem("SpectraHeis")
6209 6213 self.comboTypeBox.addItem("Correlation")
6210 6214 if name == 'Spectra':
6211 6215 self.comboTypeBox.clear()
6212 6216 self.comboTypeBox.addItem("Spectra")
6213 6217 self.comboTypeBox.addItem("SpectraHeis")
6214 6218 self.comboTypeBox.addItem("Correlation")
6215 6219 if name == 'SpectraHeis':
6216 6220 self.comboTypeBox.clear()
6217 6221 self.comboTypeBox.addItem("SpectraHeis")
6218 6222
6219 6223 self.comboInputBox.addItem(str(name))
6220 6224 # self.comboInputBox.addItem(str(name)+str(id))
6221 6225
6222 6226 def closeEvent(self, event):
6223 6227 self.closed.emit()
6224 6228 event.accept()
6225 6229
6226 6230 class Ftp(QMainWindow, Ui_Ftp):
6227 6231 """
6228 6232 Class documentation goes here.
6229 6233 """
6230 6234 create = False
6231 6235 closed = pyqtSignal()
6232 6236 server = None
6233 6237 folder = None
6234 6238 username = None
6235 6239 password = None
6236 6240 ftp_wei = None
6237 6241 exp_code = None
6238 6242 sub_exp_code = None
6239 6243 plot_pos = None
6240 6244
6241 6245 def __init__(self, parent=None):
6242 6246 """
6243 6247 Constructor
6244 6248 """
6245 6249 QMainWindow.__init__(self, parent)
6246 6250 self.setupUi(self)
6247 6251 self.setParameter()
6248 6252
6249 6253 def setParameter(self):
6250 6254 self.setWindowTitle("ROJ-Signal Chain")
6251 6255 self.serverFTP.setToolTip('Example: jro-app.igp.gob.pe')
6252 6256 self.folderFTP.setToolTip('Example: /home/wmaster/graficos')
6253 6257 self.usernameFTP.setToolTip('Example: myusername')
6254 6258 self.passwordFTP.setToolTip('Example: mypass ')
6255 6259 self.weightFTP.setToolTip('Example: 0')
6256 6260 self.expcodeFTP.setToolTip('Example: 0')
6257 6261 self.subexpFTP.setToolTip('Example: 0')
6258 6262 self.plotposFTP.setToolTip('Example: 0')
6259 6263
6260 6264 def setParmsfromTemporal(self, server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos):
6261 6265 self.serverFTP.setText(str(server))
6262 6266 self.folderFTP.setText(str(folder))
6263 6267 self.usernameFTP.setText(str(username))
6264 6268 self.passwordFTP.setText(str(password))
6265 6269 self.weightFTP.setText(str(ftp_wei))
6266 6270 self.expcodeFTP.setText(str(exp_code))
6267 6271 self.subexpFTP.setText(str(sub_exp_code))
6268 6272 self.plotposFTP.setText(str(plot_pos))
6269 6273
6270 6274 def getParmsFromFtpWindow(self):
6271 6275 """
6272 6276 Return Inputs Project:
6273 6277 - server
6274 6278 - folder
6275 6279 - username
6276 6280 - password
6277 6281 - ftp_wei
6278 6282 - exp_code
6279 6283 - sub_exp_code
6280 6284 - plot_pos
6281 6285 """
6282 6286 name_server_ftp = str(self.serverFTP.text())
6283 6287 try:
6284 6288 name = str(self.serverFTP.text())
6285 6289 except:
6286 6290 self.console.clear()
6287 6291 self.console.append("Please Write a FTP Server")
6288 6292 return 0
6289 6293
6290 6294 folder_server_ftp = str(self.folderFTP.text())
6291 6295 try:
6292 6296 folder = str(self.folderFTP.text())
6293 6297 except:
6294 6298 self.console.clear()
6295 6299 self.console.append("Please Write a Folder")
6296 6300 return 0
6297 6301
6298 6302 username_ftp = str(self.usernameFTP.text())
6299 6303 try:
6300 6304 username = str(self.usernameFTP.text())
6301 6305 except:
6302 6306 self.console.clear()
6303 6307 self.console.append("Please Write a User Name")
6304 6308 return 0
6305 6309
6306 6310 password_ftp = str(self.passwordFTP.text())
6307 6311 try:
6308 6312 password = str(self.passwordFTP.text())
6309 6313 except:
6310 6314 self.console.clear()
6311 6315 self.console.append("Please Write a passwordFTP")
6312 6316 return 0
6313 6317
6314 6318 ftp_wei = self.weightFTP.text()
6315 6319 if not ftp_wei == "":
6316 6320 try:
6317 6321 ftp_wei = int(self.weightFTP.text())
6318 6322 except:
6319 6323 self.console.clear()
6320 6324 self.console.append("Please Write a ftp_wei number")
6321 6325 return 0
6322 6326
6323 6327 exp_code = self.expcodeFTP.text()
6324 6328 if not exp_code == "":
6325 6329 try:
6326 6330 exp_code = int(self.expcodeFTP.text())
6327 6331 except:
6328 6332 self.console.clear()
6329 6333 self.console.append("Please Write a exp_code number")
6330 6334 return 0
6331 6335
6332 6336
6333 6337 sub_exp_code = self.subexpFTP.text()
6334 6338 if not sub_exp_code == "":
6335 6339 try:
6336 6340 sub_exp_code = int(self.subexpFTP.text())
6337 6341 except:
6338 6342 self.console.clear()
6339 6343 self.console.append("Please Write a sub_exp_code number")
6340 6344 return 0
6341 6345
6342 6346 plot_pos = self.plotposFTP.text()
6343 6347 if not plot_pos == "":
6344 6348 try:
6345 6349 plot_pos = int(self.plotposFTP.text())
6346 6350 except:
6347 6351 self.console.clear()
6348 6352 self.console.append("Please Write a plot_pos number")
6349 6353 return 0
6350 6354
6351 6355 return name_server_ftp, folder_server_ftp, username_ftp, password_ftp, ftp_wei, exp_code, sub_exp_code, plot_pos
6352 6356
6353 6357 @pyqtSignature("")
6354 6358 def on_ftpOkButton_clicked(self):
6355 6359 server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos = self.getParmsFromFtpWindow()
6356 6360 self.create = True
6357 6361 self.close()
6358 6362
6359 6363 @pyqtSignature("")
6360 6364 def on_ftpCancelButton_clicked(self):
6361 6365 self.create = False
6362 6366 self.close()
6363 6367
6364 6368 def closeEvent(self, event):
6365 6369 self.closed.emit()
6366 6370 event.accept()
6367 6371
6368 6372 class ftpBuffer():
6369 6373 server = None
6370 6374 folder = None
6371 6375 username = None
6372 6376 password = None
6373 6377 ftp_wei = None
6374 6378 exp_code = None
6375 6379 sub_exp_code = None
6376 6380 plot_pos = None
6377 6381 create = False
6378 6382 withoutconfig = False
6379 6383 createforView = False
6380 6384 localfolder = None
6381 6385 extension = None
6382 6386 period = None
6383 6387 protocol = None
6384 6388
6385 6389 def __init__(self):
6386 6390
6387 6391 self.create = False
6388 6392 self.server = None
6389 6393 self.folder = None
6390 6394 self.username = None
6391 6395 self.password = None
6392 6396 self.ftp_wei = None
6393 6397 self.exp_code = None
6394 6398 self.sub_exp_code = None
6395 6399 self.plot_pos = None
6396 6400 # self.create = False
6397 6401 self.localfolder = None
6398 6402 self.extension = None
6399 6403 self.period = None
6400 6404 self.protocol = None
6401 6405
6402 6406 def setwithoutconfiguration(self):
6403 6407
6404 6408 self.create = False
6405 6409 self.server = "jro-app.igp.gob.pe"
6406 6410 self.folder = "/home/wmaster/graficos"
6407 6411 self.username = "wmaster"
6408 6412 self.password = "mst2010vhf"
6409 6413 self.ftp_wei = "0"
6410 6414 self.exp_code = "0"
6411 6415 self.sub_exp_code = "0"
6412 6416 self.plot_pos = "0"
6413 6417 self.withoutconfig = True
6414 6418 self.localfolder = './'
6415 6419 self.extension = '.png'
6416 6420 self.period = '60'
6417 6421 self.protocol = 'ftp'
6418 6422 self.createforView = True
6419 6423
6420 6424 def save(self, server, folder, username, password, ftp_wei, exp_code, sub_exp_code, plot_pos, localfolder='./', extension='.png', period='60', protocol='ftp'):
6421 6425
6422 6426 self.server = server
6423 6427 self.folder = folder
6424 6428 self.username = username
6425 6429 self.password = password
6426 6430 self.ftp_wei = ftp_wei
6427 6431 self.exp_code = exp_code
6428 6432 self.sub_exp_code = sub_exp_code
6429 6433 self.plot_pos = plot_pos
6430 6434 self.create = True
6431 6435 self.withoutconfig = False
6432 6436 self.createforView = True
6433 6437 self.localfolder = localfolder
6434 6438
6435 6439
6436 6440 def recover(self):
6437 6441
6438 6442 return self.server, self.folder, self.username, self.password, self.ftp_wei, self.exp_code, self.sub_exp_code, self.plot_pos
6439 6443
6440 6444 class ShowMeConsole(QtCore.QObject):
6441 6445 textWritten = QtCore.pyqtSignal(str)
6442 6446 def write (self, text):
6443 6447 self.textWritten.emit(str(text))
6444 6448
6445 6449 class PlotManager():
6446 6450 def __init__(self, queue):
6447 6451 self.queue = queue
6448 6452 self.objPlotDict = {}
6449 6453
6450 6454 def processIncoming(self):
6451 6455 while self.queue.qsize():
6452 6456 try:
6453 6457 dataFromQueue = self.queue.get(True)
6454 6458 if dataFromQueue == None:
6455 6459 continue
6456 6460
6457 6461 dataPlot = dataFromQueue['data']
6458 6462 kwargs = dataFromQueue['kwargs']
6459 6463 id = kwargs['id']
6460 6464 if 'channelList' in kwargs.keys():
6461 6465 channelList = kwargs['channelList']
6462 6466 else:
6463 6467 channelList = None
6464 6468 plotname = kwargs.pop('type')
6465 6469
6466 6470 if not(id in self.objPlotDict.keys()):
6467 6471 className = eval(plotname)
6468 6472 self.objPlotDict[id] = className(id, channelList, dataPlot)
6469 6473 self.objPlotDict[id].show()
6470 6474
6471 6475 self.objPlotDict[id].run(dataPlot , **kwargs)
6472 6476
6473 6477 except Queue.Empty:
6474 6478 pass
6475 6479
6476 6480
@@ -1,42 +1,46
1 1 # -*- coding: utf-8 -*-
2 2
3 3 """
4 4 Module implementing InitWindow.
5 5 """
6 import os
6 7
7 8 from PyQt4.QtGui import QDialog
8 9 from PyQt4.QtCore import pyqtSignature
9 10 from PyQt4 import QtCore
10 11 from PyQt4 import QtGui
11 12
12 13 from schainpy.gui.viewer.ui_initwindow import Ui_InitWindow
14 from schainpy.gui.figures import tools
15
16 FIGURES_PATH = tools.get_path()
13 17
14 18 class InitWindow(QDialog, Ui_InitWindow):
15 19 """
16 20 Class documentation goes here.
17 21 """
18 22 def __init__(self, parent = None):
19 23 """
20 24 Constructor
21 25 """
22 26 QDialog.__init__(self, parent)
23 27 self.setupUi(self)
24 28 self.setWindowTitle("ROJ-Signal Chain")
25 self.setWindowIcon(QtGui.QIcon("schainpy/gui/figure/adn.jpg"))
29 self.setWindowIcon(QtGui.QIcon( os.path.join(FIGURES_PATH,"adn.jpg") ))
26 30
27 31 @pyqtSignature("")
28 32 def on_ExitBtn_clicked(self):
29 33 """
30 34 Exit cierra la ventana de Bienvenida
31 35 """
32 36 self.close()
33 37
34 38 @pyqtSignature("")
35 39 def on_ContinueBtn_clicked(self):
36 40 """
37 41 Continue cierra la ventana de Bienvenida, a este evento se le complementa con la accion
38 42 conectar con la ventana de configuracion de Workspace
39 43 """
40 44 # TODO: not implemented yet
41 45 #raise NotImplementedError
42 46 self.accept()
@@ -1,67 +1,70
1 1 # -*- coding: utf-8 -*-
2 2 import os
3 3 from os.path import expanduser
4 4
5 5 from PyQt4.QtGui import QDialog
6 6 from PyQt4.QtCore import pyqtSignature
7 7 from PyQt4.QtCore import pyqtSignal
8 8 from PyQt4 import QtGui, QtCore
9 9
10 10 from schainpy.gui.viewer.ui_workspace import Ui_Workspace
11 from schainpy.gui.figures import tools
12
13 FIGURES_PATH = tools.get_path()
11 14
12 15 class Workspace(QDialog, Ui_Workspace):
13 16 """
14 17 Class documentation goes here.
15 18 """
16 19
17 20 def __init__(self, parent = None):
18 21 """
19 22 Constructor
20 23 """
21 24 QDialog.__init__(self, parent)
22 25 self.dirList=[]
23 26 self.setupUi(self)
24 27 self.setWindowTitle("ROJ-Signal Chain")
25 self.setWindowIcon(QtGui.QIcon("schainpy/gui/figure/adn.jpg"))
28 self.setWindowIcon(QtGui.QIcon( os.path.join(FIGURES_PATH,"adn.jpg") ))
26 29 #*####### DIRECTORIO DE TRABAJO #########*#
27 30 #self.dirCmbBox.setItemText(0, QtGui.QApplication.translate("MainWindow", "C:\WorkSpaceGui", None, QtGui.QApplication.UnicodeUTF8))
28 31 home=expanduser("~")
29 32 self.dir=os.path.join(home,'schain_workspace')
30 33 if not os.path.exists(self.dir):
31 34 os.makedirs(self.dir)
32 35 self.dirComBox.addItem(self.dir)
33 36 self.i=0
34 37
35 38
36 39 @pyqtSignature("")
37 40 def on_dirToolPath_clicked(self):
38 41 """
39 42 Slot documentation goes here.
40 43 """
41 44 self.i +=1
42 45 self.dirBrowse = str(QtGui.QFileDialog.getExistingDirectory(self, 'Open Directory', './', QtGui.QFileDialog.ShowDirsOnly))
43 46 self.dirComBox.addItem(self.dirBrowse)
44 47 self.dirComBox.setCurrentIndex(self.i)
45 48
46 49
47 50
48 51 @pyqtSignature("")
49 52 def on_dirOkBtn_clicked(self):
50 53 """
51 54 VISTA DE INTERFAZ GRÁFICA
52 55 """
53 56 self.accept()
54 57 # self.close()
55 58 #
56 59 @pyqtSignature("")
57 60 def on_dirCancelBtn_clicked(self):
58 61 """
59 62 Cerrar
60 63 """
61 64 self.close()
62 65
63 66
64 67
65 68
66 69
67 70 No newline at end of file
@@ -1,88 +1,93
1 1 # -*- coding: utf-8 -*-
2 2
3 3 # Form implementation generated from reading ui file '/home/roj-idl71/SignalChain/initwindowv2.ui'
4 4 #
5 5 # Created: Wed Mar 6 15:32:39 2013
6 6 # by: PyQt4 UI code generator 4.8.6
7 7 #
8 8 # WARNING! All changes made in this file will be lost!
9 9
10 10 from PyQt4 import QtCore, QtGui
11 11
12 12 try:
13 13 _fromUtf8 = QtCore.QString.fromUtf8
14 14 except AttributeError:
15 15 _fromUtf8 = lambda s: s
16 16
17 import os
18 from schainpy.gui.figures import tools
19
20 FIGURES_PATH = tools.get_path()
21
17 22 class Ui_InitWindow(object):
18 23 def setupUi(self, Dialog):
19 24 Dialog.setObjectName(_fromUtf8("Dialog"))
20 25 Dialog.resize(652, 496)
21 26 Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "Dialog", None, QtGui.QApplication.UnicodeUTF8))
22 27 self.gridLayout = QtGui.QGridLayout(Dialog)
23 28 self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
24 29 self.verticalLayout_3 = QtGui.QVBoxLayout()
25 30 self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
26 31 self.verticalLayout_4 = QtGui.QVBoxLayout()
27 32 self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
28 33 self.label_3 = QtGui.QLabel(Dialog)
29 34 font = QtGui.QFont()
30 35 font.setFamily(_fromUtf8("Cambria"))
31 36 font.setPointSize(22)
32 37 font.setBold(False)
33 38 font.setWeight(50)
34 39 self.label_3.setFont(font)
35 40 self.label_3.setText(QtGui.QApplication.translate("Dialog", "Signal Chain - Ver. 1.0", None, QtGui.QApplication.UnicodeUTF8))
36 41 self.label_3.setObjectName(_fromUtf8("label_3"))
37 42 self.verticalLayout_4.addWidget(self.label_3)
38 43 self.line_2 = QtGui.QFrame(Dialog)
39 44 self.line_2.setFrameShape(QtGui.QFrame.HLine)
40 45 self.line_2.setFrameShadow(QtGui.QFrame.Sunken)
41 46 self.line_2.setObjectName(_fromUtf8("line_2"))
42 47 self.verticalLayout_4.addWidget(self.line_2)
43 48 self.label_4 = QtGui.QLabel(Dialog)
44 49 self.label_4.setText(_fromUtf8(""))
45 self.label_4.setPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/w.jpg")))
50 self.label_4.setPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"w.jpg") )))
46 51 self.label_4.setScaledContents(True)
47 52 self.label_4.setObjectName(_fromUtf8("label_4"))
48 53 self.verticalLayout_4.addWidget(self.label_4)
49 54 self.verticalLayout_3.addLayout(self.verticalLayout_4)
50 55 self.horizontalLayout_3 = QtGui.QHBoxLayout()
51 56 self.horizontalLayout_3.setObjectName(_fromUtf8("horizontalLayout_3"))
52 57 self.horizontalLayout_4 = QtGui.QHBoxLayout()
53 58 self.horizontalLayout_4.setObjectName(_fromUtf8("horizontalLayout_4"))
54 59 spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
55 60 self.horizontalLayout_4.addItem(spacerItem)
56 61 self.ExitBtn = QtGui.QPushButton(Dialog)
57 62 self.ExitBtn.setText(QtGui.QApplication.translate("Dialog", "Exit", None, QtGui.QApplication.UnicodeUTF8))
58 63 self.ExitBtn.setObjectName(_fromUtf8("ExitBtn"))
59 64 self.horizontalLayout_4.addWidget(self.ExitBtn)
60 65 self.ContinueBtn = QtGui.QPushButton(Dialog)
61 66 self.ContinueBtn.setText(QtGui.QApplication.translate("Dialog", "Continue", None, QtGui.QApplication.UnicodeUTF8))
62 67 self.ContinueBtn.setObjectName(_fromUtf8("ContinueBtn"))
63 68 self.horizontalLayout_4.addWidget(self.ContinueBtn)
64 69 spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
65 70 self.horizontalLayout_4.addItem(spacerItem1)
66 71 self.horizontalLayout_3.addLayout(self.horizontalLayout_4)
67 72 self.verticalLayout_3.addLayout(self.horizontalLayout_3)
68 73 self.gridLayout.addLayout(self.verticalLayout_3, 0, 0, 1, 1)
69 74
70 75 self.retranslateUi(Dialog)
71 76 QtCore.QMetaObject.connectSlotsByName(Dialog)
72 77
73 78 def retranslateUi(self, Dialog):
74 79 pass
75 80
76 81
77 82 if __name__ == "__main__":
78 83 import sys
79 84 app = QtGui.QApplication(sys.argv)
80 85 Dialog = QtGui.QDialog()
81 86 ui = Ui_InitWindow()
82 87 ui.setupUi(Dialog)
83 88 Dialog.show()
84 89 sys.exit(app.exec_())
85 90
86 91
87 92
88 93
@@ -1,1532 +1,1537
1 1 # -*- coding: utf-8 -*-
2 2
3 3 # Form implementation generated from reading ui file '/home/alex/ui/MainWindow_21_02_13_v49.ui'
4 4 #
5 5 # Created: Mon Mar 24 13:28:36 2014
6 6 # by: PyQt4 UI code generator 4.10
7 7 #
8 8 # WARNING! All changes made in this file will be lost!
9 9
10 10 from PyQt4 import QtCore, QtGui
11 11 from windows import *
12 12
13 13 try:
14 14 _fromUtf8 = QtCore.QString.fromUtf8
15 15 except AttributeError:
16 16 def _fromUtf8(s):
17 17 return s
18 18
19 19 try:
20 20 _encoding = QtGui.QApplication.UnicodeUTF8
21 21 def _translate(context, text, disambig):
22 22 return QtGui.QApplication.translate(context, text, disambig, _encoding)
23 23 except AttributeError:
24 24 def _translate(context, text, disambig):
25 25 return QtGui.QApplication.translate(context, text, disambig)
26 26
27 import os
28 from schainpy.gui.figures import tools
29
30 FIGURES_PATH = tools.get_path()
31
27 32 class Ui_MainWindow(object):
28 33
29 34 def setupUi(self, MainWindow):
30 35
31 36 MainWindow.setObjectName(_fromUtf8("MainWindow"))
32 37 MainWindow.resize(1203, 711)
33 38
34 39 self.centralWidget = QtGui.QWidget(MainWindow)
35 40 self.centralWidget.setObjectName(_fromUtf8("centralWidget"))
36 41 self.gridLayout_16 = QtGui.QGridLayout(self.centralWidget)
37 42 self.gridLayout_16.setObjectName(_fromUtf8("gridLayout_16"))
38 43 self.splitter_2 = QtGui.QSplitter(self.centralWidget)
39 44 self.splitter_2.setOrientation(QtCore.Qt.Horizontal)
40 45 self.splitter_2.setObjectName(_fromUtf8("splitter_2"))
41 46 self.projectExplorerTree = QtGui.QTreeView(self.splitter_2)
42 47 self.projectExplorerTree.setObjectName(_fromUtf8("projectExplorerTree"))
43 48 self.splitter = QtGui.QSplitter(self.splitter_2)
44 49 self.splitter.setOrientation(QtCore.Qt.Vertical)
45 50 self.splitter.setObjectName(_fromUtf8("splitter"))
46 51 self.tabWidgetProject = QtGui.QTabWidget(self.splitter)
47 52 self.tabWidgetProject.setMinimumSize(QtCore.QSize(0, 278))
48 53 self.tabWidgetProject.setMaximumSize(QtCore.QSize(16777215, 16777215))
49 54 self.tabWidgetProject.setObjectName(_fromUtf8("tabWidgetProject"))
50 55
51 56
52 57 self.tabProject = QtGui.QWidget()
53 58 self.tabProject.setObjectName(_fromUtf8("tabProject"))
54 59 self.gridLayout_15 = QtGui.QGridLayout(self.tabProject)
55 60 self.gridLayout_15.setObjectName(_fromUtf8("gridLayout_15"))
56 61 self.frame = QtGui.QFrame(self.tabProject)
57 62 self.frame.setFrameShape(QtGui.QFrame.StyledPanel)
58 63 self.frame.setFrameShadow(QtGui.QFrame.Raised)
59 64 self.frame.setObjectName(_fromUtf8("frame"))
60 65 self.gridLayout_2 = QtGui.QGridLayout(self.frame)
61 66 self.gridLayout_2.setObjectName(_fromUtf8("gridLayout_2"))
62 67
63 68 self.label = QtGui.QLabel(self.frame)
64 69 self.label.setObjectName(_fromUtf8("label"))
65 70 self.gridLayout_2.addWidget(self.label, 0, 0, 1, 1)
66 71 self.proName = QtGui.QLineEdit(self.frame)
67 72 self.proName.setObjectName(_fromUtf8("proName"))
68 73 self.gridLayout_2.addWidget(self.proName, 0, 1, 1, 8)
69 74 self.label_11 = QtGui.QLabel(self.frame)
70 75 self.label_11.setObjectName(_fromUtf8("label_11"))
71 76 self.gridLayout_2.addWidget(self.label_11, 1, 0, 1, 1)
72 77 self.proComDataType = QtGui.QComboBox(self.frame)
73 78 self.proComDataType.setObjectName(_fromUtf8("proComDataType"))
74 79 self.proComDataType.addItem(_fromUtf8(""))
75 80 self.proComDataType.addItem(_fromUtf8(""))
76 81 self.proComDataType.addItem(_fromUtf8(""))
77 82 self.gridLayout_2.addWidget(self.proComDataType, 1, 1, 1, 5)
78 83 self.proDataType = QtGui.QLineEdit(self.frame)
79 84 self.proDataType.setObjectName(_fromUtf8("proDataType"))
80 85 self.gridLayout_2.addWidget(self.proDataType, 1, 6, 1, 3)
81 86 self.label_15 = QtGui.QLabel(self.frame)
82 87 self.label_15.setObjectName(_fromUtf8("label_15"))
83 88 self.gridLayout_2.addWidget(self.label_15, 2, 0, 1, 1)
84 89 self.proToolPath = QtGui.QToolButton(self.frame)
85 90 self.proToolPath.setObjectName(_fromUtf8("proToolPath"))
86 91 self.gridLayout_2.addWidget(self.proToolPath, 2, 1, 1, 1)
87 92 self.proDataPath = QtGui.QLineEdit(self.frame)
88 93 self.proDataPath.setObjectName(_fromUtf8("proDataPath"))
89 94 self.gridLayout_2.addWidget(self.proDataPath, 2, 2, 1, 7)
90 95 self.label_23 = QtGui.QLabel(self.frame)
91 96 self.label_23.setObjectName(_fromUtf8("label_23"))
92 97 self.gridLayout_2.addWidget(self.label_23, 3, 0, 1, 1)
93 98 self.proComReadMode = QtGui.QComboBox(self.frame)
94 99 self.proComReadMode.setObjectName(_fromUtf8("proComReadMode"))
95 100 self.proComReadMode.addItem(_fromUtf8(""))
96 101 self.proComReadMode.addItem(_fromUtf8(""))
97 102 self.gridLayout_2.addWidget(self.proComReadMode, 3, 1, 1, 2)
98 103 self.label_33 = QtGui.QLabel(self.frame)
99 104 self.label_33.setObjectName(_fromUtf8("label_33"))
100 105 self.gridLayout_2.addWidget(self.label_33, 3, 5, 1, 2)
101 106 self.proDelay = QtGui.QLineEdit(self.frame)
102 107 self.proDelay.setObjectName(_fromUtf8("proDelay"))
103 108 self.gridLayout_2.addWidget(self.proDelay, 3, 8, 1, 1)
104 109 self.label_32 = QtGui.QLabel(self.frame)
105 110 self.label_32.setObjectName(_fromUtf8("label_32"))
106 111 self.gridLayout_2.addWidget(self.label_32, 4, 0, 1, 1)
107 112 self.proComWalk = QtGui.QComboBox(self.frame)
108 113 self.proComWalk.setObjectName(_fromUtf8("proComWalk"))
109 114 self.proComWalk.addItem(_fromUtf8(""))
110 115 self.proComWalk.addItem(_fromUtf8(""))
111 116 self.gridLayout_2.addWidget(self.proComWalk, 4, 1, 1, 8)
112 117 self.proLoadButton = QtGui.QPushButton(self.frame)
113 118 self.proLoadButton.setObjectName(_fromUtf8("proLoadButton"))
114 119 self.gridLayout_2.addWidget(self.proLoadButton, 5, 0, 1, 9)
115 120 self.label_10 = QtGui.QLabel(self.frame)
116 121 self.label_10.setObjectName(_fromUtf8("label_10"))
117 122 self.gridLayout_2.addWidget(self.label_10, 3, 3, 1, 1)
118 123 self.proSet = QtGui.QLineEdit(self.frame)
119 124 self.proSet.setObjectName(_fromUtf8("proSet"))
120 125 self.gridLayout_2.addWidget(self.proSet, 3, 4, 1, 1)
121 126 self.gridLayout_15.addWidget(self.frame, 0, 0, 1, 1)
122 127 self.frame_2 = QtGui.QFrame(self.tabProject)
123 128 self.frame_2.setFrameShape(QtGui.QFrame.StyledPanel)
124 129 self.frame_2.setFrameShadow(QtGui.QFrame.Raised)
125 130 self.frame_2.setObjectName(_fromUtf8("frame_2"))
126 131 self.gridLayout_10 = QtGui.QGridLayout(self.frame_2)
127 132 self.gridLayout_10.setObjectName(_fromUtf8("gridLayout_10"))
128 133 self.label_27 = QtGui.QLabel(self.frame_2)
129 134 self.label_27.setObjectName(_fromUtf8("label_27"))
130 135 self.gridLayout_10.addWidget(self.label_27, 0, 0, 1, 1)
131 136 self.proComStartDate = QtGui.QComboBox(self.frame_2)
132 137 self.proComStartDate.setObjectName(_fromUtf8("proComStartDate"))
133 138 self.gridLayout_10.addWidget(self.proComStartDate, 0, 1, 1, 1)
134 139 self.label_28 = QtGui.QLabel(self.frame_2)
135 140 self.label_28.setObjectName(_fromUtf8("label_28"))
136 141 self.gridLayout_10.addWidget(self.label_28, 1, 0, 1, 1)
137 142 self.proComEndDate = QtGui.QComboBox(self.frame_2)
138 143 self.proComEndDate.setObjectName(_fromUtf8("proComEndDate"))
139 144 self.gridLayout_10.addWidget(self.proComEndDate, 1, 1, 1, 1)
140 145 self.label_2 = QtGui.QLabel(self.frame_2)
141 146 self.label_2.setObjectName(_fromUtf8("label_2"))
142 147 self.gridLayout_10.addWidget(self.label_2, 2, 0, 1, 1)
143 148 self.proStartTime = QtGui.QTimeEdit(self.frame_2)
144 149 self.proStartTime.setObjectName(_fromUtf8("proStartTime"))
145 150 self.gridLayout_10.addWidget(self.proStartTime, 2, 1, 1, 1)
146 151 self.label_3 = QtGui.QLabel(self.frame_2)
147 152 self.label_3.setObjectName(_fromUtf8("label_3"))
148 153 self.gridLayout_10.addWidget(self.label_3, 3, 0, 1, 1)
149 154 self.proEndTime = QtGui.QTimeEdit(self.frame_2)
150 155 self.proEndTime.setObjectName(_fromUtf8("proEndTime"))
151 156 self.gridLayout_10.addWidget(self.proEndTime, 3, 1, 1, 1)
152 157 self.label_30 = QtGui.QLabel(self.frame_2)
153 158 self.label_30.setObjectName(_fromUtf8("label_30"))
154 159 self.gridLayout_10.addWidget(self.label_30, 4, 0, 1, 1)
155 160 self.proDescription = QtGui.QTextEdit(self.frame_2)
156 161 self.proDescription.setObjectName(_fromUtf8("proDescription"))
157 162 self.gridLayout_10.addWidget(self.proDescription, 4, 1, 1, 1)
158 163 self.gridLayout_15.addWidget(self.frame_2, 1, 0, 1, 1)
159 164 self.frame_3 = QtGui.QFrame(self.tabProject)
160 165 self.frame_3.setFrameShape(QtGui.QFrame.StyledPanel)
161 166 self.frame_3.setFrameShadow(QtGui.QFrame.Raised)
162 167 self.frame_3.setObjectName(_fromUtf8("frame_3"))
163 168 self.gridLayout_14 = QtGui.QGridLayout(self.frame_3)
164 169 self.gridLayout_14.setObjectName(_fromUtf8("gridLayout_14"))
165 170 self.proOk = QtGui.QPushButton(self.frame_3)
166 171 self.proOk.setObjectName(_fromUtf8("proOk"))
167 172 self.gridLayout_14.addWidget(self.proOk, 0, 0, 1, 1)
168 173 self.proClear = QtGui.QPushButton(self.frame_3)
169 174 self.proClear.setObjectName(_fromUtf8("proClear"))
170 175 self.gridLayout_14.addWidget(self.proClear, 0, 1, 1, 1)
171 176 self.gridLayout_15.addWidget(self.frame_3, 2, 0, 1, 1)
172 177 self.tabWidgetProject.addTab(self.tabProject, _fromUtf8(""))
173 178 self.tabVoltage = QtGui.QWidget()
174 179 self.tabVoltage.setObjectName(_fromUtf8("tabVoltage"))
175 180 self.gridLayout_3 = QtGui.QGridLayout(self.tabVoltage)
176 181 self.gridLayout_3.setObjectName(_fromUtf8("gridLayout_3"))
177 182 self.frame_4 = QtGui.QFrame(self.tabVoltage)
178 183 self.frame_4.setFrameShape(QtGui.QFrame.StyledPanel)
179 184 self.frame_4.setFrameShadow(QtGui.QFrame.Raised)
180 185 self.frame_4.setObjectName(_fromUtf8("frame_4"))
181 186 self.gridLayout_17 = QtGui.QGridLayout(self.frame_4)
182 187 self.gridLayout_17.setObjectName(_fromUtf8("gridLayout_17"))
183 188 self.volOpOk = QtGui.QPushButton(self.frame_4)
184 189 self.volOpOk.setObjectName(_fromUtf8("volOpOk"))
185 190 self.gridLayout_17.addWidget(self.volOpOk, 0, 0, 1, 1)
186 191 self.volGraphClear = QtGui.QPushButton(self.frame_4)
187 192 self.volGraphClear.setObjectName(_fromUtf8("volGraphClear"))
188 193 self.gridLayout_17.addWidget(self.volGraphClear, 0, 1, 1, 1)
189 194 self.gridLayout_3.addWidget(self.frame_4, 1, 1, 1, 1)
190 195 self.tabWidgetVoltage = QtGui.QTabWidget(self.tabVoltage)
191 196 self.tabWidgetVoltage.setObjectName(_fromUtf8("tabWidgetVoltage"))
192 197 self.tabopVoltage = QtGui.QWidget()
193 198 self.tabopVoltage.setObjectName(_fromUtf8("tabopVoltage"))
194 199 self.gridLayout = QtGui.QGridLayout(self.tabopVoltage)
195 200 self.gridLayout.setObjectName(_fromUtf8("gridLayout"))
196 201 self.volOpHeights = QtGui.QLineEdit(self.tabopVoltage)
197 202 self.volOpHeights.setObjectName(_fromUtf8("volOpHeights"))
198 203 self.gridLayout.addWidget(self.volOpHeights, 4, 4, 1, 1)
199 204 self.volOpComHeights = QtGui.QComboBox(self.tabopVoltage)
200 205 self.volOpComHeights.setObjectName(_fromUtf8("volOpComHeights"))
201 206 self.volOpComHeights.addItem(_fromUtf8(""))
202 207 self.volOpComHeights.addItem(_fromUtf8(""))
203 208 self.gridLayout.addWidget(self.volOpComHeights, 4, 0, 1, 3)
204 209 self.volOpComChannels = QtGui.QComboBox(self.tabopVoltage)
205 210 self.volOpComChannels.setObjectName(_fromUtf8("volOpComChannels"))
206 211 self.volOpComChannels.addItem(_fromUtf8(""))
207 212 self.volOpComChannels.addItem(_fromUtf8(""))
208 213 self.gridLayout.addWidget(self.volOpComChannels, 2, 0, 1, 3)
209 214 self.volOpCebProfile = QtGui.QCheckBox(self.tabopVoltage)
210 215 self.volOpCebProfile.setObjectName(_fromUtf8("volOpCebProfile"))
211 216 self.gridLayout.addWidget(self.volOpCebProfile, 6, 0, 1, 3)
212 217 self.volOpComProfile = QtGui.QComboBox(self.tabopVoltage)
213 218 self.volOpComProfile.setObjectName(_fromUtf8("volOpComProfile"))
214 219 self.volOpComProfile.addItem(_fromUtf8(""))
215 220 self.volOpComProfile.addItem(_fromUtf8(""))
216 221 self.gridLayout.addWidget(self.volOpComProfile, 7, 0, 1, 3)
217 222 self.volOpCebDecodification = QtGui.QCheckBox(self.tabopVoltage)
218 223 self.volOpCebDecodification.setObjectName(_fromUtf8("volOpCebDecodification"))
219 224 self.gridLayout.addWidget(self.volOpCebDecodification, 8, 0, 1, 3)
220 225 self.volOpCebCohInt = QtGui.QCheckBox(self.tabopVoltage)
221 226 self.volOpCebCohInt.setObjectName(_fromUtf8("volOpCebCohInt"))
222 227 self.gridLayout.addWidget(self.volOpCebCohInt, 11, 0, 1, 3)
223 228 self.volOpProfile = QtGui.QLineEdit(self.tabopVoltage)
224 229 self.volOpProfile.setObjectName(_fromUtf8("volOpProfile"))
225 230 self.gridLayout.addWidget(self.volOpProfile, 7, 4, 1, 1)
226 231 self.volOpFilter = QtGui.QLineEdit(self.tabopVoltage)
227 232 self.volOpFilter.setObjectName(_fromUtf8("volOpFilter"))
228 233 self.gridLayout.addWidget(self.volOpFilter, 5, 4, 1, 1)
229 234 spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
230 235 self.gridLayout.addItem(spacerItem, 6, 4, 1, 1)
231 236 spacerItem1 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
232 237 self.gridLayout.addItem(spacerItem1, 8, 4, 1, 1)
233 238 spacerItem2 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
234 239 self.gridLayout.addItem(spacerItem2, 3, 4, 1, 1)
235 240 self.volOpChannel = QtGui.QLineEdit(self.tabopVoltage)
236 241 self.volOpChannel.setObjectName(_fromUtf8("volOpChannel"))
237 242 self.gridLayout.addWidget(self.volOpChannel, 2, 4, 1, 1)
238 243 self.label_4 = QtGui.QLabel(self.tabopVoltage)
239 244 self.label_4.setObjectName(_fromUtf8("label_4"))
240 245 self.gridLayout.addWidget(self.label_4, 9, 2, 1, 1)
241 246 self.volOpCebChannels = QtGui.QCheckBox(self.tabopVoltage)
242 247 self.volOpCebChannels.setObjectName(_fromUtf8("volOpCebChannels"))
243 248 self.gridLayout.addWidget(self.volOpCebChannels, 1, 0, 1, 3)
244 249 self.volOpCebHeights = QtGui.QCheckBox(self.tabopVoltage)
245 250 self.volOpCebHeights.setObjectName(_fromUtf8("volOpCebHeights"))
246 251 self.gridLayout.addWidget(self.volOpCebHeights, 3, 0, 1, 3)
247 252 self.volOpCebFilter = QtGui.QCheckBox(self.tabopVoltage)
248 253 self.volOpCebFilter.setObjectName(_fromUtf8("volOpCebFilter"))
249 254 self.gridLayout.addWidget(self.volOpCebFilter, 5, 0, 1, 3)
250 255 self.volOpRadarfrequency = QtGui.QLineEdit(self.tabopVoltage)
251 256 self.volOpRadarfrequency.setObjectName(_fromUtf8("volOpRadarfrequency"))
252 257 self.gridLayout.addWidget(self.volOpRadarfrequency, 0, 4, 1, 1)
253 258 self.volOpCebRadarfrequency = QtGui.QCheckBox(self.tabopVoltage)
254 259 self.volOpCebRadarfrequency.setObjectName(_fromUtf8("volOpCebRadarfrequency"))
255 260 self.gridLayout.addWidget(self.volOpCebRadarfrequency, 0, 0, 1, 3)
256 261 self.label_5 = QtGui.QLabel(self.tabopVoltage)
257 262 self.label_5.setObjectName(_fromUtf8("label_5"))
258 263 self.gridLayout.addWidget(self.label_5, 10, 2, 1, 1)
259 264 spacerItem3 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
260 265 self.gridLayout.addItem(spacerItem3, 1, 4, 1, 1)
261 266 self.volOpCohInt = QtGui.QLineEdit(self.tabopVoltage)
262 267 self.volOpCohInt.setObjectName(_fromUtf8("volOpCohInt"))
263 268 self.gridLayout.addWidget(self.volOpCohInt, 11, 4, 1, 1)
264 269 self.volOpComCode = QtGui.QComboBox(self.tabopVoltage)
265 270 self.volOpComCode.setObjectName(_fromUtf8("volOpComCode"))
266 271 self.volOpComCode.addItem(_fromUtf8(""))
267 272 self.volOpComCode.addItem(_fromUtf8(""))
268 273 self.volOpComCode.addItem(_fromUtf8(""))
269 274 self.volOpComCode.addItem(_fromUtf8(""))
270 275 self.volOpComCode.addItem(_fromUtf8(""))
271 276 self.volOpComCode.addItem(_fromUtf8(""))
272 277 self.volOpComCode.addItem(_fromUtf8(""))
273 278 self.volOpComCode.addItem(_fromUtf8(""))
274 279 self.volOpComCode.addItem(_fromUtf8(""))
275 280 self.volOpComCode.addItem(_fromUtf8(""))
276 281 self.volOpComCode.addItem(_fromUtf8(""))
277 282 self.volOpComCode.addItem(_fromUtf8(""))
278 283 self.volOpComCode.addItem(_fromUtf8(""))
279 284 self.gridLayout.addWidget(self.volOpComCode, 9, 4, 1, 1)
280 285 self.volOpComMode = QtGui.QComboBox(self.tabopVoltage)
281 286 self.volOpComMode.setObjectName(_fromUtf8("volOpComMode"))
282 287 self.volOpComMode.addItem(_fromUtf8(""))
283 288 self.volOpComMode.addItem(_fromUtf8(""))
284 289 self.gridLayout.addWidget(self.volOpComMode, 10, 4, 1, 1)
285 290 self.tabWidgetVoltage.addTab(self.tabopVoltage, _fromUtf8(""))
286 291 self.tabgraphVoltage = QtGui.QWidget()
287 292 self.tabgraphVoltage.setObjectName(_fromUtf8("tabgraphVoltage"))
288 293 self.gridLayout_6 = QtGui.QGridLayout(self.tabgraphVoltage)
289 294 self.gridLayout_6.setObjectName(_fromUtf8("gridLayout_6"))
290 295 spacerItem4 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
291 296 self.gridLayout_6.addItem(spacerItem4, 12, 3, 1, 1)
292 297 self.volGraphfreqrange = QtGui.QLineEdit(self.tabgraphVoltage)
293 298 self.volGraphfreqrange.setObjectName(_fromUtf8("volGraphfreqrange"))
294 299 self.gridLayout_6.addWidget(self.volGraphfreqrange, 9, 1, 1, 6)
295 300 self.volGraphPrefix = QtGui.QLineEdit(self.tabgraphVoltage)
296 301 self.volGraphPrefix.setObjectName(_fromUtf8("volGraphPrefix"))
297 302 self.gridLayout_6.addWidget(self.volGraphPrefix, 2, 1, 1, 6)
298 303 self.volGraphToolPath = QtGui.QToolButton(self.tabgraphVoltage)
299 304 self.volGraphToolPath.setObjectName(_fromUtf8("volGraphToolPath"))
300 305 self.gridLayout_6.addWidget(self.volGraphToolPath, 1, 5, 1, 2)
301 306 self.volGraphPath = QtGui.QLineEdit(self.tabgraphVoltage)
302 307 self.volGraphPath.setObjectName(_fromUtf8("volGraphPath"))
303 308 self.gridLayout_6.addWidget(self.volGraphPath, 1, 1, 1, 4)
304 309 self.label_14 = QtGui.QLabel(self.tabgraphVoltage)
305 310 self.label_14.setObjectName(_fromUtf8("label_14"))
306 311 self.gridLayout_6.addWidget(self.label_14, 6, 0, 1, 1)
307 312 spacerItem5 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
308 313 self.gridLayout_6.addItem(spacerItem5, 3, 3, 1, 1)
309 314 self.label_8 = QtGui.QLabel(self.tabgraphVoltage)
310 315 self.label_8.setObjectName(_fromUtf8("label_8"))
311 316 self.gridLayout_6.addWidget(self.label_8, 8, 0, 1, 1)
312 317 self.label_49 = QtGui.QLabel(self.tabgraphVoltage)
313 318 self.label_49.setObjectName(_fromUtf8("label_49"))
314 319 self.gridLayout_6.addWidget(self.label_49, 4, 3, 1, 1)
315 320 self.label_51 = QtGui.QLabel(self.tabgraphVoltage)
316 321 self.label_51.setObjectName(_fromUtf8("label_51"))
317 322 self.gridLayout_6.addWidget(self.label_51, 9, 0, 1, 1)
318 323 self.volGraphCebshow = QtGui.QCheckBox(self.tabgraphVoltage)
319 324 self.volGraphCebshow.setText(_fromUtf8(""))
320 325 self.volGraphCebshow.setObjectName(_fromUtf8("volGraphCebshow"))
321 326 self.gridLayout_6.addWidget(self.volGraphCebshow, 6, 3, 1, 1)
322 327 self.label_12 = QtGui.QLabel(self.tabgraphVoltage)
323 328 self.label_12.setObjectName(_fromUtf8("label_12"))
324 329 self.gridLayout_6.addWidget(self.label_12, 1, 0, 1, 1)
325 330 self.label_13 = QtGui.QLabel(self.tabgraphVoltage)
326 331 self.label_13.setObjectName(_fromUtf8("label_13"))
327 332 self.gridLayout_6.addWidget(self.label_13, 2, 0, 1, 1)
328 333 self.label_52 = QtGui.QLabel(self.tabgraphVoltage)
329 334 self.label_52.setObjectName(_fromUtf8("label_52"))
330 335 self.gridLayout_6.addWidget(self.label_52, 11, 0, 1, 1)
331 336 spacerItem6 = QtGui.QSpacerItem(40, 12, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
332 337 self.gridLayout_6.addItem(spacerItem6, 14, 5, 1, 2)
333 338 spacerItem7 = QtGui.QSpacerItem(18, 12, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
334 339 self.gridLayout_6.addItem(spacerItem7, 14, 3, 1, 1)
335 340 self.volGraphChannelList = QtGui.QLineEdit(self.tabgraphVoltage)
336 341 self.volGraphChannelList.setObjectName(_fromUtf8("volGraphChannelList"))
337 342 self.gridLayout_6.addWidget(self.volGraphChannelList, 8, 1, 1, 6)
338 343 self.volGraphHeightrange = QtGui.QLineEdit(self.tabgraphVoltage)
339 344 self.volGraphHeightrange.setObjectName(_fromUtf8("volGraphHeightrange"))
340 345 self.gridLayout_6.addWidget(self.volGraphHeightrange, 11, 1, 1, 6)
341 346 self.label_50 = QtGui.QLabel(self.tabgraphVoltage)
342 347 self.label_50.setObjectName(_fromUtf8("label_50"))
343 348 self.gridLayout_6.addWidget(self.label_50, 4, 4, 1, 1)
344 349 self.volGraphCebSave = QtGui.QCheckBox(self.tabgraphVoltage)
345 350 self.volGraphCebSave.setText(_fromUtf8(""))
346 351 self.volGraphCebSave.setObjectName(_fromUtf8("volGraphCebSave"))
347 352 self.gridLayout_6.addWidget(self.volGraphCebSave, 6, 4, 1, 1)
348 353 self.tabWidgetVoltage.addTab(self.tabgraphVoltage, _fromUtf8(""))
349 354 self.taboutputVoltage = QtGui.QWidget()
350 355 self.taboutputVoltage.setObjectName(_fromUtf8("taboutputVoltage"))
351 356 self.gridLayout_12 = QtGui.QGridLayout(self.taboutputVoltage)
352 357 self.gridLayout_12.setObjectName(_fromUtf8("gridLayout_12"))
353 358 self.label_36 = QtGui.QLabel(self.taboutputVoltage)
354 359 self.label_36.setObjectName(_fromUtf8("label_36"))
355 360 self.gridLayout_12.addWidget(self.label_36, 0, 0, 1, 1)
356 361 self.label_37 = QtGui.QLabel(self.taboutputVoltage)
357 362 self.label_37.setObjectName(_fromUtf8("label_37"))
358 363 self.gridLayout_12.addWidget(self.label_37, 1, 0, 1, 1)
359 364 self.volOutputPath = QtGui.QLineEdit(self.taboutputVoltage)
360 365 self.volOutputPath.setObjectName(_fromUtf8("volOutputPath"))
361 366 self.gridLayout_12.addWidget(self.volOutputPath, 1, 2, 1, 1)
362 367 self.volOutputToolPath = QtGui.QToolButton(self.taboutputVoltage)
363 368 self.volOutputToolPath.setObjectName(_fromUtf8("volOutputToolPath"))
364 369 self.gridLayout_12.addWidget(self.volOutputToolPath, 1, 3, 1, 1)
365 370 self.volOutputComData = QtGui.QComboBox(self.taboutputVoltage)
366 371 self.volOutputComData.setObjectName(_fromUtf8("volOutputComData"))
367 372 self.volOutputComData.addItem(_fromUtf8(""))
368 373 self.gridLayout_12.addWidget(self.volOutputComData, 0, 2, 1, 2)
369 374 spacerItem8 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
370 375 self.gridLayout_12.addItem(spacerItem8, 5, 2, 1, 1)
371 376 self.volOutputblocksperfile = QtGui.QLineEdit(self.taboutputVoltage)
372 377 self.volOutputblocksperfile.setObjectName(_fromUtf8("volOutputblocksperfile"))
373 378 self.gridLayout_12.addWidget(self.volOutputblocksperfile, 3, 2, 1, 1)
374 379 self.label_7 = QtGui.QLabel(self.taboutputVoltage)
375 380 self.label_7.setObjectName(_fromUtf8("label_7"))
376 381 self.gridLayout_12.addWidget(self.label_7, 3, 0, 1, 1)
377 382 self.label_35 = QtGui.QLabel(self.taboutputVoltage)
378 383 self.label_35.setObjectName(_fromUtf8("label_35"))
379 384 self.gridLayout_12.addWidget(self.label_35, 4, 0, 1, 1)
380 385 self.volOutputprofilesperblock = QtGui.QLineEdit(self.taboutputVoltage)
381 386 self.volOutputprofilesperblock.setObjectName(_fromUtf8("volOutputprofilesperblock"))
382 387 self.gridLayout_12.addWidget(self.volOutputprofilesperblock, 4, 2, 1, 1)
383 388 self.tabWidgetVoltage.addTab(self.taboutputVoltage, _fromUtf8(""))
384 389 self.gridLayout_3.addWidget(self.tabWidgetVoltage, 0, 1, 1, 1)
385 390 self.tabWidgetProject.addTab(self.tabVoltage, _fromUtf8(""))
386 391 self.tabSpectra = QtGui.QWidget()
387 392 self.tabSpectra.setObjectName(_fromUtf8("tabSpectra"))
388 393 self.gridLayout_7 = QtGui.QGridLayout(self.tabSpectra)
389 394 self.gridLayout_7.setObjectName(_fromUtf8("gridLayout_7"))
390 395 self.frame_5 = QtGui.QFrame(self.tabSpectra)
391 396 self.frame_5.setFrameShape(QtGui.QFrame.StyledPanel)
392 397 self.frame_5.setFrameShadow(QtGui.QFrame.Raised)
393 398 self.frame_5.setObjectName(_fromUtf8("frame_5"))
394 399 self.gridLayout_18 = QtGui.QGridLayout(self.frame_5)
395 400 self.gridLayout_18.setObjectName(_fromUtf8("gridLayout_18"))
396 401 self.specOpOk = QtGui.QPushButton(self.frame_5)
397 402 self.specOpOk.setObjectName(_fromUtf8("specOpOk"))
398 403 self.gridLayout_18.addWidget(self.specOpOk, 0, 0, 1, 1)
399 404 self.specGraphClear = QtGui.QPushButton(self.frame_5)
400 405 self.specGraphClear.setObjectName(_fromUtf8("specGraphClear"))
401 406 self.gridLayout_18.addWidget(self.specGraphClear, 0, 1, 1, 1)
402 407 self.gridLayout_7.addWidget(self.frame_5, 1, 1, 1, 1)
403 408 self.tabWidgetSpectra = QtGui.QTabWidget(self.tabSpectra)
404 409 self.tabWidgetSpectra.setObjectName(_fromUtf8("tabWidgetSpectra"))
405 410 self.tabopSpectra = QtGui.QWidget()
406 411 self.tabopSpectra.setObjectName(_fromUtf8("tabopSpectra"))
407 412 self.gridLayout_5 = QtGui.QGridLayout(self.tabopSpectra)
408 413 self.gridLayout_5.setObjectName(_fromUtf8("gridLayout_5"))
409 414 self.specOpCebCrossSpectra = QtGui.QCheckBox(self.tabopSpectra)
410 415 self.specOpCebCrossSpectra.setObjectName(_fromUtf8("specOpCebCrossSpectra"))
411 416 self.gridLayout_5.addWidget(self.specOpCebCrossSpectra, 4, 0, 1, 2)
412 417 self.specOpComChannel = QtGui.QComboBox(self.tabopSpectra)
413 418 self.specOpComChannel.setObjectName(_fromUtf8("specOpComChannel"))
414 419 self.specOpComChannel.addItem(_fromUtf8(""))
415 420 self.specOpComChannel.addItem(_fromUtf8(""))
416 421 self.gridLayout_5.addWidget(self.specOpComChannel, 8, 0, 1, 2)
417 422 self.specOpChannel = QtGui.QLineEdit(self.tabopSpectra)
418 423 self.specOpChannel.setObjectName(_fromUtf8("specOpChannel"))
419 424 self.gridLayout_5.addWidget(self.specOpChannel, 8, 3, 1, 2)
420 425 self.specOpComHeights = QtGui.QComboBox(self.tabopSpectra)
421 426 self.specOpComHeights.setObjectName(_fromUtf8("specOpComHeights"))
422 427 self.specOpComHeights.addItem(_fromUtf8(""))
423 428 self.specOpComHeights.addItem(_fromUtf8(""))
424 429 self.gridLayout_5.addWidget(self.specOpComHeights, 11, 0, 1, 2)
425 430 self.specOpHeights = QtGui.QLineEdit(self.tabopSpectra)
426 431 self.specOpHeights.setObjectName(_fromUtf8("specOpHeights"))
427 432 self.gridLayout_5.addWidget(self.specOpHeights, 11, 3, 1, 2)
428 433 self.specOpIncoherent = QtGui.QLineEdit(self.tabopSpectra)
429 434 self.specOpIncoherent.setObjectName(_fromUtf8("specOpIncoherent"))
430 435 self.gridLayout_5.addWidget(self.specOpIncoherent, 13, 3, 1, 2)
431 436 self.specOpCebRemoveDC = QtGui.QCheckBox(self.tabopSpectra)
432 437 self.specOpCebRemoveDC.setObjectName(_fromUtf8("specOpCebRemoveDC"))
433 438 self.gridLayout_5.addWidget(self.specOpCebRemoveDC, 14, 0, 1, 2)
434 439 self.specOpCebHeights = QtGui.QCheckBox(self.tabopSpectra)
435 440 self.specOpCebHeights.setObjectName(_fromUtf8("specOpCebHeights"))
436 441 self.gridLayout_5.addWidget(self.specOpCebHeights, 9, 0, 1, 1)
437 442 self.specOpCebChannel = QtGui.QCheckBox(self.tabopSpectra)
438 443 self.specOpCebChannel.setObjectName(_fromUtf8("specOpCebChannel"))
439 444 self.gridLayout_5.addWidget(self.specOpCebChannel, 7, 0, 1, 1)
440 445 self.specOppairsList = QtGui.QLineEdit(self.tabopSpectra)
441 446 self.specOppairsList.setObjectName(_fromUtf8("specOppairsList"))
442 447 self.gridLayout_5.addWidget(self.specOppairsList, 6, 3, 1, 2)
443 448 self.specOpnFFTpoints = QtGui.QLineEdit(self.tabopSpectra)
444 449 self.specOpnFFTpoints.setObjectName(_fromUtf8("specOpnFFTpoints"))
445 450 self.gridLayout_5.addWidget(self.specOpnFFTpoints, 2, 3, 1, 2)
446 451 self.label_31 = QtGui.QLabel(self.tabopSpectra)
447 452 self.label_31.setObjectName(_fromUtf8("label_31"))
448 453 self.gridLayout_5.addWidget(self.label_31, 6, 0, 1, 2)
449 454 self.label_26 = QtGui.QLabel(self.tabopSpectra)
450 455 self.label_26.setObjectName(_fromUtf8("label_26"))
451 456 self.gridLayout_5.addWidget(self.label_26, 2, 0, 1, 2)
452 457 self.specOpCebIncoherent = QtGui.QCheckBox(self.tabopSpectra)
453 458 self.specOpCebIncoherent.setObjectName(_fromUtf8("specOpCebIncoherent"))
454 459 self.gridLayout_5.addWidget(self.specOpCebIncoherent, 12, 0, 1, 1)
455 460 self.specOpCobIncInt = QtGui.QComboBox(self.tabopSpectra)
456 461 self.specOpCobIncInt.setObjectName(_fromUtf8("specOpCobIncInt"))
457 462 self.specOpCobIncInt.addItem(_fromUtf8(""))
458 463 self.specOpCobIncInt.addItem(_fromUtf8(""))
459 464 self.gridLayout_5.addWidget(self.specOpCobIncInt, 13, 0, 1, 2)
460 465 spacerItem9 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
461 466 self.gridLayout_5.addItem(spacerItem9, 12, 3, 1, 1)
462 467 self.specOpCebRadarfrequency = QtGui.QCheckBox(self.tabopSpectra)
463 468 self.specOpCebRadarfrequency.setObjectName(_fromUtf8("specOpCebRadarfrequency"))
464 469 self.gridLayout_5.addWidget(self.specOpCebRadarfrequency, 0, 0, 1, 2)
465 470 spacerItem10 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
466 471 self.gridLayout_5.addItem(spacerItem10, 9, 3, 1, 1)
467 472 spacerItem11 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
468 473 self.gridLayout_5.addItem(spacerItem11, 7, 3, 1, 1)
469 474 self.specOpRadarfrequency = QtGui.QLineEdit(self.tabopSpectra)
470 475 self.specOpRadarfrequency.setObjectName(_fromUtf8("specOpRadarfrequency"))
471 476 self.gridLayout_5.addWidget(self.specOpRadarfrequency, 0, 3, 1, 2)
472 477 spacerItem12 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
473 478 self.gridLayout_5.addItem(spacerItem12, 4, 3, 1, 1)
474 479 self.label_21 = QtGui.QLabel(self.tabopSpectra)
475 480 self.label_21.setObjectName(_fromUtf8("label_21"))
476 481 self.gridLayout_5.addWidget(self.label_21, 1, 0, 1, 1)
477 482 self.specOpProfiles = QtGui.QLineEdit(self.tabopSpectra)
478 483 self.specOpProfiles.setObjectName(_fromUtf8("specOpProfiles"))
479 484 self.gridLayout_5.addWidget(self.specOpProfiles, 1, 3, 1, 2)
480 485 self.specOpCebRemoveInt = QtGui.QCheckBox(self.tabopSpectra)
481 486 self.specOpCebRemoveInt.setObjectName(_fromUtf8("specOpCebRemoveInt"))
482 487 self.gridLayout_5.addWidget(self.specOpCebRemoveInt, 15, 0, 1, 1)
483 488 spacerItem13 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
484 489 self.gridLayout_5.addItem(spacerItem13, 15, 3, 1, 1)
485 490 self.label_70 = QtGui.QLabel(self.tabopSpectra)
486 491 self.label_70.setObjectName(_fromUtf8("label_70"))
487 492 self.gridLayout_5.addWidget(self.label_70, 3, 0, 1, 1)
488 493 self.specOpCebgetNoise = QtGui.QCheckBox(self.tabopSpectra)
489 494 self.specOpCebgetNoise.setObjectName(_fromUtf8("specOpCebgetNoise"))
490 495 self.gridLayout_5.addWidget(self.specOpCebgetNoise, 16, 0, 1, 1)
491 496 self.specOpippFactor = QtGui.QLineEdit(self.tabopSpectra)
492 497 self.specOpippFactor.setObjectName(_fromUtf8("specOpippFactor"))
493 498 self.gridLayout_5.addWidget(self.specOpippFactor, 3, 3, 1, 2)
494 499 self.specOpComRemoveDC = QtGui.QComboBox(self.tabopSpectra)
495 500 self.specOpComRemoveDC.setObjectName(_fromUtf8("specOpComRemoveDC"))
496 501 self.specOpComRemoveDC.addItem(_fromUtf8(""))
497 502 self.specOpComRemoveDC.addItem(_fromUtf8(""))
498 503 self.gridLayout_5.addWidget(self.specOpComRemoveDC, 14, 3, 1, 2)
499 504 self.specOpgetNoise = QtGui.QLineEdit(self.tabopSpectra)
500 505 self.specOpgetNoise.setObjectName(_fromUtf8("specOpgetNoise"))
501 506 self.gridLayout_5.addWidget(self.specOpgetNoise, 16, 3, 1, 2)
502 507 self.tabWidgetSpectra.addTab(self.tabopSpectra, _fromUtf8(""))
503 508 self.tabgraphSpectra = QtGui.QWidget()
504 509 self.tabgraphSpectra.setObjectName(_fromUtf8("tabgraphSpectra"))
505 510 self.gridLayout_9 = QtGui.QGridLayout(self.tabgraphSpectra)
506 511 self.gridLayout_9.setObjectName(_fromUtf8("gridLayout_9"))
507 512 self.label_44 = QtGui.QLabel(self.tabgraphSpectra)
508 513 self.label_44.setObjectName(_fromUtf8("label_44"))
509 514 self.gridLayout_9.addWidget(self.label_44, 10, 0, 1, 1)
510 515 spacerItem14 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
511 516 self.gridLayout_9.addItem(spacerItem14, 14, 2, 1, 1)
512 517 self.label_20 = QtGui.QLabel(self.tabgraphSpectra)
513 518 self.label_20.setObjectName(_fromUtf8("label_20"))
514 519 self.gridLayout_9.addWidget(self.label_20, 21, 0, 1, 1)
515 520 self.specGraphSaveRTInoise = QtGui.QCheckBox(self.tabgraphSpectra)
516 521 self.specGraphSaveRTInoise.setText(_fromUtf8(""))
517 522 self.specGraphSaveRTInoise.setObjectName(_fromUtf8("specGraphSaveRTInoise"))
518 523 self.gridLayout_9.addWidget(self.specGraphSaveRTInoise, 13, 4, 1, 1)
519 524 self.specGgraphmagnitud = QtGui.QLineEdit(self.tabgraphSpectra)
520 525 self.specGgraphmagnitud.setObjectName(_fromUtf8("specGgraphmagnitud"))
521 526 self.gridLayout_9.addWidget(self.specGgraphmagnitud, 20, 1, 1, 7)
522 527 self.specGraphSaveSpectra = QtGui.QCheckBox(self.tabgraphSpectra)
523 528 self.specGraphSaveSpectra.setText(_fromUtf8(""))
524 529 self.specGraphSaveSpectra.setObjectName(_fromUtf8("specGraphSaveSpectra"))
525 530 self.gridLayout_9.addWidget(self.specGraphSaveSpectra, 6, 4, 1, 1)
526 531 self.specGgraphChannelList = QtGui.QLineEdit(self.tabgraphSpectra)
527 532 self.specGgraphChannelList.setObjectName(_fromUtf8("specGgraphChannelList"))
528 533 self.gridLayout_9.addWidget(self.specGgraphChannelList, 15, 1, 1, 7)
529 534 self.label_25 = QtGui.QLabel(self.tabgraphSpectra)
530 535 self.label_25.setObjectName(_fromUtf8("label_25"))
531 536 self.gridLayout_9.addWidget(self.label_25, 2, 0, 1, 1)
532 537 self.specGgraphTminTmax = QtGui.QLineEdit(self.tabgraphSpectra)
533 538 self.specGgraphTminTmax.setObjectName(_fromUtf8("specGgraphTminTmax"))
534 539 self.gridLayout_9.addWidget(self.specGgraphTminTmax, 21, 1, 1, 7)
535 540 spacerItem15 = QtGui.QSpacerItem(28, 15, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
536 541 self.gridLayout_9.addItem(spacerItem15, 27, 6, 1, 2)
537 542 spacerItem16 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
538 543 self.gridLayout_9.addItem(spacerItem16, 3, 5, 1, 1)
539 544 self.label_42 = QtGui.QLabel(self.tabgraphSpectra)
540 545 self.label_42.setObjectName(_fromUtf8("label_42"))
541 546 self.gridLayout_9.addWidget(self.label_42, 9, 0, 1, 1)
542 547 self.label_16 = QtGui.QLabel(self.tabgraphSpectra)
543 548 self.label_16.setObjectName(_fromUtf8("label_16"))
544 549 self.gridLayout_9.addWidget(self.label_16, 18, 0, 1, 1)
545 550 self.label_17 = QtGui.QLabel(self.tabgraphSpectra)
546 551 self.label_17.setObjectName(_fromUtf8("label_17"))
547 552 self.gridLayout_9.addWidget(self.label_17, 19, 0, 1, 1)
548 553 self.label_18 = QtGui.QLabel(self.tabgraphSpectra)
549 554 self.label_18.setObjectName(_fromUtf8("label_18"))
550 555 self.gridLayout_9.addWidget(self.label_18, 20, 0, 1, 1)
551 556 self.specGgraphFreq = QtGui.QLineEdit(self.tabgraphSpectra)
552 557 self.specGgraphFreq.setObjectName(_fromUtf8("specGgraphFreq"))
553 558 self.gridLayout_9.addWidget(self.specGgraphFreq, 16, 1, 1, 7)
554 559 self.specGgraphHeight = QtGui.QLineEdit(self.tabgraphSpectra)
555 560 self.specGgraphHeight.setObjectName(_fromUtf8("specGgraphHeight"))
556 561 self.gridLayout_9.addWidget(self.specGgraphHeight, 18, 1, 1, 7)
557 562 spacerItem17 = QtGui.QSpacerItem(49, 15, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
558 563 self.gridLayout_9.addItem(spacerItem17, 27, 0, 1, 1)
559 564 self.label_24 = QtGui.QLabel(self.tabgraphSpectra)
560 565 self.label_24.setObjectName(_fromUtf8("label_24"))
561 566 self.gridLayout_9.addWidget(self.label_24, 0, 0, 1, 1)
562 567 self.specGraphPrefix = QtGui.QLineEdit(self.tabgraphSpectra)
563 568 self.specGraphPrefix.setObjectName(_fromUtf8("specGraphPrefix"))
564 569 self.gridLayout_9.addWidget(self.specGraphPrefix, 2, 1, 1, 7)
565 570 self.specGgraphDbsrange = QtGui.QLineEdit(self.tabgraphSpectra)
566 571 self.specGgraphDbsrange.setObjectName(_fromUtf8("specGgraphDbsrange"))
567 572 self.gridLayout_9.addWidget(self.specGgraphDbsrange, 19, 1, 1, 7)
568 573 self.label_46 = QtGui.QLabel(self.tabgraphSpectra)
569 574 self.label_46.setObjectName(_fromUtf8("label_46"))
570 575 self.gridLayout_9.addWidget(self.label_46, 11, 0, 1, 1)
571 576 self.label_22 = QtGui.QLabel(self.tabgraphSpectra)
572 577 self.label_22.setObjectName(_fromUtf8("label_22"))
573 578 self.gridLayout_9.addWidget(self.label_22, 16, 0, 1, 1)
574 579 self.specGraphPath = QtGui.QLineEdit(self.tabgraphSpectra)
575 580 self.specGraphPath.setObjectName(_fromUtf8("specGraphPath"))
576 581 self.gridLayout_9.addWidget(self.specGraphPath, 0, 1, 1, 6)
577 582 self.label_41 = QtGui.QLabel(self.tabgraphSpectra)
578 583 self.label_41.setObjectName(_fromUtf8("label_41"))
579 584 self.gridLayout_9.addWidget(self.label_41, 8, 0, 1, 1)
580 585 self.specGraphToolPath = QtGui.QToolButton(self.tabgraphSpectra)
581 586 self.specGraphToolPath.setObjectName(_fromUtf8("specGraphToolPath"))
582 587 self.gridLayout_9.addWidget(self.specGraphToolPath, 0, 7, 1, 1)
583 588 self.label_6 = QtGui.QLabel(self.tabgraphSpectra)
584 589 self.label_6.setObjectName(_fromUtf8("label_6"))
585 590 self.gridLayout_9.addWidget(self.label_6, 15, 0, 1, 1)
586 591 self.label_40 = QtGui.QLabel(self.tabgraphSpectra)
587 592 self.label_40.setObjectName(_fromUtf8("label_40"))
588 593 self.gridLayout_9.addWidget(self.label_40, 6, 0, 1, 1)
589 594 self.specGraphCebSpectraplot = QtGui.QCheckBox(self.tabgraphSpectra)
590 595 self.specGraphCebSpectraplot.setText(_fromUtf8(""))
591 596 self.specGraphCebSpectraplot.setObjectName(_fromUtf8("specGraphCebSpectraplot"))
592 597 self.gridLayout_9.addWidget(self.specGraphCebSpectraplot, 6, 2, 1, 1)
593 598 self.specGraphCebCrossSpectraplot = QtGui.QCheckBox(self.tabgraphSpectra)
594 599 self.specGraphCebCrossSpectraplot.setText(_fromUtf8(""))
595 600 self.specGraphCebCrossSpectraplot.setObjectName(_fromUtf8("specGraphCebCrossSpectraplot"))
596 601 self.gridLayout_9.addWidget(self.specGraphCebCrossSpectraplot, 8, 2, 1, 1)
597 602 self.specGraphCebRTIplot = QtGui.QCheckBox(self.tabgraphSpectra)
598 603 self.specGraphCebRTIplot.setText(_fromUtf8(""))
599 604 self.specGraphCebRTIplot.setObjectName(_fromUtf8("specGraphCebRTIplot"))
600 605 self.gridLayout_9.addWidget(self.specGraphCebRTIplot, 9, 2, 1, 1)
601 606 self.specGraphCebCoherencmap = QtGui.QCheckBox(self.tabgraphSpectra)
602 607 self.specGraphCebCoherencmap.setText(_fromUtf8(""))
603 608 self.specGraphCebCoherencmap.setObjectName(_fromUtf8("specGraphCebCoherencmap"))
604 609 self.gridLayout_9.addWidget(self.specGraphCebCoherencmap, 10, 2, 1, 1)
605 610 self.specGraphPowerprofile = QtGui.QCheckBox(self.tabgraphSpectra)
606 611 self.specGraphPowerprofile.setText(_fromUtf8(""))
607 612 self.specGraphPowerprofile.setObjectName(_fromUtf8("specGraphPowerprofile"))
608 613 self.gridLayout_9.addWidget(self.specGraphPowerprofile, 11, 2, 1, 1)
609 614 self.specGraphSaveCross = QtGui.QCheckBox(self.tabgraphSpectra)
610 615 self.specGraphSaveCross.setText(_fromUtf8(""))
611 616 self.specGraphSaveCross.setObjectName(_fromUtf8("specGraphSaveCross"))
612 617 self.gridLayout_9.addWidget(self.specGraphSaveCross, 8, 4, 1, 1)
613 618 self.specGraphftpSpectra = QtGui.QCheckBox(self.tabgraphSpectra)
614 619 self.specGraphftpSpectra.setText(_fromUtf8(""))
615 620 self.specGraphftpSpectra.setObjectName(_fromUtf8("specGraphftpSpectra"))
616 621 self.gridLayout_9.addWidget(self.specGraphftpSpectra, 6, 6, 1, 1)
617 622 spacerItem18 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
618 623 self.gridLayout_9.addItem(spacerItem18, 4, 3, 1, 1)
619 624 self.specGraphSavePowerprofile = QtGui.QCheckBox(self.tabgraphSpectra)
620 625 self.specGraphSavePowerprofile.setText(_fromUtf8(""))
621 626 self.specGraphSavePowerprofile.setObjectName(_fromUtf8("specGraphSavePowerprofile"))
622 627 self.gridLayout_9.addWidget(self.specGraphSavePowerprofile, 11, 4, 1, 1)
623 628 self.specGraphSaveCoherencemap = QtGui.QCheckBox(self.tabgraphSpectra)
624 629 self.specGraphSaveCoherencemap.setText(_fromUtf8(""))
625 630 self.specGraphSaveCoherencemap.setObjectName(_fromUtf8("specGraphSaveCoherencemap"))
626 631 self.gridLayout_9.addWidget(self.specGraphSaveCoherencemap, 10, 4, 1, 1)
627 632 spacerItem19 = QtGui.QSpacerItem(39, 15, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
628 633 self.gridLayout_9.addItem(spacerItem19, 27, 4, 1, 1)
629 634 self.specGgraphftpratio = QtGui.QLineEdit(self.tabgraphSpectra)
630 635 self.specGgraphftpratio.setObjectName(_fromUtf8("specGgraphftpratio"))
631 636 self.gridLayout_9.addWidget(self.specGgraphftpratio, 23, 1, 1, 7)
632 637 self.label_43 = QtGui.QLabel(self.tabgraphSpectra)
633 638 self.label_43.setObjectName(_fromUtf8("label_43"))
634 639 self.gridLayout_9.addWidget(self.label_43, 3, 2, 2, 1)
635 640 self.specGraphftpCross = QtGui.QCheckBox(self.tabgraphSpectra)
636 641 self.specGraphftpCross.setText(_fromUtf8(""))
637 642 self.specGraphftpCross.setObjectName(_fromUtf8("specGraphftpCross"))
638 643 self.gridLayout_9.addWidget(self.specGraphftpCross, 8, 6, 1, 1)
639 644 self.label_29 = QtGui.QLabel(self.tabgraphSpectra)
640 645 self.label_29.setObjectName(_fromUtf8("label_29"))
641 646 self.gridLayout_9.addWidget(self.label_29, 23, 0, 1, 1)
642 647 self.label_47 = QtGui.QLabel(self.tabgraphSpectra)
643 648 self.label_47.setObjectName(_fromUtf8("label_47"))
644 649 self.gridLayout_9.addWidget(self.label_47, 3, 4, 2, 1)
645 650 self.specGraphftpRTIplot = QtGui.QCheckBox(self.tabgraphSpectra)
646 651 self.specGraphftpRTIplot.setText(_fromUtf8(""))
647 652 self.specGraphftpRTIplot.setObjectName(_fromUtf8("specGraphftpRTIplot"))
648 653 self.gridLayout_9.addWidget(self.specGraphftpRTIplot, 9, 6, 1, 1)
649 654 self.specGraphftpCoherencemap = QtGui.QCheckBox(self.tabgraphSpectra)
650 655 self.specGraphftpCoherencemap.setText(_fromUtf8(""))
651 656 self.specGraphftpCoherencemap.setObjectName(_fromUtf8("specGraphftpCoherencemap"))
652 657 self.gridLayout_9.addWidget(self.specGraphftpCoherencemap, 10, 6, 1, 1)
653 658 self.specGraphftpPowerprofile = QtGui.QCheckBox(self.tabgraphSpectra)
654 659 self.specGraphftpPowerprofile.setText(_fromUtf8(""))
655 660 self.specGraphftpPowerprofile.setObjectName(_fromUtf8("specGraphftpPowerprofile"))
656 661 self.gridLayout_9.addWidget(self.specGraphftpPowerprofile, 11, 6, 1, 1)
657 662 self.label_19 = QtGui.QLabel(self.tabgraphSpectra)
658 663 self.label_19.setObjectName(_fromUtf8("label_19"))
659 664 self.gridLayout_9.addWidget(self.label_19, 3, 6, 2, 2)
660 665 self.specGraphSaveRTIplot = QtGui.QCheckBox(self.tabgraphSpectra)
661 666 self.specGraphSaveRTIplot.setText(_fromUtf8(""))
662 667 self.specGraphSaveRTIplot.setObjectName(_fromUtf8("specGraphSaveRTIplot"))
663 668 self.gridLayout_9.addWidget(self.specGraphSaveRTIplot, 9, 4, 1, 1)
664 669 self.label_45 = QtGui.QLabel(self.tabgraphSpectra)
665 670 self.label_45.setObjectName(_fromUtf8("label_45"))
666 671 self.gridLayout_9.addWidget(self.label_45, 13, 0, 1, 1)
667 672 self.specGraphftpRTInoise = QtGui.QCheckBox(self.tabgraphSpectra)
668 673 self.specGraphftpRTInoise.setText(_fromUtf8(""))
669 674 self.specGraphftpRTInoise.setObjectName(_fromUtf8("specGraphftpRTInoise"))
670 675 self.gridLayout_9.addWidget(self.specGraphftpRTInoise, 13, 6, 1, 1)
671 676 self.specGraphCebRTInoise = QtGui.QCheckBox(self.tabgraphSpectra)
672 677 self.specGraphCebRTInoise.setText(_fromUtf8(""))
673 678 self.specGraphCebRTInoise.setObjectName(_fromUtf8("specGraphCebRTInoise"))
674 679 self.gridLayout_9.addWidget(self.specGraphCebRTInoise, 13, 2, 1, 1)
675 680 self.label_48 = QtGui.QLabel(self.tabgraphSpectra)
676 681 self.label_48.setObjectName(_fromUtf8("label_48"))
677 682 self.gridLayout_9.addWidget(self.label_48, 22, 0, 1, 1)
678 683 self.specGgraphTimeRange = QtGui.QLineEdit(self.tabgraphSpectra)
679 684 self.specGgraphTimeRange.setObjectName(_fromUtf8("specGgraphTimeRange"))
680 685 self.gridLayout_9.addWidget(self.specGgraphTimeRange, 22, 1, 1, 7)
681 686 self.tabWidgetSpectra.addTab(self.tabgraphSpectra, _fromUtf8(""))
682 687 self.taboutputSpectra = QtGui.QWidget()
683 688 self.taboutputSpectra.setObjectName(_fromUtf8("taboutputSpectra"))
684 689 self.gridLayout_11 = QtGui.QGridLayout(self.taboutputSpectra)
685 690 self.gridLayout_11.setObjectName(_fromUtf8("gridLayout_11"))
686 691 self.label_39 = QtGui.QLabel(self.taboutputSpectra)
687 692 self.label_39.setObjectName(_fromUtf8("label_39"))
688 693 self.gridLayout_11.addWidget(self.label_39, 0, 0, 1, 1)
689 694 self.specOutputComData = QtGui.QComboBox(self.taboutputSpectra)
690 695 self.specOutputComData.setObjectName(_fromUtf8("specOutputComData"))
691 696 self.specOutputComData.addItem(_fromUtf8(""))
692 697 self.gridLayout_11.addWidget(self.specOutputComData, 0, 2, 1, 2)
693 698 self.label_34 = QtGui.QLabel(self.taboutputSpectra)
694 699 self.label_34.setObjectName(_fromUtf8("label_34"))
695 700 self.gridLayout_11.addWidget(self.label_34, 1, 0, 1, 1)
696 701 self.specOutputPath = QtGui.QLineEdit(self.taboutputSpectra)
697 702 self.specOutputPath.setObjectName(_fromUtf8("specOutputPath"))
698 703 self.gridLayout_11.addWidget(self.specOutputPath, 1, 2, 1, 1)
699 704 spacerItem20 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
700 705 self.gridLayout_11.addItem(spacerItem20, 4, 2, 1, 1)
701 706 self.specOutputToolPath = QtGui.QToolButton(self.taboutputSpectra)
702 707 self.specOutputToolPath.setObjectName(_fromUtf8("specOutputToolPath"))
703 708 self.gridLayout_11.addWidget(self.specOutputToolPath, 1, 3, 1, 1)
704 709 self.specOutputblocksperfile = QtGui.QLineEdit(self.taboutputSpectra)
705 710 self.specOutputblocksperfile.setObjectName(_fromUtf8("specOutputblocksperfile"))
706 711 self.gridLayout_11.addWidget(self.specOutputblocksperfile, 2, 2, 1, 1)
707 712 self.label_9 = QtGui.QLabel(self.taboutputSpectra)
708 713 self.label_9.setObjectName(_fromUtf8("label_9"))
709 714 self.gridLayout_11.addWidget(self.label_9, 2, 0, 1, 2)
710 715 self.label_38 = QtGui.QLabel(self.taboutputSpectra)
711 716 self.label_38.setObjectName(_fromUtf8("label_38"))
712 717 self.gridLayout_11.addWidget(self.label_38, 3, 0, 1, 1)
713 718 self.specOutputprofileperblock = QtGui.QLineEdit(self.taboutputSpectra)
714 719 self.specOutputprofileperblock.setObjectName(_fromUtf8("specOutputprofileperblock"))
715 720 self.gridLayout_11.addWidget(self.specOutputprofileperblock, 3, 2, 1, 1)
716 721 self.tabWidgetSpectra.addTab(self.taboutputSpectra, _fromUtf8(""))
717 722 self.gridLayout_7.addWidget(self.tabWidgetSpectra, 0, 1, 1, 1)
718 723 self.tabWidgetProject.addTab(self.tabSpectra, _fromUtf8(""))
719 724 self.tabSpectraHeis = QtGui.QWidget()
720 725 self.tabSpectraHeis.setObjectName(_fromUtf8("tabSpectraHeis"))
721 726 self.gridLayout_23 = QtGui.QGridLayout(self.tabSpectraHeis)
722 727 self.gridLayout_23.setObjectName(_fromUtf8("gridLayout_23"))
723 728 self.frame_6 = QtGui.QFrame(self.tabSpectraHeis)
724 729 self.frame_6.setFrameShape(QtGui.QFrame.StyledPanel)
725 730 self.frame_6.setFrameShadow(QtGui.QFrame.Raised)
726 731 self.frame_6.setObjectName(_fromUtf8("frame_6"))
727 732 self.gridLayout_22 = QtGui.QGridLayout(self.frame_6)
728 733 self.gridLayout_22.setObjectName(_fromUtf8("gridLayout_22"))
729 734 self.specHeisGraphClear = QtGui.QPushButton(self.frame_6)
730 735 self.specHeisGraphClear.setObjectName(_fromUtf8("specHeisGraphClear"))
731 736 self.gridLayout_22.addWidget(self.specHeisGraphClear, 0, 1, 1, 1)
732 737 self.specHeisOpOk = QtGui.QPushButton(self.frame_6)
733 738 self.specHeisOpOk.setObjectName(_fromUtf8("specHeisOpOk"))
734 739 self.gridLayout_22.addWidget(self.specHeisOpOk, 0, 0, 1, 1)
735 740 self.gridLayout_23.addWidget(self.frame_6, 1, 0, 1, 1)
736 741 self.tabWidgetSpectraHeis = QtGui.QTabWidget(self.tabSpectraHeis)
737 742 self.tabWidgetSpectraHeis.setObjectName(_fromUtf8("tabWidgetSpectraHeis"))
738 743 self.tabopSpectraHeis = QtGui.QWidget()
739 744 self.tabopSpectraHeis.setObjectName(_fromUtf8("tabopSpectraHeis"))
740 745 self.gridLayout_21 = QtGui.QGridLayout(self.tabopSpectraHeis)
741 746 self.gridLayout_21.setObjectName(_fromUtf8("gridLayout_21"))
742 747 spacerItem21 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
743 748 self.gridLayout_21.addItem(spacerItem21, 0, 1, 1, 1)
744 749 self.specHeisOpCobIncInt = QtGui.QComboBox(self.tabopSpectraHeis)
745 750 self.specHeisOpCobIncInt.setObjectName(_fromUtf8("specHeisOpCobIncInt"))
746 751 self.specHeisOpCobIncInt.addItem(_fromUtf8(""))
747 752 self.gridLayout_21.addWidget(self.specHeisOpCobIncInt, 1, 0, 1, 1)
748 753 self.specHeisOpCebIncoherent = QtGui.QCheckBox(self.tabopSpectraHeis)
749 754 self.specHeisOpCebIncoherent.setObjectName(_fromUtf8("specHeisOpCebIncoherent"))
750 755 self.gridLayout_21.addWidget(self.specHeisOpCebIncoherent, 0, 0, 1, 1)
751 756 self.specHeisOpIncoherent = QtGui.QLineEdit(self.tabopSpectraHeis)
752 757 self.specHeisOpIncoherent.setObjectName(_fromUtf8("specHeisOpIncoherent"))
753 758 self.gridLayout_21.addWidget(self.specHeisOpIncoherent, 1, 1, 1, 1)
754 759 spacerItem22 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
755 760 self.gridLayout_21.addItem(spacerItem22, 2, 0, 1, 1)
756 761 self.tabWidgetSpectraHeis.addTab(self.tabopSpectraHeis, _fromUtf8(""))
757 762 self.tabgraphSpectraHeis = QtGui.QWidget()
758 763 self.tabgraphSpectraHeis.setObjectName(_fromUtf8("tabgraphSpectraHeis"))
759 764 self.gridLayout_20 = QtGui.QGridLayout(self.tabgraphSpectraHeis)
760 765 self.gridLayout_20.setObjectName(_fromUtf8("gridLayout_20"))
761 766 self.label_54 = QtGui.QLabel(self.tabgraphSpectraHeis)
762 767 self.label_54.setObjectName(_fromUtf8("label_54"))
763 768 self.gridLayout_20.addWidget(self.label_54, 1, 0, 1, 1)
764 769 self.specHeisGraphToolPath = QtGui.QToolButton(self.tabgraphSpectraHeis)
765 770 self.specHeisGraphToolPath.setObjectName(_fromUtf8("specHeisGraphToolPath"))
766 771 self.gridLayout_20.addWidget(self.specHeisGraphToolPath, 0, 6, 1, 1)
767 772 self.specHeisGraphCebRTIplot = QtGui.QCheckBox(self.tabgraphSpectraHeis)
768 773 self.specHeisGraphCebRTIplot.setText(_fromUtf8(""))
769 774 self.specHeisGraphCebRTIplot.setObjectName(_fromUtf8("specHeisGraphCebRTIplot"))
770 775 self.gridLayout_20.addWidget(self.specHeisGraphCebRTIplot, 4, 2, 1, 1)
771 776 self.label_62 = QtGui.QLabel(self.tabgraphSpectraHeis)
772 777 self.label_62.setObjectName(_fromUtf8("label_62"))
773 778 self.gridLayout_20.addWidget(self.label_62, 7, 0, 1, 1)
774 779 self.label_63 = QtGui.QLabel(self.tabgraphSpectraHeis)
775 780 self.label_63.setObjectName(_fromUtf8("label_63"))
776 781 self.gridLayout_20.addWidget(self.label_63, 8, 0, 1, 1)
777 782 self.label_64 = QtGui.QLabel(self.tabgraphSpectraHeis)
778 783 self.label_64.setObjectName(_fromUtf8("label_64"))
779 784 self.gridLayout_20.addWidget(self.label_64, 9, 0, 1, 1)
780 785 self.label_65 = QtGui.QLabel(self.tabgraphSpectraHeis)
781 786 self.label_65.setObjectName(_fromUtf8("label_65"))
782 787 self.gridLayout_20.addWidget(self.label_65, 10, 0, 1, 1)
783 788 spacerItem23 = QtGui.QSpacerItem(134, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
784 789 self.gridLayout_20.addItem(spacerItem23, 11, 0, 1, 2)
785 790 self.specHeisGgraphftpratio = QtGui.QLineEdit(self.tabgraphSpectraHeis)
786 791 self.specHeisGgraphftpratio.setObjectName(_fromUtf8("specHeisGgraphftpratio"))
787 792 self.gridLayout_20.addWidget(self.specHeisGgraphftpratio, 10, 1, 1, 6)
788 793 self.specHeisGraphftpRTIplot = QtGui.QCheckBox(self.tabgraphSpectraHeis)
789 794 self.specHeisGraphftpRTIplot.setText(_fromUtf8(""))
790 795 self.specHeisGraphftpRTIplot.setObjectName(_fromUtf8("specHeisGraphftpRTIplot"))
791 796 self.gridLayout_20.addWidget(self.specHeisGraphftpRTIplot, 4, 6, 1, 1)
792 797 self.specHeisGgraphTminTmax = QtGui.QLineEdit(self.tabgraphSpectraHeis)
793 798 self.specHeisGgraphTminTmax.setObjectName(_fromUtf8("specHeisGgraphTminTmax"))
794 799 self.gridLayout_20.addWidget(self.specHeisGgraphTminTmax, 8, 1, 1, 6)
795 800 self.label_60 = QtGui.QLabel(self.tabgraphSpectraHeis)
796 801 self.label_60.setObjectName(_fromUtf8("label_60"))
797 802 self.gridLayout_20.addWidget(self.label_60, 5, 0, 1, 1)
798 803 self.label_61 = QtGui.QLabel(self.tabgraphSpectraHeis)
799 804 self.label_61.setObjectName(_fromUtf8("label_61"))
800 805 self.gridLayout_20.addWidget(self.label_61, 6, 0, 1, 1)
801 806 self.specHeisGraphPrefix = QtGui.QLineEdit(self.tabgraphSpectraHeis)
802 807 self.specHeisGraphPrefix.setObjectName(_fromUtf8("specHeisGraphPrefix"))
803 808 self.gridLayout_20.addWidget(self.specHeisGraphPrefix, 1, 1, 1, 6)
804 809 self.label_56 = QtGui.QLabel(self.tabgraphSpectraHeis)
805 810 self.label_56.setObjectName(_fromUtf8("label_56"))
806 811 self.gridLayout_20.addWidget(self.label_56, 2, 4, 1, 1)
807 812 self.label_57 = QtGui.QLabel(self.tabgraphSpectraHeis)
808 813 self.label_57.setObjectName(_fromUtf8("label_57"))
809 814 self.gridLayout_20.addWidget(self.label_57, 2, 6, 1, 1)
810 815 self.label_58 = QtGui.QLabel(self.tabgraphSpectraHeis)
811 816 self.label_58.setObjectName(_fromUtf8("label_58"))
812 817 self.gridLayout_20.addWidget(self.label_58, 3, 0, 1, 1)
813 818 self.specHeisGraphCebSpectraplot = QtGui.QCheckBox(self.tabgraphSpectraHeis)
814 819 self.specHeisGraphCebSpectraplot.setText(_fromUtf8(""))
815 820 self.specHeisGraphCebSpectraplot.setObjectName(_fromUtf8("specHeisGraphCebSpectraplot"))
816 821 self.gridLayout_20.addWidget(self.specHeisGraphCebSpectraplot, 3, 2, 1, 1)
817 822 self.specHeisGgraphYminYmax = QtGui.QLineEdit(self.tabgraphSpectraHeis)
818 823 self.specHeisGgraphYminYmax.setObjectName(_fromUtf8("specHeisGgraphYminYmax"))
819 824 self.gridLayout_20.addWidget(self.specHeisGgraphYminYmax, 7, 1, 1, 6)
820 825 self.label_53 = QtGui.QLabel(self.tabgraphSpectraHeis)
821 826 self.label_53.setObjectName(_fromUtf8("label_53"))
822 827 self.gridLayout_20.addWidget(self.label_53, 0, 0, 1, 1)
823 828 self.label_55 = QtGui.QLabel(self.tabgraphSpectraHeis)
824 829 self.label_55.setObjectName(_fromUtf8("label_55"))
825 830 self.gridLayout_20.addWidget(self.label_55, 2, 2, 1, 1)
826 831 self.specHeisGraphSaveRTIplot = QtGui.QCheckBox(self.tabgraphSpectraHeis)
827 832 self.specHeisGraphSaveRTIplot.setText(_fromUtf8(""))
828 833 self.specHeisGraphSaveRTIplot.setObjectName(_fromUtf8("specHeisGraphSaveRTIplot"))
829 834 self.gridLayout_20.addWidget(self.specHeisGraphSaveRTIplot, 4, 4, 1, 1)
830 835 spacerItem24 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
831 836 self.gridLayout_20.addItem(spacerItem24, 2, 3, 1, 1)
832 837 self.specHeisGgraphXminXmax = QtGui.QLineEdit(self.tabgraphSpectraHeis)
833 838 self.specHeisGgraphXminXmax.setObjectName(_fromUtf8("specHeisGgraphXminXmax"))
834 839 self.gridLayout_20.addWidget(self.specHeisGgraphXminXmax, 6, 1, 1, 6)
835 840 self.specHeisGgraphChannelList = QtGui.QLineEdit(self.tabgraphSpectraHeis)
836 841 self.specHeisGgraphChannelList.setObjectName(_fromUtf8("specHeisGgraphChannelList"))
837 842 self.gridLayout_20.addWidget(self.specHeisGgraphChannelList, 5, 1, 1, 6)
838 843 self.specHeisGgraphTimeRange = QtGui.QLineEdit(self.tabgraphSpectraHeis)
839 844 self.specHeisGgraphTimeRange.setObjectName(_fromUtf8("specHeisGgraphTimeRange"))
840 845 self.gridLayout_20.addWidget(self.specHeisGgraphTimeRange, 9, 1, 1, 6)
841 846 spacerItem25 = QtGui.QSpacerItem(106, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
842 847 self.gridLayout_20.addItem(spacerItem25, 11, 3, 1, 3)
843 848 self.specHeisGraphSaveSpectra = QtGui.QCheckBox(self.tabgraphSpectraHeis)
844 849 self.specHeisGraphSaveSpectra.setText(_fromUtf8(""))
845 850 self.specHeisGraphSaveSpectra.setObjectName(_fromUtf8("specHeisGraphSaveSpectra"))
846 851 self.gridLayout_20.addWidget(self.specHeisGraphSaveSpectra, 3, 4, 1, 1)
847 852 self.specHeisGraphftpSpectra = QtGui.QCheckBox(self.tabgraphSpectraHeis)
848 853 self.specHeisGraphftpSpectra.setText(_fromUtf8(""))
849 854 self.specHeisGraphftpSpectra.setObjectName(_fromUtf8("specHeisGraphftpSpectra"))
850 855 self.gridLayout_20.addWidget(self.specHeisGraphftpSpectra, 3, 6, 1, 1)
851 856 self.label_59 = QtGui.QLabel(self.tabgraphSpectraHeis)
852 857 self.label_59.setObjectName(_fromUtf8("label_59"))
853 858 self.gridLayout_20.addWidget(self.label_59, 4, 0, 1, 1)
854 859 spacerItem26 = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Minimum)
855 860 self.gridLayout_20.addItem(spacerItem26, 2, 5, 1, 1)
856 861 self.specHeisGraphPath = QtGui.QLineEdit(self.tabgraphSpectraHeis)
857 862 self.specHeisGraphPath.setObjectName(_fromUtf8("specHeisGraphPath"))
858 863 self.gridLayout_20.addWidget(self.specHeisGraphPath, 0, 1, 1, 5)
859 864 self.tabWidgetSpectraHeis.addTab(self.tabgraphSpectraHeis, _fromUtf8(""))
860 865 self.taboutputSpectraHeis = QtGui.QWidget()
861 866 self.taboutputSpectraHeis.setObjectName(_fromUtf8("taboutputSpectraHeis"))
862 867 self.gridLayout_19 = QtGui.QGridLayout(self.taboutputSpectraHeis)
863 868 self.gridLayout_19.setObjectName(_fromUtf8("gridLayout_19"))
864 869 self.label_67 = QtGui.QLabel(self.taboutputSpectraHeis)
865 870 self.label_67.setObjectName(_fromUtf8("label_67"))
866 871 self.gridLayout_19.addWidget(self.label_67, 1, 0, 1, 1)
867 872 self.label_68 = QtGui.QLabel(self.taboutputSpectraHeis)
868 873 self.label_68.setObjectName(_fromUtf8("label_68"))
869 874 self.gridLayout_19.addWidget(self.label_68, 2, 0, 1, 2)
870 875 self.label_66 = QtGui.QLabel(self.taboutputSpectraHeis)
871 876 self.label_66.setObjectName(_fromUtf8("label_66"))
872 877 self.gridLayout_19.addWidget(self.label_66, 0, 0, 1, 1)
873 878 spacerItem27 = QtGui.QSpacerItem(20, 40, QtGui.QSizePolicy.Minimum, QtGui.QSizePolicy.Expanding)
874 879 self.gridLayout_19.addItem(spacerItem27, 4, 0, 1, 1)
875 880 self.specHeisOutputToolPath = QtGui.QToolButton(self.taboutputSpectraHeis)
876 881 self.specHeisOutputToolPath.setObjectName(_fromUtf8("specHeisOutputToolPath"))
877 882 self.gridLayout_19.addWidget(self.specHeisOutputToolPath, 1, 4, 1, 1)
878 883 self.specHeisOutputPath = QtGui.QLineEdit(self.taboutputSpectraHeis)
879 884 self.specHeisOutputPath.setObjectName(_fromUtf8("specHeisOutputPath"))
880 885 self.gridLayout_19.addWidget(self.specHeisOutputPath, 1, 3, 1, 1)
881 886 self.specHeisOutputComdata = QtGui.QComboBox(self.taboutputSpectraHeis)
882 887 self.specHeisOutputComdata.setObjectName(_fromUtf8("specHeisOutputComdata"))
883 888 self.specHeisOutputComdata.addItem(_fromUtf8(""))
884 889 self.gridLayout_19.addWidget(self.specHeisOutputComdata, 0, 3, 1, 2)
885 890 self.label_69 = QtGui.QLabel(self.taboutputSpectraHeis)
886 891 self.label_69.setObjectName(_fromUtf8("label_69"))
887 892 self.gridLayout_19.addWidget(self.label_69, 3, 0, 1, 2)
888 893 self.specHeisOutputblocksperfile = QtGui.QLineEdit(self.taboutputSpectraHeis)
889 894 self.specHeisOutputblocksperfile.setObjectName(_fromUtf8("specHeisOutputblocksperfile"))
890 895 self.gridLayout_19.addWidget(self.specHeisOutputblocksperfile, 2, 3, 1, 1)
891 896 self.specHeisOutputMetada = QtGui.QLineEdit(self.taboutputSpectraHeis)
892 897 self.specHeisOutputMetada.setObjectName(_fromUtf8("specHeisOutputMetada"))
893 898 self.gridLayout_19.addWidget(self.specHeisOutputMetada, 3, 3, 1, 1)
894 899 self.specHeisOutputMetadaToolPath = QtGui.QToolButton(self.taboutputSpectraHeis)
895 900 self.specHeisOutputMetadaToolPath.setObjectName(_fromUtf8("specHeisOutputMetadaToolPath"))
896 901 self.gridLayout_19.addWidget(self.specHeisOutputMetadaToolPath, 3, 4, 1, 1)
897 902 self.tabWidgetSpectraHeis.addTab(self.taboutputSpectraHeis, _fromUtf8(""))
898 903 self.gridLayout_23.addWidget(self.tabWidgetSpectraHeis, 0, 0, 1, 1)
899 904 self.tabWidgetProject.addTab(self.tabSpectraHeis, _fromUtf8(""))
900 905 self.tabCorrelation = QtGui.QWidget()
901 906 self.tabCorrelation.setObjectName(_fromUtf8("tabCorrelation"))
902 907 self.gridLayout_13 = QtGui.QGridLayout(self.tabCorrelation)
903 908 self.gridLayout_13.setObjectName(_fromUtf8("gridLayout_13"))
904 909 self.tabWidget_2 = QtGui.QTabWidget(self.tabCorrelation)
905 910 self.tabWidget_2.setObjectName(_fromUtf8("tabWidget_2"))
906 911 self.tabopCorrelation = QtGui.QWidget()
907 912 self.tabopCorrelation.setObjectName(_fromUtf8("tabopCorrelation"))
908 913 self.tabWidget_2.addTab(self.tabopCorrelation, _fromUtf8(""))
909 914 self.tabopCorrelation1 = QtGui.QWidget()
910 915 self.tabopCorrelation1.setObjectName(_fromUtf8("tabopCorrelation1"))
911 916 self.tabWidget_2.addTab(self.tabopCorrelation1, _fromUtf8(""))
912 917 self.gridLayout_13.addWidget(self.tabWidget_2, 0, 0, 1, 1)
913 918 self.tabWidgetProject.addTab(self.tabCorrelation, _fromUtf8(""))
914 919
915 920
916 921 self.tabConsole = QtGui.QTabWidget(self.splitter)
917 922 self.tabConsole.setMinimumSize(QtCore.QSize(0, 0))
918 923 self.tabConsole.setObjectName(_fromUtf8("tabConsole"))
919 924 self.tab_5 = QtGui.QWidget()
920 925 self.tab_5.setObjectName(_fromUtf8("tab_5"))
921 926 self.gridLayout_4 = QtGui.QGridLayout(self.tab_5)
922 927 self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
923 928 self.console = QtGui.QTextEdit(self.tab_5)
924 929 self.console.setObjectName(_fromUtf8("console"))
925 930 self.gridLayout_4.addWidget(self.console, 0, 0, 1, 1)
926 931 self.tabConsole.addTab(self.tab_5, _fromUtf8(""))
927 932 self.tabWidget = QtGui.QTabWidget(self.splitter_2)
928 933 self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
929 934 self.tabProjectProperty = QtGui.QWidget()
930 935 self.tabProjectProperty.setObjectName(_fromUtf8("tabProjectProperty"))
931 936 self.gridLayout_8 = QtGui.QGridLayout(self.tabProjectProperty)
932 937 self.gridLayout_8.setObjectName(_fromUtf8("gridLayout_8"))
933 938 self.treeProjectProperties = QtGui.QTreeView(self.tabProjectProperty)
934 939 self.treeProjectProperties.setObjectName(_fromUtf8("treeProjectProperties"))
935 940 self.gridLayout_8.addWidget(self.treeProjectProperties, 0, 0, 1, 1)
936 941 self.tabWidget.addTab(self.tabProjectProperty, _fromUtf8(""))
937 942 self.gridLayout_16.addWidget(self.splitter_2, 1, 0, 1, 1)
938 943 MainWindow.setCentralWidget(self.centralWidget)
939 944 self.toolBar = QtGui.QToolBar(MainWindow)
940 945 self.toolBar.setObjectName(_fromUtf8("toolBar"))
941 946 MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
942 947 self.menuBar = QtGui.QMenuBar(MainWindow)
943 948 self.menuBar.setGeometry(QtCore.QRect(0, 0, 1065, 25))
944 949 self.menuBar.setObjectName(_fromUtf8("menuBar"))
945 950 self.menuProject = QtGui.QMenu(self.menuBar)
946 951 self.menuProject.setObjectName(_fromUtf8("menuProject"))
947 952 self.menuRun = QtGui.QMenu(self.menuBar)
948 953 self.menuRun.setObjectName(_fromUtf8("menuRun"))
949 954 self.menuOptions = QtGui.QMenu(self.menuBar)
950 955 self.menuOptions.setObjectName(_fromUtf8("menuOptions"))
951 956 self.menuHelp = QtGui.QMenu(self.menuBar)
952 957 self.menuHelp.setObjectName(_fromUtf8("menuHelp"))
953 958 MainWindow.setMenuBar(self.menuBar)
954 959 self.actionOpen = QtGui.QAction(MainWindow)
955 960
956 961 iconOpen = QtGui.QIcon()
957 iconOpen.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/open.gif")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
962 iconOpen.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"open.gif") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
958 963
959 964 iconCreate = QtGui.QIcon()
960 iconCreate.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/project.gif")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
965 iconCreate.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"project.gif") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
961 966
962 967 iconSave = QtGui.QIcon()
963 iconSave.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/saveicon.jpeg")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
968 iconSave.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"saveicon.jpeg") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
964 969
965 970 iconStart = QtGui.QIcon()
966 iconStart.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/startServer.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
971 iconStart.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"startServer.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
967 972
968 973 iconStop = QtGui.QIcon()
969 iconStop.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/stopServer.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
974 iconStop.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"stopServer.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
970 975
971 976 iconPause = QtGui.QIcon()
972 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/pause.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
977 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"pause.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
973 978
974 979 iconAddPU = QtGui.QIcon()
975 iconAddPU.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/add_PU.gif")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
980 iconAddPU.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"add_PU.gif") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
976 981
977 982 self.actionOpen.setIcon(iconOpen)
978 983 self.actionOpen.setObjectName(_fromUtf8("actionOpen"))
979 984 self.actionCreate = QtGui.QAction(MainWindow)
980 985 self.actionCreate.setIcon(iconCreate)
981 986 self.actionCreate.setObjectName(_fromUtf8("actionCreate"))
982 987 self.actionSave = QtGui.QAction(MainWindow)
983 988 self.actionSave.setIcon(iconSave)
984 989 self.actionSave.setObjectName(_fromUtf8("actionSave"))
985 990 self.actionClose = QtGui.QAction(MainWindow)
986 991 self.actionClose.setObjectName(_fromUtf8("actionClose"))
987 992 self.actionStart = QtGui.QAction(MainWindow)
988 993 self.actionStart.setIcon(iconStart)
989 994 self.actionStart.setObjectName(_fromUtf8("actionStart"))
990 995 self.actionPause = QtGui.QAction(MainWindow)
991 996 self.actionPause.setIcon(iconPause)
992 997 self.actionPause.setObjectName(_fromUtf8("actionPause"))
993 998 self.actionStop = QtGui.QAction(MainWindow)
994 999 self.actionStop.setIcon(iconStop)
995 1000 self.actionStop.setObjectName(_fromUtf8("actionStop"))
996 1001 self.actionAbout = QtGui.QAction(MainWindow)
997 1002 self.actionAbout.setObjectName(_fromUtf8("actionAbout"))
998 1003 self.actionOpenToolbar = QtGui.QAction(MainWindow)
999 1004 self.actionOpenToolbar.setIcon(iconOpen)
1000 1005 self.actionOpenToolbar.setObjectName(_fromUtf8("actionOpenToolbar"))
1001 1006 self.actionCreateToolbar = QtGui.QAction(MainWindow)
1002 1007 self.actionCreateToolbar.setIcon(iconCreate)
1003 1008 self.actionCreateToolbar.setObjectName(_fromUtf8("actionCreateToolbar"))
1004 1009 self.actionSaveToolbar = QtGui.QAction(MainWindow)
1005 1010 self.actionSaveToolbar.setIcon(iconSave)
1006 1011 self.actionSaveToolbar.setObjectName(_fromUtf8("actionSaveToolbar"))
1007 1012 self.actionStarToolbar = QtGui.QAction(MainWindow)
1008 1013 self.actionStarToolbar.setIcon(iconStart)
1009 1014 self.actionStarToolbar.setObjectName(_fromUtf8("actionStarToolbar"))
1010 1015 self.actionStopToolbar = QtGui.QAction(MainWindow)
1011 1016 self.actionStopToolbar.setIcon(iconStop)
1012 1017 self.actionStopToolbar.setObjectName(_fromUtf8("actionStopToolbar"))
1013 1018 self.actionPauseToolbar = QtGui.QAction(MainWindow)
1014 1019 self.actionPause.setIcon(iconPause)
1015 1020 self.actionPauseToolbar.setIcon(iconPause)
1016 1021 self.actionPauseToolbar.setObjectName(_fromUtf8("actionPauseToolbar"))
1017 1022 self.actionAddPU = QtGui.QAction(MainWindow)
1018 1023 self.actionAddPU.setIcon(iconAddPU)
1019 1024 self.actionAddPU.setObjectName(_fromUtf8("actionAddPU"))
1020 1025 self.actionFTP = QtGui.QAction(MainWindow)
1021 1026 self.actionFTP.setObjectName(_fromUtf8("actionFTP"))
1022 1027 self.toolBar.addAction(self.actionOpenToolbar)
1023 1028 self.toolBar.addSeparator()
1024 1029 self.toolBar.addAction(self.actionCreateToolbar)
1025 1030 self.toolBar.addSeparator()
1026 1031 self.toolBar.addAction(self.actionAddPU)
1027 1032 self.toolBar.addSeparator()
1028 1033 self.toolBar.addAction(self.actionSaveToolbar)
1029 1034 self.toolBar.addSeparator()
1030 1035 self.toolBar.addAction(self.actionStarToolbar)
1031 1036 self.toolBar.addSeparator()
1032 1037 self.toolBar.addAction(self.actionPauseToolbar)
1033 1038 self.toolBar.addSeparator()
1034 1039 self.toolBar.addAction(self.actionStopToolbar)
1035 1040 self.toolBar.addSeparator()
1036 1041 self.a=1
1037 1042 self.actionPauseToolbar.triggered.connect(self.changeIcon)
1038 1043
1039 1044
1040 1045 self.menuProject.addAction(self.actionOpen)
1041 1046 self.menuProject.addAction(self.actionCreate)
1042 1047 self.menuProject.addAction(self.actionSave)
1043 1048 self.menuProject.addAction(self.actionClose)
1044 1049 self.menuRun.addAction(self.actionStart)
1045 1050 self.menuRun.addAction(self.actionPause)
1046 1051 self.menuRun.addAction(self.actionStop)
1047 1052 self.menuOptions.addAction(self.actionFTP)
1048 1053 self.menuHelp.addAction(self.actionAbout)
1049 1054 self.menuBar.addAction(self.menuProject.menuAction())
1050 1055 self.menuBar.addAction(self.menuRun.menuAction())
1051 1056 self.menuBar.addAction(self.menuOptions.menuAction())
1052 1057 self.menuBar.addAction(self.menuHelp.menuAction())
1053 1058
1054 1059 self.retranslateUi(MainWindow)
1055 1060 self.tabWidgetProject.setCurrentIndex(0)
1056 1061 self.tabWidgetVoltage.setCurrentIndex(0)
1057 1062 self.tabWidgetSpectra.setCurrentIndex(0)
1058 1063 self.tabWidgetSpectraHeis.setCurrentIndex(0)
1059 1064 self.tabWidget_2.setCurrentIndex(0)
1060 1065 self.tabConsole.setCurrentIndex(0)
1061 1066 self.tabWidget.setCurrentIndex(0)
1062 1067 QtCore.QMetaObject.connectSlotsByName(MainWindow)
1063 1068
1064 1069 def changeIcon(self):
1065 1070
1066 1071 if self.a==1:
1067 1072 iconPauseRed = QtGui.QIcon()
1068 iconPauseRed.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/pausered.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1073 iconPauseRed.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"pausered.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1069 1074 self.actionPauseToolbar.setIcon(iconPauseRed)
1070 1075 self.a+=1
1071 1076 return 0
1072 1077 if self.a==2:
1073 1078 iconPause = QtGui.QIcon()
1074 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/pause.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1079 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"pause.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1075 1080 self.actionPauseToolbar.setIcon(iconPause)
1076 1081 self.a-=1
1077 1082 return 0
1078 1083
1079 1084 def retranslateUi(self, MainWindow):
1080 1085
1081 1086 MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None))
1082 1087 self.label.setText(_translate("MainWindow", "Project Name :", None))
1083 1088 self.label_11.setText(_translate("MainWindow", "DataType :", None))
1084 1089 self.proComDataType.setItemText(0, _translate("MainWindow", "Voltage", None))
1085 1090 self.proComDataType.setItemText(1, _translate("MainWindow", "Spectra", None))
1086 1091 self.proComDataType.setItemText(2, _translate("MainWindow", "Fits", None))
1087 1092 self.label_15.setText(_translate("MainWindow", "DataPath :", None))
1088 1093 self.proToolPath.setText(_translate("MainWindow", "...", None))
1089 1094 self.label_23.setText(_translate("MainWindow", "Read Mode:", None))
1090 1095 self.proComReadMode.setItemText(0, _translate("MainWindow", "Offline", None))
1091 1096 self.proComReadMode.setItemText(1, _translate("MainWindow", "Online", None))
1092 1097 self.label_33.setText(_translate("MainWindow", "Delay:", None))
1093 1098 self.label_32.setText(_translate("MainWindow", "Walk :", None))
1094 1099 self.proComWalk.setItemText(0, _translate("MainWindow", "On Files", None))
1095 1100 self.proComWalk.setItemText(1, _translate("MainWindow", "On Folder", None))
1096 1101 self.proLoadButton.setText(_translate("MainWindow", "Load", None))
1097 1102 self.label_10.setText(_translate("MainWindow", "Set:", None))
1098 1103 self.label_27.setText(_translate("MainWindow", "Star Date:", None))
1099 1104 self.label_28.setText(_translate("MainWindow", "End Date:", None))
1100 1105 self.label_2.setText(_translate("MainWindow", "Start Time:", None))
1101 1106 self.label_3.setText(_translate("MainWindow", "End Time:", None))
1102 1107 self.label_30.setText(_translate("MainWindow", "Description:", None))
1103 1108 self.proOk.setText(_translate("MainWindow", "Ok", None))
1104 1109 self.proClear.setText(_translate("MainWindow", "Clear", None))
1105 1110 self.tabWidgetProject.setTabText(self.tabWidgetProject.indexOf(self.tabProject), _translate("MainWindow", "Project", None))
1106 1111 self.volOpOk.setText(_translate("MainWindow", "Ok", None))
1107 1112 self.volGraphClear.setText(_translate("MainWindow", "Clear", None))
1108 1113 self.volOpComHeights.setItemText(0, _translate("MainWindow", "Value", None))
1109 1114 self.volOpComHeights.setItemText(1, _translate("MainWindow", "Index", None))
1110 1115 self.volOpComChannels.setItemText(0, _translate("MainWindow", "Value", None))
1111 1116 self.volOpComChannels.setItemText(1, _translate("MainWindow", "Index", None))
1112 1117 self.volOpCebProfile.setText(_translate("MainWindow", "Profile Selector", None))
1113 1118 self.volOpComProfile.setItemText(0, _translate("MainWindow", "Profile List", None))
1114 1119 self.volOpComProfile.setItemText(1, _translate("MainWindow", "Profile Range List", None))
1115 1120 self.volOpCebDecodification.setText(_translate("MainWindow", "Decoder", None))
1116 1121 self.volOpCebCohInt.setText(_translate("MainWindow", "Coherent Integration", None))
1117 1122 self.label_4.setText(_translate("MainWindow", "Code:", None))
1118 1123 self.volOpCebChannels.setText(_translate("MainWindow", "Select Channels", None))
1119 1124 self.volOpCebHeights.setText(_translate("MainWindow", "Select Heights", None))
1120 1125 self.volOpCebFilter.setText(_translate("MainWindow", "Filter", None))
1121 1126 self.volOpCebRadarfrequency.setText(_translate("MainWindow", "Radar Frequency", None))
1122 1127 self.label_5.setText(_translate("MainWindow", "Mode:", None))
1123 1128 self.volOpComCode.setItemText(0, _translate("MainWindow", "Barker 3", None))
1124 1129 self.volOpComCode.setItemText(1, _translate("MainWindow", "Barker 4", None))
1125 1130 self.volOpComCode.setItemText(2, _translate("MainWindow", "Barker 5", None))
1126 1131 self.volOpComCode.setItemText(3, _translate("MainWindow", "Barker 7", None))
1127 1132 self.volOpComCode.setItemText(4, _translate("MainWindow", "Barker 11", None))
1128 1133 self.volOpComCode.setItemText(5, _translate("MainWindow", "Barker 13", None))
1129 1134 self.volOpComCode.setItemText(6, _translate("MainWindow", "Barker 3 + Comp.", None))
1130 1135 self.volOpComCode.setItemText(7, _translate("MainWindow", "Barker 4 + Comp.", None))
1131 1136 self.volOpComCode.setItemText(8, _translate("MainWindow", "Barker 5 + Comp.", None))
1132 1137 self.volOpComCode.setItemText(9, _translate("MainWindow", "Barker 7 + Comp.", None))
1133 1138 self.volOpComCode.setItemText(10, _translate("MainWindow", "Barker 11+ Comp.", None))
1134 1139 self.volOpComCode.setItemText(11, _translate("MainWindow", "Barker 13+ Comp.", None))
1135 1140 self.volOpComCode.setItemText(12, _translate("MainWindow", "Default", None))
1136 1141 self.volOpComMode.setItemText(0, _translate("MainWindow", "Time", None))
1137 1142 self.volOpComMode.setItemText(1, _translate("MainWindow", "Freq 1", None))
1138 1143 self.tabWidgetVoltage.setTabText(self.tabWidgetVoltage.indexOf(self.tabopVoltage), _translate("MainWindow", "Operation", None))
1139 1144 self.volGraphToolPath.setText(_translate("MainWindow", "...", None))
1140 1145 self.label_14.setText(_translate("MainWindow", "Scope", None))
1141 1146 self.label_8.setText(_translate("MainWindow", "Channel List", None))
1142 1147 self.label_49.setText(_translate("MainWindow", "Show", None))
1143 1148 self.label_51.setText(_translate("MainWindow", "Freq/Vel", None))
1144 1149 self.label_12.setText(_translate("MainWindow", "Path :", None))
1145 1150 self.label_13.setText(_translate("MainWindow", "Prefix:", None))
1146 1151 self.label_52.setText(_translate("MainWindow", "Height range", None))
1147 1152 self.label_50.setText(_translate("MainWindow", "Save", None))
1148 1153 self.tabWidgetVoltage.setTabText(self.tabWidgetVoltage.indexOf(self.tabgraphVoltage), _translate("MainWindow", "Graphics", None))
1149 1154 self.label_36.setText(_translate("MainWindow", "Type:", None))
1150 1155 self.label_37.setText(_translate("MainWindow", "Path:", None))
1151 1156 self.volOutputToolPath.setText(_translate("MainWindow", "...", None))
1152 1157 self.volOutputComData.setItemText(0, _translate("MainWindow", ".rawdata", None))
1153 1158 self.label_7.setText(_translate("MainWindow", "Blocks per File : ", None))
1154 1159 self.label_35.setText(_translate("MainWindow", "Profiles per Block: ", None))
1155 1160 self.tabWidgetVoltage.setTabText(self.tabWidgetVoltage.indexOf(self.taboutputVoltage), _translate("MainWindow", "Output", None))
1156 1161 self.tabWidgetProject.setTabText(self.tabWidgetProject.indexOf(self.tabVoltage), _translate("MainWindow", "Voltage", None))
1157 1162 self.specOpOk.setText(_translate("MainWindow", "Ok", None))
1158 1163 self.specGraphClear.setText(_translate("MainWindow", "Clear", None))
1159 1164 self.specOpCebCrossSpectra.setText(_translate("MainWindow", "Select Cross Spectra", None))
1160 1165 self.specOpComChannel.setItemText(0, _translate("MainWindow", "Value", None))
1161 1166 self.specOpComChannel.setItemText(1, _translate("MainWindow", "Index", None))
1162 1167 self.specOpComHeights.setItemText(0, _translate("MainWindow", "Value", None))
1163 1168 self.specOpComHeights.setItemText(1, _translate("MainWindow", "Index", None))
1164 1169 self.specOpCebRemoveDC.setText(_translate("MainWindow", "Remove DC", None))
1165 1170 self.specOpCebHeights.setText(_translate("MainWindow", "Select Heights", None))
1166 1171 self.specOpCebChannel.setText(_translate("MainWindow", "Select Channel", None))
1167 1172 self.label_31.setText(_translate("MainWindow", "x-y pairs", None))
1168 1173 self.label_26.setText(_translate("MainWindow", "nFFTPoints", None))
1169 1174 self.specOpCebIncoherent.setText(_translate("MainWindow", "Incoherent Integration", None))
1170 1175 self.specOpCobIncInt.setItemText(0, _translate("MainWindow", "Time Interval", None))
1171 1176 self.specOpCobIncInt.setItemText(1, _translate("MainWindow", "Profiles", None))
1172 1177 self.specOpCebRadarfrequency.setText(_translate("MainWindow", "Radar Frequency", None))
1173 1178 self.label_21.setText(_translate("MainWindow", "Profiles", None))
1174 1179 self.specOpCebRemoveInt.setText(_translate("MainWindow", "Remove Interference", None))
1175 1180 self.label_70.setText(_translate("MainWindow", "IppFactor", None))
1176 1181 self.specOpCebgetNoise.setText(_translate("MainWindow", "Get Noise", None))
1177 1182 self.specOpComRemoveDC.setItemText(0, _translate("MainWindow", "Mode 1", None))
1178 1183 self.specOpComRemoveDC.setItemText(1, _translate("MainWindow", "Mode 2", None))
1179 1184 self.tabWidgetSpectra.setTabText(self.tabWidgetSpectra.indexOf(self.tabopSpectra), _translate("MainWindow", "Operation", None))
1180 1185 self.label_44.setText(_translate("MainWindow", "Coherence Map", None))
1181 1186 self.label_20.setText(_translate("MainWindow", "Tmin, Tmax:", None))
1182 1187 self.label_25.setText(_translate("MainWindow", "Prefix", None))
1183 1188 self.label_42.setText(_translate("MainWindow", "RTI Plot", None))
1184 1189 self.label_16.setText(_translate("MainWindow", "Height range", None))
1185 1190 self.label_17.setText(_translate("MainWindow", "dB range", None))
1186 1191 self.label_18.setText(_translate("MainWindow", "Magnitud ", None))
1187 1192 self.label_24.setText(_translate("MainWindow", "Path", None))
1188 1193 self.label_46.setText(_translate("MainWindow", "Power Profile", None))
1189 1194 self.label_22.setText(_translate("MainWindow", "Freq/Vel:", None))
1190 1195 self.label_41.setText(_translate("MainWindow", "Cross Spectra Plot", None))
1191 1196 self.specGraphToolPath.setText(_translate("MainWindow", "...", None))
1192 1197 self.label_6.setText(_translate("MainWindow", "Channel List:", None))
1193 1198 self.label_40.setText(_translate("MainWindow", "Spectra Plot", None))
1194 1199 self.label_43.setText(_translate("MainWindow", "Show", None))
1195 1200 self.label_29.setText(_translate("MainWindow", "Wr Period:", None))
1196 1201 self.label_47.setText(_translate("MainWindow", "Save", None))
1197 1202 self.label_19.setText(_translate("MainWindow", "ftp", None))
1198 1203 self.label_45.setText(_translate("MainWindow", "Noise", None))
1199 1204 self.label_48.setText(_translate("MainWindow", "Time Range:", None))
1200 1205 self.tabWidgetSpectra.setTabText(self.tabWidgetSpectra.indexOf(self.tabgraphSpectra), _translate("MainWindow", "Graphics", None))
1201 1206 self.label_39.setText(_translate("MainWindow", "Type:", None))
1202 1207 self.specOutputComData.setItemText(0, _translate("MainWindow", ".pdata", None))
1203 1208 self.label_34.setText(_translate("MainWindow", "Path:", None))
1204 1209 self.specOutputToolPath.setText(_translate("MainWindow", "...", None))
1205 1210 self.label_9.setText(_translate("MainWindow", "Blocks per File: ", None))
1206 1211 self.label_38.setText(_translate("MainWindow", "Profile per Block: ", None))
1207 1212 self.tabWidgetSpectra.setTabText(self.tabWidgetSpectra.indexOf(self.taboutputSpectra), _translate("MainWindow", "Output", None))
1208 1213 self.tabWidgetProject.setTabText(self.tabWidgetProject.indexOf(self.tabSpectra), _translate("MainWindow", "Spectra", None))
1209 1214 self.specHeisGraphClear.setText(_translate("MainWindow", "Clear", None))
1210 1215 self.specHeisOpOk.setText(_translate("MainWindow", "Ok", None))
1211 1216 self.specHeisOpCobIncInt.setItemText(0, _translate("MainWindow", "Time Interval", None))
1212 1217 self.specHeisOpCebIncoherent.setText(_translate("MainWindow", "Incoherent Intergration", None))
1213 1218 self.tabWidgetSpectraHeis.setTabText(self.tabWidgetSpectraHeis.indexOf(self.tabopSpectraHeis), _translate("MainWindow", "Operation", None))
1214 1219 self.label_54.setText(_translate("MainWindow", "Prefix", None))
1215 1220 self.specHeisGraphToolPath.setText(_translate("MainWindow", "...", None))
1216 1221 self.label_62.setText(_translate("MainWindow", "ymin - ymax", None))
1217 1222 self.label_63.setText(_translate("MainWindow", "Tmin - Tmax:", None))
1218 1223 self.label_64.setText(_translate("MainWindow", "Time Range:", None))
1219 1224 self.label_65.setText(_translate("MainWindow", "Wr Period", None))
1220 1225 self.label_60.setText(_translate("MainWindow", "Channel List:", None))
1221 1226 self.label_61.setText(_translate("MainWindow", "xmin - xmax", None))
1222 1227 self.label_56.setText(_translate("MainWindow", "Save", None))
1223 1228 self.label_57.setText(_translate("MainWindow", "ftp", None))
1224 1229 self.label_58.setText(_translate("MainWindow", "Spectra Plot", None))
1225 1230 self.label_53.setText(_translate("MainWindow", "Path", None))
1226 1231 self.label_55.setText(_translate("MainWindow", "Show", None))
1227 1232 self.label_59.setText(_translate("MainWindow", "RTI PLot", None))
1228 1233 self.tabWidgetSpectraHeis.setTabText(self.tabWidgetSpectraHeis.indexOf(self.tabgraphSpectraHeis), _translate("MainWindow", "Graphics", None))
1229 1234 self.label_67.setText(_translate("MainWindow", "Path:", None))
1230 1235 self.label_68.setText(_translate("MainWindow", "Blocks per File:", None))
1231 1236 self.label_66.setText(_translate("MainWindow", "Type:", None))
1232 1237 self.specHeisOutputToolPath.setText(_translate("MainWindow", "...", None))
1233 1238 self.specHeisOutputComdata.setItemText(0, _translate("MainWindow", ".fits", None))
1234 1239 self.label_69.setText(_translate("MainWindow", "Metada", None))
1235 1240 self.specHeisOutputMetadaToolPath.setText(_translate("MainWindow", "...", None))
1236 1241 self.tabWidgetSpectraHeis.setTabText(self.tabWidgetSpectraHeis.indexOf(self.taboutputSpectraHeis), _translate("MainWindow", "Output", None))
1237 1242 self.tabWidgetProject.setTabText(self.tabWidgetProject.indexOf(self.tabSpectraHeis), _translate("MainWindow", "SpectraHeis", None))
1238 1243 self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tabopCorrelation), _translate("MainWindow", "Operation", None))
1239 1244 self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tabopCorrelation1), _translate("MainWindow", "Graphics", None))
1240 1245 self.tabWidgetProject.setTabText(self.tabWidgetProject.indexOf(self.tabCorrelation), _translate("MainWindow", "Correlation", None))
1241 1246
1242 1247
1243 1248 self.tabConsole.setTabText(self.tabConsole.indexOf(self.tab_5), _translate("MainWindow", "Console", None))
1244 1249
1245 1250 self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabProjectProperty), _translate("MainWindow", "Project Property", None))
1246 1251 self.toolBar.setWindowTitle(_translate("MainWindow", "toolBar", None))
1247 1252 self.menuProject.setTitle(_translate("MainWindow", "Project", None))
1248 1253 self.menuRun.setTitle(_translate("MainWindow", "Run", None))
1249 1254 self.menuOptions.setTitle(_translate("MainWindow", "Options", None))
1250 1255 self.menuHelp.setTitle(_translate("MainWindow", "Help", None))
1251 1256 self.actionOpen.setText(_translate("MainWindow", "Open", None))
1252 1257 self.actionCreate.setText(_translate("MainWindow", "Create", None))
1253 1258 self.actionSave.setText(_translate("MainWindow", "Save", None))
1254 1259 self.actionClose.setText(_translate("MainWindow", "Close", None))
1255 1260 self.actionStart.setText(_translate("MainWindow", "Start", None))
1256 1261 self.actionPause.setText(_translate("MainWindow", "Pause", None))
1257 1262 self.actionStop.setText(_translate("MainWindow", "Stop", None))
1258 1263 self.actionAbout.setText(_translate("MainWindow", "About", None))
1259 1264 self.actionOpenToolbar.setText(_translate("MainWindow", "openToolbar", None))
1260 1265 self.actionOpenToolbar.setToolTip(_translate("MainWindow", "Open Project", None))
1261 1266 self.actionCreateToolbar.setText(_translate("MainWindow", "createToolbar", None))
1262 1267 self.actionCreateToolbar.setToolTip(_translate("MainWindow", "Create αΉ”roject", None))
1263 1268 self.actionSaveToolbar.setText(_translate("MainWindow", "saveToolbar", None))
1264 1269 self.actionSaveToolbar.setToolTip(_translate("MainWindow", "Save Project", None))
1265 1270 self.actionStarToolbar.setText(_translate("MainWindow", "starToolbar", None))
1266 1271 self.actionStarToolbar.setToolTip(_translate("MainWindow", "Start ", None))
1267 1272 self.actionStopToolbar.setText(_translate("MainWindow", "stopToolbar", None))
1268 1273 self.actionStopToolbar.setToolTip(_translate("MainWindow", "Stop", None))
1269 1274 self.actionPauseToolbar.setText(_translate("MainWindow", "pauseToolbar", None))
1270 1275 self.actionPauseToolbar.setToolTip(_translate("MainWindow", "Pause", None))
1271 1276 self.actionAddPU.setText(_translate("MainWindow", "Add Processing Unit", None))
1272 1277 self.actionFTP.setText(_translate("MainWindow", "FTP", None))
1273 1278
1274 1279
1275 1280 class Ui_EnvWindow(object):
1276 1281
1277 1282 def changeIcon(self):
1278 1283
1279 1284 if self.a==1:
1280 1285 iconPauseRed = QtGui.QIcon()
1281 iconPauseRed.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/pausered.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1286 iconPauseRed.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"pausered.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1282 1287 self.actionPauseToolbar.setIcon(iconPauseRed)
1283 1288 self.a+=1
1284 1289 return 0
1285 1290 if self.a==2:
1286 1291 iconPause = QtGui.QIcon()
1287 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/pause.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1292 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"pause.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1288 1293 self.actionPauseToolbar.setIcon(iconPause)
1289 1294 self.a-=1
1290 1295 return 0
1291 1296
1292 1297 def setupUi(self, MainWindow):
1293 1298
1294 1299 MainWindow.setObjectName(_fromUtf8("MainWindow"))
1295 1300 MainWindow.resize(1203, 711)
1296 1301
1297 1302 self.centralWidget = QtGui.QWidget(MainWindow)
1298 1303 self.centralWidget.setObjectName(_fromUtf8("centralWidget"))
1299 1304 self.gridLayout_16 = QtGui.QGridLayout(self.centralWidget)
1300 1305 self.gridLayout_16.setObjectName(_fromUtf8("gridLayout_16"))
1301 1306 self.splitter_2 = QtGui.QSplitter(self.centralWidget)
1302 1307 self.splitter_2.setOrientation(QtCore.Qt.Horizontal)
1303 1308 self.splitter_2.setObjectName(_fromUtf8("splitter_2"))
1304 1309 self.projectExplorerTree = QtGui.QTreeView(self.splitter_2)
1305 1310 self.projectExplorerTree.setObjectName(_fromUtf8("projectExplorerTree"))
1306 1311 self.splitter = QtGui.QSplitter(self.splitter_2)
1307 1312 self.splitter.setOrientation(QtCore.Qt.Vertical)
1308 1313 self.splitter.setObjectName(_fromUtf8("splitter"))
1309 1314 self.tabWidgetProject = QtGui.QTabWidget(self.splitter)
1310 1315 self.tabWidgetProject.setMinimumSize(QtCore.QSize(0, 278))
1311 1316 self.tabWidgetProject.setMaximumSize(QtCore.QSize(16777215, 16777215))
1312 1317 self.tabWidgetProject.setObjectName(_fromUtf8("tabWidgetProject"))
1313 1318
1314 1319 self.tabConsole = QtGui.QTabWidget(self.splitter)
1315 1320 self.tabConsole.setMinimumSize(QtCore.QSize(0, 0))
1316 1321 self.tabConsole.setObjectName(_fromUtf8("tabConsole"))
1317 1322 self.tab_5 = QtGui.QWidget()
1318 1323 self.tab_5.setObjectName(_fromUtf8("tab_5"))
1319 1324 self.gridLayout_4 = QtGui.QGridLayout(self.tab_5)
1320 1325 self.gridLayout_4.setObjectName(_fromUtf8("gridLayout_4"))
1321 1326 self.console = QtGui.QTextEdit(self.tab_5)
1322 1327 self.console.setObjectName(_fromUtf8("console"))
1323 1328 self.gridLayout_4.addWidget(self.console, 0, 0, 1, 1)
1324 1329 self.tabConsole.addTab(self.tab_5, _fromUtf8(""))
1325 1330 self.tabWidget = QtGui.QTabWidget(self.splitter_2)
1326 1331 self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
1327 1332 self.tabProjectProperty = QtGui.QWidget()
1328 1333 self.tabProjectProperty.setObjectName(_fromUtf8("tabProjectProperty"))
1329 1334 self.gridLayout_8 = QtGui.QGridLayout(self.tabProjectProperty)
1330 1335 self.gridLayout_8.setObjectName(_fromUtf8("gridLayout_8"))
1331 1336 self.treeProjectProperties = QtGui.QTreeView(self.tabProjectProperty)
1332 1337 self.treeProjectProperties.setObjectName(_fromUtf8("treeProjectProperties"))
1333 1338 self.gridLayout_8.addWidget(self.treeProjectProperties, 0, 0, 1, 1)
1334 1339 self.tabWidget.addTab(self.tabProjectProperty, _fromUtf8(""))
1335 1340 self.gridLayout_16.addWidget(self.splitter_2, 1, 0, 1, 1)
1336 1341
1337 1342 MainWindow.setCentralWidget(self.centralWidget)
1338 1343 self.toolBar = QtGui.QToolBar(MainWindow)
1339 1344 self.toolBar.setObjectName(_fromUtf8("toolBar"))
1340 1345 MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
1341 1346
1342 1347 self.menuBar = QtGui.QMenuBar(MainWindow)
1343 1348 self.menuBar.setGeometry(QtCore.QRect(0, 0, 1065, 25))
1344 1349 self.menuBar.setObjectName(_fromUtf8("menuBar"))
1345 1350 self.menuProject = QtGui.QMenu(self.menuBar)
1346 1351 self.menuProject.setObjectName(_fromUtf8("menuProject"))
1347 1352 self.menuRun = QtGui.QMenu(self.menuBar)
1348 1353 self.menuRun.setObjectName(_fromUtf8("menuRun"))
1349 1354 self.menuOptions = QtGui.QMenu(self.menuBar)
1350 1355 self.menuOptions.setObjectName(_fromUtf8("menuOptions"))
1351 1356 self.menuHelp = QtGui.QMenu(self.menuBar)
1352 1357 self.menuHelp.setObjectName(_fromUtf8("menuHelp"))
1353 1358 MainWindow.setMenuBar(self.menuBar)
1354 1359
1355 1360 iconOpen = QtGui.QIcon()
1356 iconOpen.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/open.gif")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1361 iconOpen.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"open.gif") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1357 1362 iconCreate = QtGui.QIcon()
1358 iconCreate.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/project.gif")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1363 iconCreate.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"project.gif") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1359 1364 iconSave = QtGui.QIcon()
1360 iconSave.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/saveicon.jpeg")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1365 iconSave.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"saveicon.jpeg") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1361 1366 iconStart = QtGui.QIcon()
1362 iconStart.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/startServer.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1367 iconStart.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"startServer.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1363 1368 iconStop = QtGui.QIcon()
1364 iconStop.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/stopServer.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1369 iconStop.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"stopServer.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1365 1370 iconPause = QtGui.QIcon()
1366 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/pause.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1371 iconPause.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"pause.png") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1367 1372 iconAddPU = QtGui.QIcon()
1368 iconAddPU.addPixmap(QtGui.QPixmap(_fromUtf8("schainpy/gui/figure/add_PU.gif")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1373 iconAddPU.addPixmap(QtGui.QPixmap(_fromUtf8( os.path.join(FIGURES_PATH,"add_PU.gif") )), QtGui.QIcon.Normal, QtGui.QIcon.Off)
1369 1374
1370 1375 self.actionOpen = QtGui.QAction(MainWindow)
1371 1376 self.actionOpen.setIcon(iconOpen)
1372 1377 self.actionOpen.setObjectName(_fromUtf8("actionOpen"))
1373 1378 self.actionCreate = QtGui.QAction(MainWindow)
1374 1379 self.actionCreate.setIcon(iconCreate)
1375 1380 self.actionCreate.setObjectName(_fromUtf8("actionCreate"))
1376 1381 self.actionSave = QtGui.QAction(MainWindow)
1377 1382 self.actionSave.setIcon(iconSave)
1378 1383 self.actionSave.setObjectName(_fromUtf8("actionSave"))
1379 1384 self.actionClose = QtGui.QAction(MainWindow)
1380 1385 self.actionClose.setObjectName(_fromUtf8("actionClose"))
1381 1386 self.actionStart = QtGui.QAction(MainWindow)
1382 1387 self.actionStart.setIcon(iconStart)
1383 1388 self.actionStart.setObjectName(_fromUtf8("actionStart"))
1384 1389 self.actionPause = QtGui.QAction(MainWindow)
1385 1390 self.actionPause.setIcon(iconPause)
1386 1391 self.actionPause.setObjectName(_fromUtf8("actionPause"))
1387 1392 self.actionStop = QtGui.QAction(MainWindow)
1388 1393 self.actionStop.setIcon(iconStop)
1389 1394 self.actionStop.setObjectName(_fromUtf8("actionStop"))
1390 1395 self.actionAbout = QtGui.QAction(MainWindow)
1391 1396 self.actionAbout.setObjectName(_fromUtf8("actionAbout"))
1392 1397 self.actionOpenToolbar = QtGui.QAction(MainWindow)
1393 1398 self.actionOpenToolbar.setIcon(iconOpen)
1394 1399 self.actionOpenToolbar.setObjectName(_fromUtf8("actionOpenToolbar"))
1395 1400 self.actionCreateToolbar = QtGui.QAction(MainWindow)
1396 1401 self.actionCreateToolbar.setIcon(iconCreate)
1397 1402 self.actionCreateToolbar.setObjectName(_fromUtf8("actionCreateToolbar"))
1398 1403 self.actionSaveToolbar = QtGui.QAction(MainWindow)
1399 1404 self.actionSaveToolbar.setIcon(iconSave)
1400 1405 self.actionSaveToolbar.setObjectName(_fromUtf8("actionSaveToolbar"))
1401 1406 self.actionStarToolbar = QtGui.QAction(MainWindow)
1402 1407 self.actionStarToolbar.setIcon(iconStart)
1403 1408 self.actionStarToolbar.setObjectName(_fromUtf8("actionStarToolbar"))
1404 1409 self.actionStopToolbar = QtGui.QAction(MainWindow)
1405 1410 self.actionStopToolbar.setIcon(iconStop)
1406 1411 self.actionStopToolbar.setObjectName(_fromUtf8("actionStopToolbar"))
1407 1412 self.actionPauseToolbar = QtGui.QAction(MainWindow)
1408 1413 self.actionPause.setIcon(iconPause)
1409 1414 self.actionPauseToolbar.setIcon(iconPause)
1410 1415 self.actionPauseToolbar.setObjectName(_fromUtf8("actionPauseToolbar"))
1411 1416 self.actionAddPU = QtGui.QAction(MainWindow)
1412 1417 self.actionAddPU.setIcon(iconAddPU)
1413 1418 self.actionAddPU.setObjectName(_fromUtf8("actionAddPU"))
1414 1419 self.actionFTP = QtGui.QAction(MainWindow)
1415 1420 self.actionFTP.setObjectName(_fromUtf8("actionFTP"))
1416 1421 self.toolBar.addAction(self.actionOpenToolbar)
1417 1422 self.toolBar.addSeparator()
1418 1423 self.toolBar.addAction(self.actionCreateToolbar)
1419 1424 self.toolBar.addSeparator()
1420 1425 self.toolBar.addAction(self.actionAddPU)
1421 1426 self.toolBar.addSeparator()
1422 1427 self.toolBar.addAction(self.actionSaveToolbar)
1423 1428 self.toolBar.addSeparator()
1424 1429 self.toolBar.addAction(self.actionStarToolbar)
1425 1430 self.toolBar.addSeparator()
1426 1431 self.toolBar.addAction(self.actionPauseToolbar)
1427 1432 self.toolBar.addSeparator()
1428 1433 self.toolBar.addAction(self.actionStopToolbar)
1429 1434 self.toolBar.addSeparator()
1430 1435 self.a=1
1431 1436 self.actionPauseToolbar.triggered.connect(self.changeIcon)
1432 1437
1433 1438 self.menuProject.addAction(self.actionOpen)
1434 1439 self.menuProject.addAction(self.actionCreate)
1435 1440 self.menuProject.addAction(self.actionSave)
1436 1441 self.menuProject.addAction(self.actionClose)
1437 1442 self.menuRun.addAction(self.actionStart)
1438 1443 self.menuRun.addAction(self.actionPause)
1439 1444 self.menuRun.addAction(self.actionStop)
1440 1445 self.menuOptions.addAction(self.actionFTP)
1441 1446 self.menuHelp.addAction(self.actionAbout)
1442 1447 self.menuBar.addAction(self.menuProject.menuAction())
1443 1448 self.menuBar.addAction(self.menuRun.menuAction())
1444 1449 self.menuBar.addAction(self.menuOptions.menuAction())
1445 1450 self.menuBar.addAction(self.menuHelp.menuAction())
1446 1451
1447 1452 self.tabConsole.setCurrentIndex(0)
1448 1453 self.tabWidget.setCurrentIndex(0)
1449 1454
1450 1455 def retranslateUi(self, MainWindow):
1451 1456
1452 1457 MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None))
1453 1458
1454 1459 self.tabConsole.setTabText(self.tabConsole.indexOf(self.tab_5), _translate("MainWindow", "Console", None))
1455 1460
1456 1461 self.tabWidget.setTabText(self.tabWidget.indexOf(self.tabProjectProperty), _translate("MainWindow", "Project Property", None))
1457 1462 self.toolBar.setWindowTitle(_translate("MainWindow", "toolBar", None))
1458 1463 self.menuProject.setTitle(_translate("MainWindow", "Project", None))
1459 1464 self.menuRun.setTitle(_translate("MainWindow", "Run", None))
1460 1465 self.menuOptions.setTitle(_translate("MainWindow", "Options", None))
1461 1466 self.menuHelp.setTitle(_translate("MainWindow", "Help", None))
1462 1467 self.actionOpen.setText(_translate("MainWindow", "Open", None))
1463 1468 self.actionCreate.setText(_translate("MainWindow", "Create", None))
1464 1469 self.actionSave.setText(_translate("MainWindow", "Save", None))
1465 1470 self.actionClose.setText(_translate("MainWindow", "Close", None))
1466 1471 self.actionStart.setText(_translate("MainWindow", "Start", None))
1467 1472 self.actionPause.setText(_translate("MainWindow", "Pause", None))
1468 1473 self.actionStop.setText(_translate("MainWindow", "Stop", None))
1469 1474 self.actionAbout.setText(_translate("MainWindow", "About", None))
1470 1475 self.actionOpenToolbar.setText(_translate("MainWindow", "openToolbar", None))
1471 1476 self.actionOpenToolbar.setToolTip(_translate("MainWindow", "Open Project", None))
1472 1477 self.actionCreateToolbar.setText(_translate("MainWindow", "createToolbar", None))
1473 1478 self.actionCreateToolbar.setToolTip(_translate("MainWindow", "Create αΉ”roject", None))
1474 1479 self.actionSaveToolbar.setText(_translate("MainWindow", "saveToolbar", None))
1475 1480 self.actionSaveToolbar.setToolTip(_translate("MainWindow", "Save Project", None))
1476 1481 self.actionStarToolbar.setText(_translate("MainWindow", "starToolbar", None))
1477 1482 self.actionStarToolbar.setToolTip(_translate("MainWindow", "Start ", None))
1478 1483 self.actionStopToolbar.setText(_translate("MainWindow", "stopToolbar", None))
1479 1484 self.actionStopToolbar.setToolTip(_translate("MainWindow", "Stop", None))
1480 1485 self.actionPauseToolbar.setText(_translate("MainWindow", "pauseToolbar", None))
1481 1486 self.actionPauseToolbar.setToolTip(_translate("MainWindow", "Pause", None))
1482 1487 self.actionAddPU.setText(_translate("MainWindow", "Add Processing Unit", None))
1483 1488 self.actionFTP.setText(_translate("MainWindow", "FTP", None))
1484 1489
1485 1490 class Ui_BasicWindow(Ui_EnvWindow, Ui_ProjectTab, Ui_VoltageTab, Ui_SpectraTab, Ui_SpectraHeisTab, Ui_CorrelationTab):
1486 1491
1487 1492 def setupUi(self, MainWindow):
1488 1493
1489 1494 Ui_EnvWindow.setupUi(self, MainWindow)
1490 1495
1491 1496 Ui_ProjectTab.setupUi(self)
1492 1497 Ui_VoltageTab.setupUi(self)
1493 1498 Ui_SpectraTab.setupUi(self)
1494 1499 Ui_SpectraHeisTab.setupUi(self)
1495 1500 Ui_CorrelationTab.setupUi(self)
1496 1501
1497 1502 self.retranslateUi(MainWindow)
1498 1503
1499 1504 QtCore.QMetaObject.connectSlotsByName(MainWindow)
1500 1505
1501 1506 def retranslateUi(self, MainWindow):
1502 1507
1503 1508 Ui_EnvWindow.retranslateUi(self, MainWindow)
1504 1509
1505 1510 Ui_ProjectTab.retranslateUi(self)
1506 1511 Ui_VoltageTab.retranslateUi(self)
1507 1512 Ui_SpectraTab.retranslateUi(self)
1508 1513 Ui_SpectraHeisTab.retranslateUi(self)
1509 1514 Ui_CorrelationTab.retranslateUi(self)
1510 1515
1511 1516
1512 1517 class Ui_AdvancedWindow(Ui_MainWindow):
1513 1518
1514 1519 def setupUi(self, AdvancedWindow):
1515 1520
1516 1521 Ui_MainWindow.setupUi(self, AdvancedWindow)
1517 1522
1518 1523 def retranslateUi(self, AdvancedWindow):
1519 1524
1520 1525 Ui_MainWindow.retranslateUi(self, AdvancedWindow)
1521 1526
1522 1527
1523 1528
1524 1529 if __name__ == "__main__":
1525 1530 import sys
1526 1531 app = QtGui.QApplication(sys.argv)
1527 1532 MainWindow = QtGui.QMainWindow()
1528 1533 ui = Ui_BasicWindow()
1529 1534 ui.setupUi(MainWindow)
1530 1535 MainWindow.show()
1531 1536 sys.exit(app.exec_())
1532 1537
@@ -1,1326 +1,1326
1 1 '''
2 2 Created on Jul 9, 2014
3 3
4 4 @author: roj-idl71
5 5 '''
6 6 import os
7 7 import datetime
8 8 import numpy
9 9
10 10 from figure import Figure, isRealtime
11 11 from plotting_codes import *
12 12
13 13 class SpectraPlot(Figure):
14 14
15 15 isConfig = None
16 16 __nsubplots = None
17 17
18 18 WIDTHPROF = None
19 19 HEIGHTPROF = None
20 20 PREFIX = 'spc'
21 21
22 22 def __init__(self):
23 23
24 24 self.isConfig = False
25 25 self.__nsubplots = 1
26 26
27 27 self.WIDTH = 280
28 28 self.HEIGHT = 250
29 29 self.WIDTHPROF = 120
30 30 self.HEIGHTPROF = 0
31 31 self.counter_imagwr = 0
32 32
33 33 self.PLOT_CODE = SPEC_CODE
34 34
35 35 self.FTP_WEI = None
36 36 self.EXP_CODE = None
37 37 self.SUB_EXP_CODE = None
38 38 self.PLOT_POS = None
39 39
40 40 self.__xfilter_ena = False
41 41 self.__yfilter_ena = False
42 42
43 43 def getSubplots(self):
44 44
45 45 ncol = int(numpy.sqrt(self.nplots)+0.9)
46 46 nrow = int(self.nplots*1./ncol + 0.9)
47 47
48 48 return nrow, ncol
49 49
50 50 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
51 51
52 52 self.__showprofile = showprofile
53 53 self.nplots = nplots
54 54
55 55 ncolspan = 1
56 56 colspan = 1
57 57 if showprofile:
58 58 ncolspan = 3
59 59 colspan = 2
60 60 self.__nsubplots = 2
61 61
62 62 self.createFigure(id = id,
63 63 wintitle = wintitle,
64 64 widthplot = self.WIDTH + self.WIDTHPROF,
65 65 heightplot = self.HEIGHT + self.HEIGHTPROF,
66 66 show=show)
67 67
68 68 nrow, ncol = self.getSubplots()
69 69
70 70 counter = 0
71 71 for y in range(nrow):
72 72 for x in range(ncol):
73 73
74 74 if counter >= self.nplots:
75 75 break
76 76
77 77 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
78 78
79 79 if showprofile:
80 80 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
81 81
82 82 counter += 1
83 83
84 84 def run(self, dataOut, id, wintitle="", channelList=None, showprofile=True,
85 85 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
86 86 save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
87 87 server=None, folder=None, username=None, password=None,
88 88 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0, realtime=False):
89 89
90 90 """
91 91
92 92 Input:
93 93 dataOut :
94 94 id :
95 95 wintitle :
96 96 channelList :
97 97 showProfile :
98 98 xmin : None,
99 99 xmax : None,
100 100 ymin : None,
101 101 ymax : None,
102 102 zmin : None,
103 103 zmax : None
104 104 """
105 105
106 106 if realtime:
107 107 if not(isRealtime(utcdatatime = dataOut.utctime)):
108 108 print 'Skipping this plot function'
109 109 return
110 110
111 111 if channelList == None:
112 112 channelIndexList = dataOut.channelIndexList
113 113 else:
114 114 channelIndexList = []
115 115 for channel in channelList:
116 116 if channel not in dataOut.channelList:
117 117 raise ValueError, "Channel %d is not in dataOut.channelList"
118 118 channelIndexList.append(dataOut.channelList.index(channel))
119 119
120 120 factor = dataOut.normFactor
121 121
122 122 x = dataOut.getVelRange(1)
123 123 y = dataOut.getHeiRange()
124 124
125 125 z = dataOut.data_spc[channelIndexList,:,:]/factor
126 126 z = numpy.where(numpy.isfinite(z), z, numpy.NAN)
127 127 zdB = 10*numpy.log10(z)
128 128
129 avg = numpy.nanmean(z, axis=1)
129 avg = numpy.average(z, axis=1)
130 130 avgdB = 10*numpy.log10(avg)
131 131
132 132 noise = dataOut.getNoise()/factor
133 133 noisedB = 10*numpy.log10(noise)
134 134
135 135 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
136 136 title = wintitle + " Spectra"
137 137 if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
138 138 title = title + '_' + 'azimuth,zenith=%2.2f,%2.2f'%(dataOut.azimuth, dataOut.zenith)
139 139
140 140 xlabel = "Velocity (m/s)"
141 141 ylabel = "Range (Km)"
142 142
143 143 if not self.isConfig:
144 144
145 145 nplots = len(channelIndexList)
146 146
147 147 self.setup(id=id,
148 148 nplots=nplots,
149 149 wintitle=wintitle,
150 150 showprofile=showprofile,
151 151 show=show)
152 152
153 153 if xmin == None: xmin = numpy.nanmin(x)
154 154 if xmax == None: xmax = numpy.nanmax(x)
155 155 if ymin == None: ymin = numpy.nanmin(y)
156 156 if ymax == None: ymax = numpy.nanmax(y)
157 157 if zmin == None: zmin = numpy.floor(numpy.nanmin(noisedB)) - 3
158 158 if zmax == None: zmax = numpy.ceil(numpy.nanmax(avgdB)) + 3
159 159
160 160 self.FTP_WEI = ftp_wei
161 161 self.EXP_CODE = exp_code
162 162 self.SUB_EXP_CODE = sub_exp_code
163 163 self.PLOT_POS = plot_pos
164 164
165 165 self.isConfig = True
166 166
167 167 self.setWinTitle(title)
168 168
169 169 for i in range(self.nplots):
170 170 str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
171 171 title = "Channel %d: %4.2fdB: %s" %(dataOut.channelList[i]+1, noisedB[i], str_datetime)
172 172 if len(dataOut.beam.codeList) != 0:
173 173 title = "Ch%d:%4.2fdB,%2.2f,%2.2f:%s" %(dataOut.channelList[i]+1, noisedB[i], dataOut.beam.azimuthList[i], dataOut.beam.zenithList[i], str_datetime)
174 174
175 175 axes = self.axesList[i*self.__nsubplots]
176 176 axes.pcolor(x, y, zdB[i,:,:],
177 177 xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
178 178 xlabel=xlabel, ylabel=ylabel, title=title,
179 179 ticksize=9, cblabel='')
180 180
181 181 if self.__showprofile:
182 182 axes = self.axesList[i*self.__nsubplots +1]
183 183 axes.pline(avgdB[i,:], y,
184 184 xmin=zmin, xmax=zmax, ymin=ymin, ymax=ymax,
185 185 xlabel='dB', ylabel='', title='',
186 186 ytick_visible=False,
187 187 grid='x')
188 188
189 189 noiseline = numpy.repeat(noisedB[i], len(y))
190 190 axes.addpline(noiseline, y, idline=1, color="black", linestyle="dashed", lw=2)
191 191
192 192 self.draw()
193 193
194 194 if figfile == None:
195 195 str_datetime = thisDatetime.strftime("%Y%m%d_%H%M%S")
196 196 name = str_datetime
197 197 if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
198 198 name = name + '_az' + '_%2.2f'%(dataOut.azimuth) + '_zn' + '_%2.2f'%(dataOut.zenith)
199 199 figfile = self.getFilename(name)
200 200
201 201 self.save(figpath=figpath,
202 202 figfile=figfile,
203 203 save=save,
204 204 ftp=ftp,
205 205 wr_period=wr_period,
206 206 thisDatetime=thisDatetime)
207 207
208 208 class CrossSpectraPlot(Figure):
209 209
210 210 isConfig = None
211 211 __nsubplots = None
212 212
213 213 WIDTH = None
214 214 HEIGHT = None
215 215 WIDTHPROF = None
216 216 HEIGHTPROF = None
217 217 PREFIX = 'cspc'
218 218
219 219 def __init__(self):
220 220
221 221 self.isConfig = False
222 222 self.__nsubplots = 4
223 223 self.counter_imagwr = 0
224 224 self.WIDTH = 250
225 225 self.HEIGHT = 250
226 226 self.WIDTHPROF = 0
227 227 self.HEIGHTPROF = 0
228 228
229 229 self.PLOT_CODE = CROSS_CODE
230 230 self.FTP_WEI = None
231 231 self.EXP_CODE = None
232 232 self.SUB_EXP_CODE = None
233 233 self.PLOT_POS = None
234 234
235 235 def getSubplots(self):
236 236
237 237 ncol = 4
238 238 nrow = self.nplots
239 239
240 240 return nrow, ncol
241 241
242 242 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
243 243
244 244 self.__showprofile = showprofile
245 245 self.nplots = nplots
246 246
247 247 ncolspan = 1
248 248 colspan = 1
249 249
250 250 self.createFigure(id = id,
251 251 wintitle = wintitle,
252 252 widthplot = self.WIDTH + self.WIDTHPROF,
253 253 heightplot = self.HEIGHT + self.HEIGHTPROF,
254 254 show=True)
255 255
256 256 nrow, ncol = self.getSubplots()
257 257
258 258 counter = 0
259 259 for y in range(nrow):
260 260 for x in range(ncol):
261 261 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
262 262
263 263 counter += 1
264 264
265 265 def run(self, dataOut, id, wintitle="", pairsList=None,
266 266 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
267 267 save=False, figpath='./', figfile=None, ftp=False, wr_period=1,
268 268 power_cmap='jet', coherence_cmap='jet', phase_cmap='RdBu_r', show=True,
269 269 server=None, folder=None, username=None, password=None,
270 270 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
271 271
272 272 """
273 273
274 274 Input:
275 275 dataOut :
276 276 id :
277 277 wintitle :
278 278 channelList :
279 279 showProfile :
280 280 xmin : None,
281 281 xmax : None,
282 282 ymin : None,
283 283 ymax : None,
284 284 zmin : None,
285 285 zmax : None
286 286 """
287 287
288 288 if pairsList == None:
289 289 pairsIndexList = dataOut.pairsIndexList
290 290 else:
291 291 pairsIndexList = []
292 292 for pair in pairsList:
293 293 if pair not in dataOut.pairsList:
294 294 raise ValueError, "Pair %s is not in dataOut.pairsList" %str(pair)
295 295 pairsIndexList.append(dataOut.pairsList.index(pair))
296 296
297 297 if pairsIndexList == []:
298 298 return
299 299
300 300 if len(pairsIndexList) > 4:
301 301 pairsIndexList = pairsIndexList[0:4]
302 302 factor = dataOut.normFactor
303 303 x = dataOut.getVelRange(1)
304 304 y = dataOut.getHeiRange()
305 305 z = dataOut.data_spc[:,:,:]/factor
306 306 z = numpy.where(numpy.isfinite(z), z, numpy.NAN)
307 307
308 308 noise = dataOut.noise/factor
309 309
310 310 zdB = 10*numpy.log10(z)
311 311 noisedB = 10*numpy.log10(noise)
312 312
313 313
314 314 #thisDatetime = dataOut.datatime
315 315 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
316 316 title = wintitle + " Cross-Spectra: %s" %(thisDatetime.strftime("%d-%b-%Y %H:%M:%S"))
317 317 xlabel = "Velocity (m/s)"
318 318 ylabel = "Range (Km)"
319 319
320 320 if not self.isConfig:
321 321
322 322 nplots = len(pairsIndexList)
323 323
324 324 self.setup(id=id,
325 325 nplots=nplots,
326 326 wintitle=wintitle,
327 327 showprofile=False,
328 328 show=show)
329 329
330 330 avg = numpy.abs(numpy.average(z, axis=1))
331 331 avgdB = 10*numpy.log10(avg)
332 332
333 333 if xmin == None: xmin = numpy.nanmin(x)
334 334 if xmax == None: xmax = numpy.nanmax(x)
335 335 if ymin == None: ymin = numpy.nanmin(y)
336 336 if ymax == None: ymax = numpy.nanmax(y)
337 337 if zmin == None: zmin = numpy.floor(numpy.nanmin(noisedB)) - 3
338 338 if zmax == None: zmax = numpy.ceil(numpy.nanmax(avgdB)) + 3
339 339
340 340 self.FTP_WEI = ftp_wei
341 341 self.EXP_CODE = exp_code
342 342 self.SUB_EXP_CODE = sub_exp_code
343 343 self.PLOT_POS = plot_pos
344 344
345 345 self.isConfig = True
346 346
347 347 self.setWinTitle(title)
348 348
349 349 for i in range(self.nplots):
350 350 pair = dataOut.pairsList[pairsIndexList[i]]
351 351 str_datetime = '%s %s'%(thisDatetime.strftime("%Y/%m/%d"),thisDatetime.strftime("%H:%M:%S"))
352 352 title = "Ch%d: %4.2fdB: %s" %(pair[0], noisedB[pair[0]], str_datetime)
353 353 zdB = 10.*numpy.log10(dataOut.data_spc[pair[0],:,:]/factor)
354 354 axes0 = self.axesList[i*self.__nsubplots]
355 355 axes0.pcolor(x, y, zdB,
356 356 xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
357 357 xlabel=xlabel, ylabel=ylabel, title=title,
358 358 ticksize=9, colormap=power_cmap, cblabel='')
359 359
360 360 title = "Ch%d: %4.2fdB: %s" %(pair[1], noisedB[pair[1]], str_datetime)
361 361 zdB = 10.*numpy.log10(dataOut.data_spc[pair[1],:,:]/factor)
362 362 axes0 = self.axesList[i*self.__nsubplots+1]
363 363 axes0.pcolor(x, y, zdB,
364 364 xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
365 365 xlabel=xlabel, ylabel=ylabel, title=title,
366 366 ticksize=9, colormap=power_cmap, cblabel='')
367 367
368 368 coherenceComplex = dataOut.data_cspc[pairsIndexList[i],:,:]/numpy.sqrt(dataOut.data_spc[pair[0],:,:]*dataOut.data_spc[pair[1],:,:])
369 369 coherence = numpy.abs(coherenceComplex)
370 370 # phase = numpy.arctan(-1*coherenceComplex.imag/coherenceComplex.real)*180/numpy.pi
371 371 phase = numpy.arctan2(coherenceComplex.imag, coherenceComplex.real)*180/numpy.pi
372 372
373 373 title = "Coherence %d%d" %(pair[0], pair[1])
374 374 axes0 = self.axesList[i*self.__nsubplots+2]
375 375 axes0.pcolor(x, y, coherence,
376 376 xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=0, zmax=1,
377 377 xlabel=xlabel, ylabel=ylabel, title=title,
378 378 ticksize=9, colormap=coherence_cmap, cblabel='')
379 379
380 380 title = "Phase %d%d" %(pair[0], pair[1])
381 381 axes0 = self.axesList[i*self.__nsubplots+3]
382 382 axes0.pcolor(x, y, phase,
383 383 xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax, zmin=-180, zmax=180,
384 384 xlabel=xlabel, ylabel=ylabel, title=title,
385 385 ticksize=9, colormap=phase_cmap, cblabel='')
386 386
387 387
388 388
389 389 self.draw()
390 390
391 391 self.save(figpath=figpath,
392 392 figfile=figfile,
393 393 save=save,
394 394 ftp=ftp,
395 395 wr_period=wr_period,
396 396 thisDatetime=thisDatetime)
397 397
398 398
399 399 class RTIPlot(Figure):
400 400
401 401 __isConfig = None
402 402 __nsubplots = None
403 403
404 404 WIDTHPROF = None
405 405 HEIGHTPROF = None
406 406 PREFIX = 'rti'
407 407
408 408 def __init__(self):
409 409
410 410 self.timerange = None
411 411 self.__isConfig = False
412 412 self.__nsubplots = 1
413 413
414 414 self.WIDTH = 800
415 415 self.HEIGHT = 150
416 416 self.WIDTHPROF = 120
417 417 self.HEIGHTPROF = 0
418 418 self.counter_imagwr = 0
419 419
420 420 self.PLOT_CODE = RTI_CODE
421 421
422 422 self.FTP_WEI = None
423 423 self.EXP_CODE = None
424 424 self.SUB_EXP_CODE = None
425 425 self.PLOT_POS = None
426 426 self.tmin = None
427 427 self.tmax = None
428 428
429 429 self.xmin = None
430 430 self.xmax = None
431 431
432 432 self.figfile = None
433 433
434 434 def getSubplots(self):
435 435
436 436 ncol = 1
437 437 nrow = self.nplots
438 438
439 439 return nrow, ncol
440 440
441 441 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
442 442
443 443 self.__showprofile = showprofile
444 444 self.nplots = nplots
445 445
446 446 ncolspan = 1
447 447 colspan = 1
448 448 if showprofile:
449 449 ncolspan = 7
450 450 colspan = 6
451 451 self.__nsubplots = 2
452 452
453 453 self.createFigure(id = id,
454 454 wintitle = wintitle,
455 455 widthplot = self.WIDTH + self.WIDTHPROF,
456 456 heightplot = self.HEIGHT + self.HEIGHTPROF,
457 457 show=show)
458 458
459 459 nrow, ncol = self.getSubplots()
460 460
461 461 counter = 0
462 462 for y in range(nrow):
463 463 for x in range(ncol):
464 464
465 465 if counter >= self.nplots:
466 466 break
467 467
468 468 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
469 469
470 470 if showprofile:
471 471 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
472 472
473 473 counter += 1
474 474
475 475 def run(self, dataOut, id, wintitle="", channelList=None, showprofile='True',
476 476 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
477 477 timerange=None,
478 478 save=False, figpath='./', lastone=0,figfile=None, ftp=False, wr_period=1, show=True,
479 479 server=None, folder=None, username=None, password=None,
480 480 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
481 481
482 482 """
483 483
484 484 Input:
485 485 dataOut :
486 486 id :
487 487 wintitle :
488 488 channelList :
489 489 showProfile :
490 490 xmin : None,
491 491 xmax : None,
492 492 ymin : None,
493 493 ymax : None,
494 494 zmin : None,
495 495 zmax : None
496 496 """
497 497
498 498 if channelList == None:
499 499 channelIndexList = dataOut.channelIndexList
500 500 else:
501 501 channelIndexList = []
502 502 for channel in channelList:
503 503 if channel not in dataOut.channelList:
504 504 raise ValueError, "Channel %d is not in dataOut.channelList"
505 505 channelIndexList.append(dataOut.channelList.index(channel))
506 506
507 507 # if timerange != None:
508 508 # self.timerange = timerange
509 509
510 510 #tmin = None
511 511 #tmax = None
512 512 factor = dataOut.normFactor
513 513 x = dataOut.getTimeRange()
514 514 y = dataOut.getHeiRange()
515 515
516 516 z = dataOut.data_spc[channelIndexList,:,:]/factor
517 517 z = numpy.where(numpy.isfinite(z), z, numpy.NAN)
518 518 avg = numpy.average(z, axis=1)
519 519
520 520 avgdB = 10.*numpy.log10(avg)
521 521
522 522
523 523 # thisDatetime = dataOut.datatime
524 524 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
525 525 title = wintitle + " RTI" #: %s" %(thisDatetime.strftime("%d-%b-%Y"))
526 526 xlabel = ""
527 527 ylabel = "Range (Km)"
528 528
529 529 if not self.__isConfig:
530 530
531 531 nplots = len(channelIndexList)
532 532
533 533 self.setup(id=id,
534 534 nplots=nplots,
535 535 wintitle=wintitle,
536 536 showprofile=showprofile,
537 537 show=show)
538 538
539 539 if timerange != None:
540 540 self.timerange = timerange
541 541
542 542 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
543 543
544 544 noise = dataOut.noise/factor
545 545 noisedB = 10*numpy.log10(noise)
546 546
547 547 if ymin == None: ymin = numpy.nanmin(y)
548 548 if ymax == None: ymax = numpy.nanmax(y)
549 549 if zmin == None: zmin = numpy.floor(numpy.nanmin(noisedB)) - 3
550 550 if zmax == None: zmax = numpy.ceil(numpy.nanmax(avgdB)) + 3
551 551
552 552 self.FTP_WEI = ftp_wei
553 553 self.EXP_CODE = exp_code
554 554 self.SUB_EXP_CODE = sub_exp_code
555 555 self.PLOT_POS = plot_pos
556 556
557 557 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
558 558 self.__isConfig = True
559 559 self.figfile = figfile
560 560
561 561 self.setWinTitle(title)
562 562
563 563 if ((self.xmax - x[1]) < (x[1]-x[0])):
564 564 x[1] = self.xmax
565 565
566 566 for i in range(self.nplots):
567 567 title = "Channel %d: %s" %(dataOut.channelList[i]+1, thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
568 568 if ((dataOut.azimuth!=None) and (dataOut.zenith!=None)):
569 569 title = title + '_' + 'azimuth,zenith=%2.2f,%2.2f'%(dataOut.azimuth, dataOut.zenith)
570 570 axes = self.axesList[i*self.__nsubplots]
571 571 zdB = avgdB[i].reshape((1,-1))
572 572 axes.pcolorbuffer(x, y, zdB,
573 573 xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
574 574 xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
575 575 ticksize=9, cblabel='', cbsize="1%")
576 576
577 577 if self.__showprofile:
578 578 axes = self.axesList[i*self.__nsubplots +1]
579 579 axes.pline(avgdB[i], y,
580 580 xmin=zmin, xmax=zmax, ymin=ymin, ymax=ymax,
581 581 xlabel='dB', ylabel='', title='',
582 582 ytick_visible=False,
583 583 grid='x')
584 584
585 585 self.draw()
586 586
587 587 if x[1] >= self.axesList[0].xmax:
588 588 self.counter_imagwr = wr_period
589 589 self.__isConfig = False
590 590 self.figfile = None
591 591
592 592 self.save(figpath=figpath,
593 593 figfile=figfile,
594 594 save=save,
595 595 ftp=ftp,
596 596 wr_period=wr_period,
597 597 thisDatetime=thisDatetime,
598 598 update_figfile=False)
599 599
600 600 class CoherenceMap(Figure):
601 601 isConfig = None
602 602 __nsubplots = None
603 603
604 604 WIDTHPROF = None
605 605 HEIGHTPROF = None
606 606 PREFIX = 'cmap'
607 607
608 608 def __init__(self):
609 609 self.timerange = 2*60*60
610 610 self.isConfig = False
611 611 self.__nsubplots = 1
612 612
613 613 self.WIDTH = 800
614 614 self.HEIGHT = 150
615 615 self.WIDTHPROF = 120
616 616 self.HEIGHTPROF = 0
617 617 self.counter_imagwr = 0
618 618
619 619 self.PLOT_CODE = COH_CODE
620 620
621 621 self.FTP_WEI = None
622 622 self.EXP_CODE = None
623 623 self.SUB_EXP_CODE = None
624 624 self.PLOT_POS = None
625 625 self.counter_imagwr = 0
626 626
627 627 self.xmin = None
628 628 self.xmax = None
629 629
630 630 def getSubplots(self):
631 631 ncol = 1
632 632 nrow = self.nplots*2
633 633
634 634 return nrow, ncol
635 635
636 636 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
637 637 self.__showprofile = showprofile
638 638 self.nplots = nplots
639 639
640 640 ncolspan = 1
641 641 colspan = 1
642 642 if showprofile:
643 643 ncolspan = 7
644 644 colspan = 6
645 645 self.__nsubplots = 2
646 646
647 647 self.createFigure(id = id,
648 648 wintitle = wintitle,
649 649 widthplot = self.WIDTH + self.WIDTHPROF,
650 650 heightplot = self.HEIGHT + self.HEIGHTPROF,
651 651 show=True)
652 652
653 653 nrow, ncol = self.getSubplots()
654 654
655 655 for y in range(nrow):
656 656 for x in range(ncol):
657 657
658 658 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
659 659
660 660 if showprofile:
661 661 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan+colspan, 1, 1)
662 662
663 663 def run(self, dataOut, id, wintitle="", pairsList=None, showprofile='True',
664 664 xmin=None, xmax=None, ymin=None, ymax=None, zmin=None, zmax=None,
665 665 timerange=None,
666 666 save=False, figpath='./', figfile=None, ftp=False, wr_period=1,
667 667 coherence_cmap='jet', phase_cmap='RdBu_r', show=True,
668 668 server=None, folder=None, username=None, password=None,
669 669 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
670 670
671 671 if pairsList == None:
672 672 pairsIndexList = dataOut.pairsIndexList
673 673 else:
674 674 pairsIndexList = []
675 675 for pair in pairsList:
676 676 if pair not in dataOut.pairsList:
677 677 raise ValueError, "Pair %s is not in dataOut.pairsList" %(pair)
678 678 pairsIndexList.append(dataOut.pairsList.index(pair))
679 679
680 680 if pairsIndexList == []:
681 681 return
682 682
683 683 if len(pairsIndexList) > 4:
684 684 pairsIndexList = pairsIndexList[0:4]
685 685
686 686 # tmin = None
687 687 # tmax = None
688 688 x = dataOut.getTimeRange()
689 689 y = dataOut.getHeiRange()
690 690
691 691 #thisDatetime = dataOut.datatime
692 692 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
693 693 title = wintitle + " CoherenceMap" #: %s" %(thisDatetime.strftime("%d-%b-%Y"))
694 694 xlabel = ""
695 695 ylabel = "Range (Km)"
696 696
697 697 if not self.isConfig:
698 698 nplots = len(pairsIndexList)
699 699 self.setup(id=id,
700 700 nplots=nplots,
701 701 wintitle=wintitle,
702 702 showprofile=showprofile,
703 703 show=show)
704 704
705 705 if timerange != None:
706 706 self.timerange = timerange
707 707
708 708 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
709 709
710 710 if ymin == None: ymin = numpy.nanmin(y)
711 711 if ymax == None: ymax = numpy.nanmax(y)
712 712 if zmin == None: zmin = 0.
713 713 if zmax == None: zmax = 1.
714 714
715 715 self.FTP_WEI = ftp_wei
716 716 self.EXP_CODE = exp_code
717 717 self.SUB_EXP_CODE = sub_exp_code
718 718 self.PLOT_POS = plot_pos
719 719
720 720 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
721 721
722 722 self.isConfig = True
723 723
724 724 self.setWinTitle(title)
725 725
726 726 if ((self.xmax - x[1]) < (x[1]-x[0])):
727 727 x[1] = self.xmax
728 728
729 729 for i in range(self.nplots):
730 730
731 731 pair = dataOut.pairsList[pairsIndexList[i]]
732 732
733 733 ccf = numpy.average(dataOut.data_cspc[pairsIndexList[i],:,:],axis=0)
734 734 powa = numpy.average(dataOut.data_spc[pair[0],:,:],axis=0)
735 735 powb = numpy.average(dataOut.data_spc[pair[1],:,:],axis=0)
736 736
737 737
738 738 avgcoherenceComplex = ccf/numpy.sqrt(powa*powb)
739 739 coherence = numpy.abs(avgcoherenceComplex)
740 740
741 741 z = coherence.reshape((1,-1))
742 742
743 743 counter = 0
744 744
745 745 title = "Coherence %d%d: %s" %(pair[0], pair[1], thisDatetime.strftime("%d-%b-%Y %H:%M:%S"))
746 746 axes = self.axesList[i*self.__nsubplots*2]
747 747 axes.pcolorbuffer(x, y, z,
748 748 xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=zmin, zmax=zmax,
749 749 xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
750 750 ticksize=9, cblabel='', colormap=coherence_cmap, cbsize="1%")
751 751
752 752 if self.__showprofile:
753 753 counter += 1
754 754 axes = self.axesList[i*self.__nsubplots*2 + counter]
755 755 axes.pline(coherence, y,
756 756 xmin=zmin, xmax=zmax, ymin=ymin, ymax=ymax,
757 757 xlabel='', ylabel='', title='', ticksize=7,
758 758 ytick_visible=False, nxticks=5,
759 759 grid='x')
760 760
761 761 counter += 1
762 762
763 763 phase = numpy.arctan2(avgcoherenceComplex.imag, avgcoherenceComplex.real)*180/numpy.pi
764 764
765 765 z = phase.reshape((1,-1))
766 766
767 767 title = "Phase %d%d: %s" %(pair[0], pair[1], thisDatetime.strftime("%d-%b-%Y %H:%M:%S"))
768 768 axes = self.axesList[i*self.__nsubplots*2 + counter]
769 769 axes.pcolorbuffer(x, y, z,
770 770 xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax, zmin=-180, zmax=180,
771 771 xlabel=xlabel, ylabel=ylabel, title=title, rti=True, XAxisAsTime=True,
772 772 ticksize=9, cblabel='', colormap=phase_cmap, cbsize="1%")
773 773
774 774 if self.__showprofile:
775 775 counter += 1
776 776 axes = self.axesList[i*self.__nsubplots*2 + counter]
777 777 axes.pline(phase, y,
778 778 xmin=-180, xmax=180, ymin=ymin, ymax=ymax,
779 779 xlabel='', ylabel='', title='', ticksize=7,
780 780 ytick_visible=False, nxticks=4,
781 781 grid='x')
782 782
783 783 self.draw()
784 784
785 785 if x[1] >= self.axesList[0].xmax:
786 786 self.counter_imagwr = wr_period
787 787 self.__isConfig = False
788 788 self.figfile = None
789 789
790 790 self.save(figpath=figpath,
791 791 figfile=figfile,
792 792 save=save,
793 793 ftp=ftp,
794 794 wr_period=wr_period,
795 795 thisDatetime=thisDatetime,
796 796 update_figfile=False)
797 797
798 798 class PowerProfilePlot(Figure):
799 799
800 800 isConfig = None
801 801 __nsubplots = None
802 802
803 803 WIDTHPROF = None
804 804 HEIGHTPROF = None
805 805 PREFIX = 'spcprofile'
806 806
807 807 def __init__(self):
808 808 self.isConfig = False
809 809 self.__nsubplots = 1
810 810
811 811 self.PLOT_CODE = POWER_CODE
812 812
813 813 self.WIDTH = 300
814 814 self.HEIGHT = 500
815 815 self.counter_imagwr = 0
816 816
817 817 def getSubplots(self):
818 818 ncol = 1
819 819 nrow = 1
820 820
821 821 return nrow, ncol
822 822
823 823 def setup(self, id, nplots, wintitle, show):
824 824
825 825 self.nplots = nplots
826 826
827 827 ncolspan = 1
828 828 colspan = 1
829 829
830 830 self.createFigure(id = id,
831 831 wintitle = wintitle,
832 832 widthplot = self.WIDTH,
833 833 heightplot = self.HEIGHT,
834 834 show=show)
835 835
836 836 nrow, ncol = self.getSubplots()
837 837
838 838 counter = 0
839 839 for y in range(nrow):
840 840 for x in range(ncol):
841 841 self.addAxes(nrow, ncol*ncolspan, y, x*ncolspan, colspan, 1)
842 842
843 843 def run(self, dataOut, id, wintitle="", channelList=None,
844 844 xmin=None, xmax=None, ymin=None, ymax=None,
845 845 save=False, figpath='./', figfile=None, show=True,
846 846 ftp=False, wr_period=1, server=None,
847 847 folder=None, username=None, password=None):
848 848
849 849
850 850 if channelList == None:
851 851 channelIndexList = dataOut.channelIndexList
852 852 channelList = dataOut.channelList
853 853 else:
854 854 channelIndexList = []
855 855 for channel in channelList:
856 856 if channel not in dataOut.channelList:
857 857 raise ValueError, "Channel %d is not in dataOut.channelList"
858 858 channelIndexList.append(dataOut.channelList.index(channel))
859 859
860 860 factor = dataOut.normFactor
861 861
862 862 y = dataOut.getHeiRange()
863 863
864 864 #for voltage
865 865 if dataOut.type == 'Voltage':
866 866 x = dataOut.data[channelIndexList,:] * numpy.conjugate(dataOut.data[channelIndexList,:])
867 867 x = x.real
868 868 x = numpy.where(numpy.isfinite(x), x, numpy.NAN)
869 869
870 870 #for spectra
871 871 if dataOut.type == 'Spectra':
872 872 x = dataOut.data_spc[channelIndexList,:,:]/factor
873 873 x = numpy.where(numpy.isfinite(x), x, numpy.NAN)
874 874 x = numpy.average(x, axis=1)
875 875
876 876
877 877 xdB = 10*numpy.log10(x)
878 878
879 879 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
880 880 title = wintitle + " Power Profile %s" %(thisDatetime.strftime("%d-%b-%Y"))
881 881 xlabel = "dB"
882 882 ylabel = "Range (Km)"
883 883
884 884 if not self.isConfig:
885 885
886 886 nplots = 1
887 887
888 888 self.setup(id=id,
889 889 nplots=nplots,
890 890 wintitle=wintitle,
891 891 show=show)
892 892
893 893 if ymin == None: ymin = numpy.nanmin(y)
894 894 if ymax == None: ymax = numpy.nanmax(y)
895 895 if xmin == None: xmin = numpy.nanmin(xdB)*0.9
896 896 if xmax == None: xmax = numpy.nanmax(xdB)*1.1
897 897
898 898 self.__isConfig = True
899 899
900 900 self.setWinTitle(title)
901 901
902 902 title = "Power Profile: %s" %(thisDatetime.strftime("%d-%b-%Y %H:%M:%S"))
903 903 axes = self.axesList[0]
904 904
905 905 legendlabels = ["channel %d"%x for x in channelList]
906 906 axes.pmultiline(xdB, y,
907 907 xmin=xmin, xmax=xmax, ymin=ymin, ymax=ymax,
908 908 xlabel=xlabel, ylabel=ylabel, title=title, legendlabels=legendlabels,
909 909 ytick_visible=True, nxticks=5,
910 910 grid='x')
911 911
912 912 self.draw()
913 913
914 914 self.save(figpath=figpath,
915 915 figfile=figfile,
916 916 save=save,
917 917 ftp=ftp,
918 918 wr_period=wr_period,
919 919 thisDatetime=thisDatetime)
920 920
921 921 class Noise(Figure):
922 922
923 923 isConfig = None
924 924 __nsubplots = None
925 925
926 926 PREFIX = 'noise'
927 927
928 928 def __init__(self):
929 929
930 930 self.timerange = 24*60*60
931 931 self.isConfig = False
932 932 self.__nsubplots = 1
933 933 self.counter_imagwr = 0
934 934 self.WIDTH = 600
935 935 self.HEIGHT = 300
936 936 self.WIDTHPROF = 120
937 937 self.HEIGHTPROF = 0
938 938 self.xdata = None
939 939 self.ydata = None
940 940
941 941 self.PLOT_CODE = NOISE_CODE
942 942
943 943 self.FTP_WEI = None
944 944 self.EXP_CODE = None
945 945 self.SUB_EXP_CODE = None
946 946 self.PLOT_POS = None
947 947 self.figfile = None
948 948
949 949 self.xmin = None
950 950 self.xmax = None
951 951
952 952 def getSubplots(self):
953 953
954 954 ncol = 1
955 955 nrow = 1
956 956
957 957 return nrow, ncol
958 958
959 959 def openfile(self, filename):
960 960 dirname = os.path.dirname(filename)
961 961
962 962 if not os.path.exists(dirname):
963 963 os.mkdir(dirname)
964 964
965 965 f = open(filename,'w+')
966 966 f.write('\n\n')
967 967 f.write('JICAMARCA RADIO OBSERVATORY - Noise \n')
968 968 f.write('DD MM YYYY HH MM SS Channel0 Channel1 Channel2 Channel3\n\n' )
969 969 f.close()
970 970
971 971 def save_data(self, filename_phase, data, data_datetime):
972 972 f=open(filename_phase,'a')
973 973 timetuple_data = data_datetime.timetuple()
974 974 day = str(timetuple_data.tm_mday)
975 975 month = str(timetuple_data.tm_mon)
976 976 year = str(timetuple_data.tm_year)
977 977 hour = str(timetuple_data.tm_hour)
978 978 minute = str(timetuple_data.tm_min)
979 979 second = str(timetuple_data.tm_sec)
980 980
981 981 data_msg = ''
982 982 for i in range(len(data)):
983 983 data_msg += str(data[i]) + ' '
984 984
985 985 f.write(day+' '+month+' '+year+' '+hour+' '+minute+' '+second+' ' + data_msg + '\n')
986 986 f.close()
987 987
988 988
989 989 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
990 990
991 991 self.__showprofile = showprofile
992 992 self.nplots = nplots
993 993
994 994 ncolspan = 7
995 995 colspan = 6
996 996 self.__nsubplots = 2
997 997
998 998 self.createFigure(id = id,
999 999 wintitle = wintitle,
1000 1000 widthplot = self.WIDTH+self.WIDTHPROF,
1001 1001 heightplot = self.HEIGHT+self.HEIGHTPROF,
1002 1002 show=show)
1003 1003
1004 1004 nrow, ncol = self.getSubplots()
1005 1005
1006 1006 self.addAxes(nrow, ncol*ncolspan, 0, 0, colspan, 1)
1007 1007
1008 1008
1009 1009 def run(self, dataOut, id, wintitle="", channelList=None, showprofile='True',
1010 1010 xmin=None, xmax=None, ymin=None, ymax=None,
1011 1011 timerange=None,
1012 1012 save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
1013 1013 server=None, folder=None, username=None, password=None,
1014 1014 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
1015 1015
1016 1016 if channelList == None:
1017 1017 channelIndexList = dataOut.channelIndexList
1018 1018 channelList = dataOut.channelList
1019 1019 else:
1020 1020 channelIndexList = []
1021 1021 for channel in channelList:
1022 1022 if channel not in dataOut.channelList:
1023 1023 raise ValueError, "Channel %d is not in dataOut.channelList"
1024 1024 channelIndexList.append(dataOut.channelList.index(channel))
1025 1025
1026 1026 x = dataOut.getTimeRange()
1027 1027 #y = dataOut.getHeiRange()
1028 1028 factor = dataOut.normFactor
1029 1029 noise = dataOut.noise/factor
1030 1030 noisedB = 10*numpy.log10(noise)
1031 1031
1032 1032 #thisDatetime = dataOut.datatime
1033 1033 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
1034 1034 title = wintitle + " Noise" # : %s" %(thisDatetime.strftime("%d-%b-%Y"))
1035 1035 xlabel = ""
1036 1036 ylabel = "Intensity (dB)"
1037 1037
1038 1038 if not self.isConfig:
1039 1039
1040 1040 nplots = 1
1041 1041
1042 1042 self.setup(id=id,
1043 1043 nplots=nplots,
1044 1044 wintitle=wintitle,
1045 1045 showprofile=showprofile,
1046 1046 show=show)
1047 1047
1048 1048 if timerange != None:
1049 1049 self.timerange = timerange
1050 1050
1051 1051 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
1052 1052
1053 1053 if ymin == None: ymin = numpy.floor(numpy.nanmin(noisedB)) - 10.0
1054 1054 if ymax == None: ymax = numpy.nanmax(noisedB) + 10.0
1055 1055
1056 1056 self.FTP_WEI = ftp_wei
1057 1057 self.EXP_CODE = exp_code
1058 1058 self.SUB_EXP_CODE = sub_exp_code
1059 1059 self.PLOT_POS = plot_pos
1060 1060
1061 1061
1062 1062 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
1063 1063 self.isConfig = True
1064 1064 self.figfile = figfile
1065 1065 self.xdata = numpy.array([])
1066 1066 self.ydata = numpy.array([])
1067 1067
1068 1068 #open file beacon phase
1069 1069 path = '%s%03d' %(self.PREFIX, self.id)
1070 1070 noise_file = os.path.join(path,'%s.txt'%self.name)
1071 1071 self.filename_noise = os.path.join(figpath,noise_file)
1072 1072 if save:
1073 1073 self.openfile(self.filename_noise)
1074 1074
1075 1075
1076 1076 #store data beacon phase
1077 1077 if save:
1078 1078 self.save_data(self.filename_noise, noisedB, thisDatetime)
1079 1079
1080 1080
1081 1081 self.setWinTitle(title)
1082 1082
1083 1083
1084 1084 title = "Noise %s" %(thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
1085 1085
1086 1086 legendlabels = ["channel %d"%(idchannel+1) for idchannel in channelList]
1087 1087 axes = self.axesList[0]
1088 1088
1089 1089 self.xdata = numpy.hstack((self.xdata, x[0:1]))
1090 1090
1091 1091 if len(self.ydata)==0:
1092 1092 self.ydata = noisedB[channelIndexList].reshape(-1,1)
1093 1093 else:
1094 1094 self.ydata = numpy.hstack((self.ydata, noisedB[channelIndexList].reshape(-1,1)))
1095 1095
1096 1096
1097 1097 axes.pmultilineyaxis(x=self.xdata, y=self.ydata,
1098 1098 xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax,
1099 1099 xlabel=xlabel, ylabel=ylabel, title=title, legendlabels=legendlabels, marker='x', markersize=8, linestyle="solid",
1100 1100 XAxisAsTime=True, grid='both'
1101 1101 )
1102 1102
1103 1103 self.draw()
1104 1104
1105 1105 if x[1] >= self.axesList[0].xmax:
1106 1106 self.counter_imagwr = wr_period
1107 1107 del self.xdata
1108 1108 del self.ydata
1109 1109 self.__isConfig = False
1110 1110 self.figfile = None
1111 1111
1112 1112 self.save(figpath=figpath,
1113 1113 figfile=figfile,
1114 1114 save=save,
1115 1115 ftp=ftp,
1116 1116 wr_period=wr_period,
1117 1117 thisDatetime=thisDatetime,
1118 1118 update_figfile=False)
1119 1119
1120 1120
1121 1121 class BeaconPhase(Figure):
1122 1122
1123 1123 __isConfig = None
1124 1124 __nsubplots = None
1125 1125
1126 1126 PREFIX = 'beacon_phase'
1127 1127
1128 1128 def __init__(self):
1129 1129
1130 1130 self.timerange = 24*60*60
1131 1131 self.__isConfig = False
1132 1132 self.__nsubplots = 1
1133 1133 self.counter_imagwr = 0
1134 1134 self.WIDTH = 600
1135 1135 self.HEIGHT = 300
1136 1136 self.WIDTHPROF = 120
1137 1137 self.HEIGHTPROF = 0
1138 1138 self.xdata = None
1139 1139 self.ydata = None
1140 1140
1141 1141 self.PLOT_CODE = BEACON_CODE
1142 1142
1143 1143 self.FTP_WEI = None
1144 1144 self.EXP_CODE = None
1145 1145 self.SUB_EXP_CODE = None
1146 1146 self.PLOT_POS = None
1147 1147
1148 1148 self.filename_phase = None
1149 1149
1150 1150 self.figfile = None
1151 1151
1152 1152 self.xmin = None
1153 1153 self.xmax = None
1154 1154
1155 1155 def getSubplots(self):
1156 1156
1157 1157 ncol = 1
1158 1158 nrow = 1
1159 1159
1160 1160 return nrow, ncol
1161 1161
1162 1162 def setup(self, id, nplots, wintitle, showprofile=True, show=True):
1163 1163
1164 1164 self.__showprofile = showprofile
1165 1165 self.nplots = nplots
1166 1166
1167 1167 ncolspan = 7
1168 1168 colspan = 6
1169 1169 self.__nsubplots = 2
1170 1170
1171 1171 self.createFigure(id = id,
1172 1172 wintitle = wintitle,
1173 1173 widthplot = self.WIDTH+self.WIDTHPROF,
1174 1174 heightplot = self.HEIGHT+self.HEIGHTPROF,
1175 1175 show=show)
1176 1176
1177 1177 nrow, ncol = self.getSubplots()
1178 1178
1179 1179 self.addAxes(nrow, ncol*ncolspan, 0, 0, colspan, 1)
1180 1180
1181 1181 def save_phase(self, filename_phase):
1182 1182 f = open(filename_phase,'w+')
1183 1183 f.write('\n\n')
1184 1184 f.write('JICAMARCA RADIO OBSERVATORY - Beacon Phase \n')
1185 1185 f.write('DD MM YYYY HH MM SS pair(2,0) pair(2,1) pair(2,3) pair(2,4)\n\n' )
1186 1186 f.close()
1187 1187
1188 1188 def save_data(self, filename_phase, data, data_datetime):
1189 1189 f=open(filename_phase,'a')
1190 1190 timetuple_data = data_datetime.timetuple()
1191 1191 day = str(timetuple_data.tm_mday)
1192 1192 month = str(timetuple_data.tm_mon)
1193 1193 year = str(timetuple_data.tm_year)
1194 1194 hour = str(timetuple_data.tm_hour)
1195 1195 minute = str(timetuple_data.tm_min)
1196 1196 second = str(timetuple_data.tm_sec)
1197 1197 f.write(day+' '+month+' '+year+' '+hour+' '+minute+' '+second+' '+str(data[0])+' '+str(data[1])+' '+str(data[2])+' '+str(data[3])+'\n')
1198 1198 f.close()
1199 1199
1200 1200
1201 1201 def run(self, dataOut, id, wintitle="", pairsList=None, showprofile='True',
1202 1202 xmin=None, xmax=None, ymin=None, ymax=None,
1203 1203 timerange=None,
1204 1204 save=False, figpath='./', figfile=None, show=True, ftp=False, wr_period=1,
1205 1205 server=None, folder=None, username=None, password=None,
1206 1206 ftp_wei=0, exp_code=0, sub_exp_code=0, plot_pos=0):
1207 1207
1208 1208 if pairsList == None:
1209 1209 pairsIndexList = dataOut.pairsIndexList
1210 1210 else:
1211 1211 pairsIndexList = []
1212 1212 for pair in pairsList:
1213 1213 if pair not in dataOut.pairsList:
1214 1214 raise ValueError, "Pair %s is not in dataOut.pairsList" %(pair)
1215 1215 pairsIndexList.append(dataOut.pairsList.index(pair))
1216 1216
1217 1217 if pairsIndexList == []:
1218 1218 return
1219 1219
1220 1220 # if len(pairsIndexList) > 4:
1221 1221 # pairsIndexList = pairsIndexList[0:4]
1222 1222
1223 1223 x = dataOut.getTimeRange()
1224 1224 #y = dataOut.getHeiRange()
1225 1225
1226 1226
1227 1227 #thisDatetime = dataOut.datatime
1228 1228 thisDatetime = datetime.datetime.utcfromtimestamp(dataOut.getTimeRange()[0])
1229 1229 title = wintitle + " Phase of Beacon Signal" # : %s" %(thisDatetime.strftime("%d-%b-%Y"))
1230 1230 xlabel = "Local Time"
1231 1231 ylabel = "Phase"
1232 1232
1233 1233 nplots = len(pairsIndexList)
1234 1234 #phase = numpy.zeros((len(pairsIndexList),len(dataOut.beacon_heiIndexList)))
1235 1235 phase_beacon = numpy.zeros(len(pairsIndexList))
1236 1236 for i in range(nplots):
1237 1237 pair = dataOut.pairsList[pairsIndexList[i]]
1238 1238 ccf = numpy.average(dataOut.data_cspc[pairsIndexList[i],:,:],axis=0)
1239 1239 powa = numpy.average(dataOut.data_spc[pair[0],:,:],axis=0)
1240 1240 powb = numpy.average(dataOut.data_spc[pair[1],:,:],axis=0)
1241 1241 avgcoherenceComplex = ccf/numpy.sqrt(powa*powb)
1242 1242 phase = numpy.arctan2(avgcoherenceComplex.imag, avgcoherenceComplex.real)*180/numpy.pi
1243 1243
1244 1244 #print "Phase %d%d" %(pair[0], pair[1])
1245 1245 #print phase[dataOut.beacon_heiIndexList]
1246 1246
1247 1247 phase_beacon[i] = numpy.average(phase[dataOut.beacon_heiIndexList])
1248 1248
1249 1249 if not self.__isConfig:
1250 1250
1251 1251 nplots = len(pairsIndexList)
1252 1252
1253 1253 self.setup(id=id,
1254 1254 nplots=nplots,
1255 1255 wintitle=wintitle,
1256 1256 showprofile=showprofile,
1257 1257 show=show)
1258 1258
1259 1259 if timerange != None:
1260 1260 self.timerange = timerange
1261 1261
1262 1262 self.xmin, self.xmax = self.getTimeLim(x, xmin, xmax, timerange)
1263 1263
1264 1264 if ymin == None: ymin = numpy.nanmin(phase_beacon) - 10.0
1265 1265 if ymax == None: ymax = numpy.nanmax(phase_beacon) + 10.0
1266 1266
1267 1267 self.FTP_WEI = ftp_wei
1268 1268 self.EXP_CODE = exp_code
1269 1269 self.SUB_EXP_CODE = sub_exp_code
1270 1270 self.PLOT_POS = plot_pos
1271 1271
1272 1272 self.name = thisDatetime.strftime("%Y%m%d_%H%M%S")
1273 1273 self.__isConfig = True
1274 1274 self.figfile = figfile
1275 1275 self.xdata = numpy.array([])
1276 1276 self.ydata = numpy.array([])
1277 1277
1278 1278 #open file beacon phase
1279 1279 path = '%s%03d' %(self.PREFIX, self.id)
1280 1280 beacon_file = os.path.join(path,'%s.txt'%self.name)
1281 1281 self.filename_phase = os.path.join(figpath,beacon_file)
1282 1282 #self.save_phase(self.filename_phase)
1283 1283
1284 1284
1285 1285 #store data beacon phase
1286 1286 #self.save_data(self.filename_phase, phase_beacon, thisDatetime)
1287 1287
1288 1288 self.setWinTitle(title)
1289 1289
1290 1290
1291 1291 title = "Beacon Signal %s" %(thisDatetime.strftime("%Y/%m/%d %H:%M:%S"))
1292 1292
1293 1293 legendlabels = ["pairs %d%d"%(pair[0], pair[1]) for pair in dataOut.pairsList]
1294 1294
1295 1295 axes = self.axesList[0]
1296 1296
1297 1297 self.xdata = numpy.hstack((self.xdata, x[0:1]))
1298 1298
1299 1299 if len(self.ydata)==0:
1300 1300 self.ydata = phase_beacon.reshape(-1,1)
1301 1301 else:
1302 1302 self.ydata = numpy.hstack((self.ydata, phase_beacon.reshape(-1,1)))
1303 1303
1304 1304
1305 1305 axes.pmultilineyaxis(x=self.xdata, y=self.ydata,
1306 1306 xmin=self.xmin, xmax=self.xmax, ymin=ymin, ymax=ymax,
1307 1307 xlabel=xlabel, ylabel=ylabel, title=title, legendlabels=legendlabels, marker='x', markersize=8, linestyle="solid",
1308 1308 XAxisAsTime=True, grid='both'
1309 1309 )
1310 1310
1311 1311 self.draw()
1312 1312
1313 1313 if x[1] >= self.axesList[0].xmax:
1314 1314 self.counter_imagwr = wr_period
1315 1315 del self.xdata
1316 1316 del self.ydata
1317 1317 self.__isConfig = False
1318 1318 self.figfile = None
1319 1319
1320 1320 self.save(figpath=figpath,
1321 1321 figfile=figfile,
1322 1322 save=save,
1323 1323 ftp=ftp,
1324 1324 wr_period=wr_period,
1325 1325 thisDatetime=thisDatetime,
1326 1326 update_figfile=False)
1 NO CONTENT: file renamed from schainpy/test/150km_January_longPulse.py to schainpy/scripts/150km_January_longPulse.py
1 NO CONTENT: file renamed from schainpy/test/150km_January_shortPulse.py to schainpy/scripts/150km_January_shortPulse.py
1 NO CONTENT: file renamed from schainpy/test/150km_january_1.py to schainpy/scripts/150km_january_1.py
1 NO CONTENT: file renamed from schainpy/test/150km_january_3.py to schainpy/scripts/150km_january_3.py
1 NO CONTENT: file renamed from schainpy/test/150km_jicamarca.xml to schainpy/scripts/150km_jicamarca.xml
1 NO CONTENT: file renamed from schainpy/test/EWDrifts_estimation01.py to schainpy/scripts/EWDrifts_estimation01.py
1 NO CONTENT: file renamed from schainpy/test/EWDrifts_estimation02.py to schainpy/scripts/EWDrifts_estimation02.py
1 NO CONTENT: file renamed from schainpy/test/Meteor_JASMET30MHz_Winds.py to schainpy/scripts/Meteor_JASMET30MHz_Winds.py
1 NO CONTENT: file renamed from schainpy/test/Meteor_JASMET30Mhz_Beacon.py to schainpy/scripts/Meteor_JASMET30Mhz_Beacon.py
1 NO CONTENT: file renamed from schainpy/test/Meteor_JASMET50MHz_Winds.py to schainpy/scripts/Meteor_JASMET50MHz_Winds.py
1 NO CONTENT: file renamed from schainpy/test/Meteor_JASMET50Mhz_Beacon.py to schainpy/scripts/Meteor_JASMET50Mhz_Beacon.py
1 NO CONTENT: file renamed from schainpy/test/WindProfiler_DBS01.py to schainpy/scripts/WindProfiler_DBS01.py
1 NO CONTENT: file renamed from schainpy/test/WindProfiler_SA01.py to schainpy/scripts/WindProfiler_SA01.py
1 NO CONTENT: file renamed from schainpy/test/__init__.py to schainpy/scripts/__init__.py
1 NO CONTENT: file renamed from schainpy/test/amisr_EEJ.py to schainpy/scripts/amisr_EEJ.py
1 NO CONTENT: file renamed from schainpy/test/amisr_proc.py to schainpy/scripts/amisr_proc.py
1 NO CONTENT: file renamed from schainpy/test/amisr_reader.py to schainpy/scripts/amisr_reader.py
1 NO CONTENT: file renamed from schainpy/test/amisr_reader_exp.py to schainpy/scripts/amisr_reader_exp.py
1 NO CONTENT: file renamed from schainpy/test/amisr_reader_exp_ex2.py to schainpy/scripts/amisr_reader_exp_ex2.py
1 NO CONTENT: file renamed from schainpy/test/amisr_spreadF.py to schainpy/scripts/amisr_spreadF.py
1 NO CONTENT: file renamed from schainpy/test/amisr_windEstimation.py to schainpy/scripts/amisr_windEstimation.py
1 NO CONTENT: file renamed from schainpy/test/beacon_phase.py to schainpy/scripts/beacon_phase.py
1 NO CONTENT: file renamed from schainpy/test/hf_plot_pdata.py to schainpy/scripts/hf_plot_pdata.py
1 NO CONTENT: file renamed from schainpy/test/hf_test.py to schainpy/scripts/hf_test.py
1 NO CONTENT: file renamed from schainpy/test/hf_write_pdata.py to schainpy/scripts/hf_write_pdata.py
1 NO CONTENT: file renamed from schainpy/test/jasmet30_16april.py to schainpy/scripts/jasmet30_16april.py
1 NO CONTENT: file renamed from schainpy/test/jasmet50_16april.py to schainpy/scripts/jasmet50_16april.py
1 NO CONTENT: file renamed from schainpy/test/mst_isr_eej_blocks.py to schainpy/scripts/mst_isr_eej_blocks.py
1 NO CONTENT: file renamed from schainpy/test/mst_isr_eej_processing.py to schainpy/scripts/mst_isr_eej_processing.py
1 NO CONTENT: file renamed from schainpy/test/plot_eej.py to schainpy/scripts/plot_eej.py
1 NO CONTENT: file renamed from schainpy/test/plot_isr.py to schainpy/scripts/plot_isr.py
1 NO CONTENT: file renamed from schainpy/test/plot_mst.py to schainpy/scripts/plot_mst.py
1 NO CONTENT: file renamed from schainpy/test/sousy.py to schainpy/scripts/sousy.py
1 NO CONTENT: file renamed from schainpy/test/testRawData.py to schainpy/scripts/testRawData.py
1 NO CONTENT: file renamed from schainpy/test/test_eej_blocks.py to schainpy/scripts/test_eej_blocks.py
1 NO CONTENT: file renamed from schainpy/test/test_isr_blocks.py to schainpy/scripts/test_isr_blocks.py
1 NO CONTENT: file renamed from schainpy/test/test_mst_blocks.py to schainpy/scripts/test_mst_blocks.py
@@ -1,31 +1,31
1 1 '''
2 2 Created on Jul 16, 2014
3 3
4 4 @author: roj-idl71
5 5 '''
6 6
7 7 from distutils.core import setup, Extension
8 8
9 9 setup(name="schainpy",
10 10 version="2.0",
11 11 description="Python tools to read, write and process Jicamarca data",
12 12 author="Miguel Urco",
13 13 author_email="miguel.urco@jro.igp.gob.pe",
14 14 url="http://jro.igp.gob.pe",
15 15 packages = {'schainpy',
16 16 'schainpy.model',
17 17 'schainpy.model.data',
18 18 'schainpy.model.graphics',
19 19 'schainpy.model.io',
20 20 'schainpy.model.proc',
21 21 'schainpy.model.utils',
22 22 'schainpy.gui',
23 'schainpy.gui.figure',
23 'schainpy.gui.figures',
24 24 'schainpy.gui.viewcontroller',
25 25 'schainpy.gui.viewer',
26 26 'schainpy.gui.viewer.windows'},
27 27 py_modules=['schainpy.serializer.DataTranslate',
28 28 'schainpy.serializer.JROSerializer'],
29 package_data={'schainpy.gui.figure': ['*.jpg', '*.png', '*.gif']},
29 package_data={'schainpy.gui.figures': ['*.jpg', '*.jpeg', '*.png', '*.gif']},
30 30 include_package_data=True,
31 scripts =['schainpy/gui/schaingui.py']) No newline at end of file
31 scripts =['schainpy/gui/schainGUI']) No newline at end of file
@@ -1,34 +0,0
1 #!/usr/bin/env python
2 import os, sys
3 from PyQt4 import QtCore, QtGui
4 from PyQt4.QtGui import QApplication
5
6 path = os.path.dirname(os.getcwd())
7 path = os.path.dirname(path)
8
9 sys.path.insert(0, path)
10
11 from schainpy.gui.viewcontroller.initwindow import InitWindow
12 from schainpy.gui.viewcontroller.basicwindow import BasicWindow
13 from schainpy.gui.viewcontroller.workspace import Workspace
14
15 def main():
16
17 app = QtGui.QApplication(sys.argv)
18
19 Welcome=InitWindow()
20
21 if not Welcome.exec_():
22 sys.exit(-1)
23
24 WorkPathspace=Workspace()
25 if not WorkPathspace.exec_():
26 sys.exit(-1)
27
28 MainGUI=BasicWindow()
29 MainGUI.setWorkSpaceGUI(WorkPathspace.dirComBox.currentText())
30 MainGUI.show()
31 sys.exit(app.exec_())
32
33 if __name__ == "__main__":
34 main() No newline at end of file
General Comments 0
You need to be logged in to leave comments. Login now