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