##// END OF EJS Templates
Some comments added to controller.py
Miguel Valdez -
r535:9b85ede1adb0
parent child
Show More
@@ -1,776 +1,784
1 1 '''
2 2 Created on September , 2012
3 3 @author:
4 4 '''
5 5 from xml.etree.ElementTree import Element, SubElement, ElementTree
6 6 from xml.etree import ElementTree as ET
7 7 from xml.dom import minidom
8 8
9 9 import datetime
10 10 from model import *
11 11
12 12 import ast
13 13
14 14 def prettify(elem):
15 15 """Return a pretty-printed XML string for the Element.
16 16 """
17 17 rough_string = ET.tostring(elem, 'utf-8')
18 18 reparsed = minidom.parseString(rough_string)
19 19 return reparsed.toprettyxml(indent=" ")
20 20
21 21 class ParameterConf():
22 22
23 23 id = None
24 24 name = None
25 25 value = None
26 26 format = None
27 27
28 28 __formated_value = None
29 29
30 30 ELEMENTNAME = 'Parameter'
31 31
32 32 def __init__(self):
33 33
34 34 self.format = 'str'
35 35
36 36 def getElementName(self):
37 37
38 38 return self.ELEMENTNAME
39 39
40 40 def getValue(self):
41 41
42 42 if self.__formated_value != None:
43 43
44 44 return self.__formated_value
45 45
46 46 value = self.value
47 47
48 if self.format == 'bool':
49 value = int(value)
50
48 51 if self.format == 'list':
49 52 strList = value.split(',')
50 53
51 54 self.__formated_value = strList
52 55
53 56 return self.__formated_value
54 57
55 58 if self.format == 'intlist':
59 """
60 Example:
61 value = (0,1,2)
62 """
56 63 strList = value.split(',')
57 64 intList = [int(x) for x in strList]
58 65
59 66 self.__formated_value = intList
60 67
61 68 return self.__formated_value
62 69
63 70 if self.format == 'floatlist':
71 """
72 Example:
73 value = (0.5, 1.4, 2.7)
74 """
64 75 strList = value.split(',')
65 76 floatList = [float(x) for x in strList]
66 77
67 78 self.__formated_value = floatList
68 79
69 80 return self.__formated_value
70 81
71 82 if self.format == 'date':
72 83 strList = value.split('/')
73 84 intList = [int(x) for x in strList]
74 85 date = datetime.date(intList[0], intList[1], intList[2])
75 86
76 87 self.__formated_value = date
77 88
78 89 return self.__formated_value
79 90
80 91 if self.format == 'time':
81 92 strList = value.split(':')
82 93 intList = [int(x) for x in strList]
83 94 time = datetime.time(intList[0], intList[1], intList[2])
84 95
85 96 self.__formated_value = time
86 97
87 98 return self.__formated_value
88 99
89 if self.format == 'bool':
90 value = int(value)
91
92 if self.format == 'pairsList':
100 if self.format == 'pairslist':
93 101 """
94 102 Example:
95 103 value = (0,1),(1,2)
96 104 """
97 105
98 106 value = value.replace('(', '')
99 107 value = value.replace(')', '')
100 108
101 109 strList = value.split(',')
102 110 intList = [int(item) for item in strList]
103 111 pairList = []
104 112 for i in range(len(intList)/2):
105 113 pairList.append((intList[i*2], intList[i*2 + 1]))
106 114
107 115 self.__formated_value = pairList
108 116
109 117 return self.__formated_value
110 118
111 if self.format == 'multiList':
119 if self.format == 'multilist':
112 120 """
113 121 Example:
114 122 value = (0,1,2),(3,4,5)
115 123 """
116 124 multiList = ast.literal_eval(value)
117 125
118 126 self.__formated_value = multiList
119 127
120 128 return self.__formated_value
121 129
122 130 format_func = eval(self.format)
123 131
124 132 self.__formated_value = format_func(value)
125 133
126 134 return self.__formated_value
127 135
128 136 def setup(self, id, name, value, format='str'):
129 137
130 138 self.id = id
131 139 self.name = name
132 140 self.value = str(value)
133 self.format = format
141 self.format = str.lower(format)
134 142
135 143 def makeXml(self, opElement):
136 144
137 145 parmElement = SubElement(opElement, self.ELEMENTNAME)
138 146 parmElement.set('id', str(self.id))
139 147 parmElement.set('name', self.name)
140 148 parmElement.set('value', self.value)
141 149 parmElement.set('format', self.format)
142 150
143 151 def readXml(self, parmElement):
144 152
145 153 self.id = parmElement.get('id')
146 154 self.name = parmElement.get('name')
147 155 self.value = parmElement.get('value')
148 156 self.format = parmElement.get('format')
149 157
150 158 def printattr(self):
151 159
152 160 print "Parameter[%s]: name = %s, value = %s, format = %s" %(self.id, self.name, self.value, self.format)
153 161
154 162 class OperationConf():
155 163
156 164 id = None
157 165 name = None
158 166 priority = None
159 167 type = None
160 168
161 169 parmConfObjList = []
162 170
163 171 ELEMENTNAME = 'Operation'
164 172
165 173 def __init__(self):
166 174
167 175 id = 0
168 176 name = None
169 177 priority = None
170 178 type = 'self'
171 179
172 180
173 181 def __getNewId(self):
174 182
175 183 return int(self.id)*10 + len(self.parmConfObjList) + 1
176 184
177 185 def getElementName(self):
178 186
179 187 return self.ELEMENTNAME
180 188
181 189 def getParameterObjList(self):
182 190
183 191 return self.parmConfObjList
184 192
185 193 def setup(self, id, name, priority, type):
186 194
187 195 self.id = id
188 196 self.name = name
189 197 self.type = type
190 198 self.priority = priority
191 199
192 200 self.parmConfObjList = []
193 201
194 202 def addParameter(self, name, value, format='str'):
195 203
196 204 id = self.__getNewId()
197 205
198 206 parmConfObj = ParameterConf()
199 207 parmConfObj.setup(id, name, value, format)
200 208
201 209 self.parmConfObjList.append(parmConfObj)
202 210
203 211 return parmConfObj
204 212
205 213 def makeXml(self, upElement):
206 214
207 215 opElement = SubElement(upElement, self.ELEMENTNAME)
208 216 opElement.set('id', str(self.id))
209 217 opElement.set('name', self.name)
210 218 opElement.set('type', self.type)
211 219 opElement.set('priority', str(self.priority))
212 220
213 221 for parmConfObj in self.parmConfObjList:
214 222 parmConfObj.makeXml(opElement)
215 223
216 224 def readXml(self, opElement):
217 225
218 226 self.id = opElement.get('id')
219 227 self.name = opElement.get('name')
220 228 self.type = opElement.get('type')
221 229 self.priority = opElement.get('priority')
222 230
223 231 self.parmConfObjList = []
224 232
225 233 parmElementList = opElement.getiterator(ParameterConf().getElementName())
226 234
227 235 for parmElement in parmElementList:
228 236 parmConfObj = ParameterConf()
229 237 parmConfObj.readXml(parmElement)
230 238 self.parmConfObjList.append(parmConfObj)
231 239
232 240 def printattr(self):
233 241
234 242 print "%s[%s]: name = %s, type = %s, priority = %s" %(self.ELEMENTNAME,
235 243 self.id,
236 244 self.name,
237 245 self.type,
238 246 self.priority)
239 247
240 248 for parmConfObj in self.parmConfObjList:
241 249 parmConfObj.printattr()
242 250
243 251 def createObject(self):
244 252
245 253 if self.type == 'self':
246 254 raise ValueError, "This operation type cannot be created"
247 255
248 256 if self.type == 'external' or self.type == 'other':
249 257 className = eval(self.name)
250 258 opObj = className()
251 259
252 260 return opObj
253 261
254 262 class ProcUnitConf():
255 263
256 264 id = None
257 265 name = None
258 266 datatype = None
259 267 inputId = None
260 268
261 269 opConfObjList = []
262 270
263 271 procUnitObj = None
264 272 opObjList = []
265 273
266 274 ELEMENTNAME = 'ProcUnit'
267 275
268 276 def __init__(self):
269 277
270 278 self.id = None
271 279 self.datatype = None
272 280 self.name = None
273 281 self.inputId = None
274 282
275 283 self.opConfObjList = []
276 284
277 285 self.procUnitObj = None
278 286 self.opObjDict = {}
279 287
280 288 def __getPriority(self):
281 289
282 290 return len(self.opConfObjList)+1
283 291
284 292 def __getNewId(self):
285 293
286 294 return int(self.id)*10 + len(self.opConfObjList) + 1
287 295
288 296 def getElementName(self):
289 297
290 298 return self.ELEMENTNAME
291 299
292 300 def getId(self):
293 301
294 302 return str(self.id)
295 303
296 304 def getInputId(self):
297 305
298 306 return str(self.inputId)
299 307
300 308 def getOperationObjList(self):
301 309
302 310 return self.opConfObjList
303 311
304 312 def getProcUnitObj(self):
305 313
306 314 return self.procUnitObj
307 315
308 316 def setup(self, id, name, datatype, inputId):
309 317
310 318 self.id = id
311 319 self.name = name
312 320 self.datatype = datatype
313 321 self.inputId = inputId
314 322
315 323 self.opConfObjList = []
316 324
317 325 self.addOperation(name='run', optype='self')
318 326
319 327 def addParameter(self, **kwargs):
320 328
321 329 opObj = self.opConfObjList[0]
322 330
323 331 opObj.addParameter(**kwargs)
324 332
325 333 return opObj
326 334
327 335 def addOperation(self, name, optype='self'):
328 336
329 337 id = self.__getNewId()
330 338 priority = self.__getPriority()
331 339
332 340 opConfObj = OperationConf()
333 341 opConfObj.setup(id, name=name, priority=priority, type=optype)
334 342
335 343 self.opConfObjList.append(opConfObj)
336 344
337 345 return opConfObj
338 346
339 347 def makeXml(self, procUnitElement):
340 348
341 349 upElement = SubElement(procUnitElement, self.ELEMENTNAME)
342 350 upElement.set('id', str(self.id))
343 351 upElement.set('name', self.name)
344 352 upElement.set('datatype', self.datatype)
345 353 upElement.set('inputId', str(self.inputId))
346 354
347 355 for opConfObj in self.opConfObjList:
348 356 opConfObj.makeXml(upElement)
349 357
350 358 def readXml(self, upElement):
351 359
352 360 self.id = upElement.get('id')
353 361 self.name = upElement.get('name')
354 362 self.datatype = upElement.get('datatype')
355 363 self.inputId = upElement.get('inputId')
356 364
357 365 self.opConfObjList = []
358 366
359 367 opElementList = upElement.getiterator(OperationConf().getElementName())
360 368
361 369 for opElement in opElementList:
362 370 opConfObj = OperationConf()
363 371 opConfObj.readXml(opElement)
364 372 self.opConfObjList.append(opConfObj)
365 373
366 374 def printattr(self):
367 375
368 376 print "%s[%s]: name = %s, datatype = %s, inputId = %s" %(self.ELEMENTNAME,
369 377 self.id,
370 378 self.name,
371 379 self.datatype,
372 380 self.inputId)
373 381
374 382 for opConfObj in self.opConfObjList:
375 383 opConfObj.printattr()
376 384
377 385 def createObjects(self):
378 386
379 387 className = eval(self.name)
380 388 procUnitObj = className()
381 389
382 390 for opConfObj in self.opConfObjList:
383 391
384 392 if opConfObj.type == 'self':
385 393 continue
386 394
387 395 opObj = opConfObj.createObject()
388 396
389 397 self.opObjDict[opConfObj.id] = opObj
390 398 procUnitObj.addOperation(opObj, opConfObj.id)
391 399
392 400 self.procUnitObj = procUnitObj
393 401
394 402 return procUnitObj
395 403
396 404 def run(self):
397 405
398 406 finalSts = False
399 407
400 408 for opConfObj in self.opConfObjList:
401 409
402 410 kwargs = {}
403 411 for parmConfObj in opConfObj.getParameterObjList():
404 412 kwargs[parmConfObj.name] = parmConfObj.getValue()
405 413
406 414 #print "\tRunning the '%s' operation with %s" %(opConfObj.name, opConfObj.id)
407 415 sts = self.procUnitObj.call(opType = opConfObj.type,
408 416 opName = opConfObj.name,
409 417 opId = opConfObj.id,
410 418 **kwargs)
411 419 finalSts = finalSts or sts
412 420
413 421 return finalSts
414 422
415 423 class ReadUnitConf(ProcUnitConf):
416 424
417 425 path = None
418 426 startDate = None
419 427 endDate = None
420 428 startTime = None
421 429 endTime = None
422 430
423 431 ELEMENTNAME = 'ReadUnit'
424 432
425 433 def __init__(self):
426 434
427 435 self.id = None
428 436 self.datatype = None
429 437 self.name = None
430 438 self.inputId = 0
431 439
432 440 self.opConfObjList = []
433 441 self.opObjList = []
434 442
435 443 def getElementName(self):
436 444
437 445 return self.ELEMENTNAME
438 446
439 447 def setup(self, id, name, datatype, path="", startDate="", endDate="", startTime="", endTime="", **kwargs):
440 448
441 449 self.id = id
442 450 self.name = name
443 451 self.datatype = datatype
444 452
445 453 self.path = path
446 454 self.startDate = startDate
447 455 self.endDate = endDate
448 456 self.startTime = startTime
449 457 self.endTime = endTime
450 458
451 459 self.addRunOperation(**kwargs)
452 460
453 461 def addRunOperation(self, **kwargs):
454 462
455 463 opObj = self.addOperation(name = 'run', optype = 'self')
456 464
457 465 opObj.addParameter(name='path' , value=self.path, format='str')
458 466 opObj.addParameter(name='startDate' , value=self.startDate, format='date')
459 467 opObj.addParameter(name='endDate' , value=self.endDate, format='date')
460 468 opObj.addParameter(name='startTime' , value=self.startTime, format='time')
461 469 opObj.addParameter(name='endTime' , value=self.endTime, format='time')
462 470
463 471 for key, value in kwargs.items():
464 472 opObj.addParameter(name=key, value=value, format=type(value).__name__)
465 473
466 474 return opObj
467 475
468 476
469 477 class Project():
470 478
471 479 id = None
472 480 name = None
473 481 description = None
474 482 # readUnitConfObjList = None
475 483 procUnitConfObjDict = None
476 484
477 485 ELEMENTNAME = 'Project'
478 486
479 487 def __init__(self):
480 488
481 489 self.id = None
482 490 self.name = None
483 491 self.description = None
484 492
485 493 # self.readUnitConfObjList = []
486 494 self.procUnitConfObjDict = {}
487 495
488 496 def __getNewId(self):
489 497
490 498 id = int(self.id)*10 + len(self.procUnitConfObjDict) + 1
491 499
492 500 return str(id)
493 501
494 502 def getElementName(self):
495 503
496 504 return self.ELEMENTNAME
497 505
498 506 def setup(self, id, name, description):
499 507
500 508 self.id = id
501 509 self.name = name
502 510 self.description = description
503 511
504 512 def addReadUnit(self, datatype, **kwargs):
505 513
506 514 id = self.__getNewId()
507 515 name = '%s' %(datatype)
508 516
509 517 readUnitConfObj = ReadUnitConf()
510 518 readUnitConfObj.setup(id, name, datatype, **kwargs)
511 519
512 520 self.procUnitConfObjDict[readUnitConfObj.getId()] = readUnitConfObj
513 521
514 522 return readUnitConfObj
515 523
516 524 def addProcUnit(self, datatype, inputId):
517 525
518 526 id = self.__getNewId()
519 527 name = '%s' %(datatype)
520 528
521 529 procUnitConfObj = ProcUnitConf()
522 530 procUnitConfObj.setup(id, name, datatype, inputId)
523 531
524 532 self.procUnitConfObjDict[procUnitConfObj.getId()] = procUnitConfObj
525 533
526 534 return procUnitConfObj
527 535
528 536 def makeXml(self):
529 537
530 538 projectElement = Element('Project')
531 539 projectElement.set('id', str(self.id))
532 540 projectElement.set('name', self.name)
533 541 projectElement.set('description', self.description)
534 542
535 543 # for readUnitConfObj in self.readUnitConfObjList:
536 544 # readUnitConfObj.makeXml(projectElement)
537 545
538 546 for procUnitConfObj in self.procUnitConfObjDict.values():
539 547 procUnitConfObj.makeXml(projectElement)
540 548
541 549 self.projectElement = projectElement
542 550
543 551 def writeXml(self, filename):
544 552
545 553 self.makeXml()
546 554
547 555 print prettify(self.projectElement)
548 556
549 557 ElementTree(self.projectElement).write(filename, method='xml')
550 558
551 559 def readXml(self, filename):
552 560
553 561 #tree = ET.parse(filename)
554 562 self.projectElement = None
555 563 # self.readUnitConfObjList = []
556 564 self.procUnitConfObjDict = {}
557 565
558 566 self.projectElement = ElementTree().parse(filename)
559 567
560 568 self.project = self.projectElement.tag
561 569
562 570 self.id = self.projectElement.get('id')
563 571 self.name = self.projectElement.get('name')
564 572 self.description = self.projectElement.get('description')
565 573
566 574 readUnitElementList = self.projectElement.getiterator(ReadUnitConf().getElementName())
567 575
568 576 for readUnitElement in readUnitElementList:
569 577 readUnitConfObj = ReadUnitConf()
570 578 readUnitConfObj.readXml(readUnitElement)
571 579
572 580 self.procUnitConfObjDict[readUnitConfObj.getId()] = readUnitConfObj
573 581
574 582 procUnitElementList = self.projectElement.getiterator(ProcUnitConf().getElementName())
575 583
576 584 for procUnitElement in procUnitElementList:
577 585 procUnitConfObj = ProcUnitConf()
578 586 procUnitConfObj.readXml(procUnitElement)
579 587
580 588 self.procUnitConfObjDict[procUnitConfObj.getId()] = procUnitConfObj
581 589
582 590 def printattr(self):
583 591
584 592 print "Project[%s]: name = %s, description = %s" %(self.id,
585 593 self.name,
586 594 self.description)
587 595
588 596 # for readUnitConfObj in self.readUnitConfObjList:
589 597 # readUnitConfObj.printattr()
590 598
591 599 for procUnitConfObj in self.procUnitConfObjDict.values():
592 600 procUnitConfObj.printattr()
593 601
594 602 def createObjects(self):
595 603
596 604 # for readUnitConfObj in self.readUnitConfObjList:
597 605 # readUnitConfObj.createObjects()
598 606
599 607 for procUnitConfObj in self.procUnitConfObjDict.values():
600 608 procUnitConfObj.createObjects()
601 609
602 610 def __connect(self, objIN, thisObj):
603 611
604 612 thisObj.setInput(objIN.getOutputObj())
605 613
606 614 def connectObjects(self):
607 615
608 616 for thisPUConfObj in self.procUnitConfObjDict.values():
609 617
610 618 inputId = thisPUConfObj.getInputId()
611 619
612 620 if int(inputId) == 0:
613 621 continue
614 622
615 623 #Get input object
616 624 puConfINObj = self.procUnitConfObjDict[inputId]
617 625 puObjIN = puConfINObj.getProcUnitObj()
618 626
619 627 #Get current object
620 628 thisPUObj = thisPUConfObj.getProcUnitObj()
621 629
622 630 self.__connect(puObjIN, thisPUObj)
623 631
624 632 def run(self):
625 633
626 634 # for readUnitConfObj in self.readUnitConfObjList:
627 635 # readUnitConfObj.run()
628 636
629 637 while(True):
630 638
631 639 finalSts = False
632 640
633 641 for procUnitConfObj in self.procUnitConfObjDict.values():
634 642 #print "Running the '%s' process with %s" %(procUnitConfObj.name, procUnitConfObj.id)
635 643 sts = procUnitConfObj.run()
636 644 finalSts = finalSts or sts
637 645
638 646 #If every process unit finished so end process
639 647 if not(finalSts):
640 648 print "Every process units have finished"
641 649 break
642 650
643 651 if __name__ == '__main__':
644 652
645 653 desc = "Segundo Test"
646 654 filename = "schain.xml"
647 655
648 656 controllerObj = Project()
649 657
650 658 controllerObj.setup(id = '191', name='test01', description=desc)
651 659
652 660 readUnitConfObj = controllerObj.addReadUnit(datatype='Voltage',
653 661 path='data/rawdata/',
654 662 startDate='2011/01/01',
655 663 endDate='2012/12/31',
656 664 startTime='00:00:00',
657 665 endTime='23:59:59',
658 666 online=1,
659 667 walk=1)
660 668
661 669 # opObj00 = readUnitConfObj.addOperation(name='printInfo')
662 670
663 671 procUnitConfObj0 = controllerObj.addProcUnit(datatype='Voltage', inputId=readUnitConfObj.getId())
664 672
665 673 opObj10 = procUnitConfObj0.addOperation(name='selectChannels')
666 674 opObj10.addParameter(name='channelList', value='3,4,5', format='intlist')
667 675
668 676 opObj10 = procUnitConfObj0.addOperation(name='selectHeights')
669 677 opObj10.addParameter(name='minHei', value='90', format='float')
670 678 opObj10.addParameter(name='maxHei', value='180', format='float')
671 679
672 680 opObj12 = procUnitConfObj0.addOperation(name='CohInt', optype='external')
673 681 opObj12.addParameter(name='n', value='10', format='int')
674 682
675 683 procUnitConfObj1 = controllerObj.addProcUnit(datatype='Spectra', inputId=procUnitConfObj0.getId())
676 684 procUnitConfObj1.addParameter(name='nFFTPoints', value='32', format='int')
677 685 # procUnitConfObj1.addParameter(name='pairList', value='(0,1),(0,2),(1,2)', format='')
678 686
679 687
680 688 opObj11 = procUnitConfObj1.addOperation(name='SpectraPlot', optype='external')
681 689 opObj11.addParameter(name='idfigure', value='1', format='int')
682 690 opObj11.addParameter(name='wintitle', value='SpectraPlot0', format='str')
683 691 opObj11.addParameter(name='zmin', value='40', format='int')
684 692 opObj11.addParameter(name='zmax', value='90', format='int')
685 693 opObj11.addParameter(name='showprofile', value='1', format='int')
686 694
687 695 # opObj11 = procUnitConfObj1.addOperation(name='CrossSpectraPlot', optype='external')
688 696 # opObj11.addParameter(name='idfigure', value='2', format='int')
689 697 # opObj11.addParameter(name='wintitle', value='CrossSpectraPlot', format='str')
690 698 # opObj11.addParameter(name='zmin', value='40', format='int')
691 699 # opObj11.addParameter(name='zmax', value='90', format='int')
692 700
693 701
694 702 # procUnitConfObj2 = controllerObj.addProcUnit(datatype='Voltage', inputId=procUnitConfObj0.getId())
695 703 #
696 704 # opObj12 = procUnitConfObj2.addOperation(name='CohInt', optype='external')
697 705 # opObj12.addParameter(name='n', value='2', format='int')
698 706 # opObj12.addParameter(name='overlapping', value='1', format='int')
699 707 #
700 708 # procUnitConfObj3 = controllerObj.addProcUnit(datatype='Spectra', inputId=procUnitConfObj2.getId())
701 709 # procUnitConfObj3.addParameter(name='nFFTPoints', value='32', format='int')
702 710 #
703 711 # opObj11 = procUnitConfObj3.addOperation(name='SpectraPlot', optype='external')
704 712 # opObj11.addParameter(name='idfigure', value='2', format='int')
705 713 # opObj11.addParameter(name='wintitle', value='SpectraPlot1', format='str')
706 714 # opObj11.addParameter(name='zmin', value='40', format='int')
707 715 # opObj11.addParameter(name='zmax', value='90', format='int')
708 716 # opObj11.addParameter(name='showprofile', value='1', format='int')
709 717
710 718 # opObj11 = procUnitConfObj1.addOperation(name='RTIPlot', optype='external')
711 719 # opObj11.addParameter(name='idfigure', value='10', format='int')
712 720 # opObj11.addParameter(name='wintitle', value='RTI', format='str')
713 721 ## opObj11.addParameter(name='xmin', value='21', format='float')
714 722 ## opObj11.addParameter(name='xmax', value='22', format='float')
715 723 # opObj11.addParameter(name='zmin', value='40', format='int')
716 724 # opObj11.addParameter(name='zmax', value='90', format='int')
717 725 # opObj11.addParameter(name='showprofile', value='1', format='int')
718 726 # opObj11.addParameter(name='timerange', value=str(60), format='int')
719 727
720 728 # opObj10 = procUnitConfObj1.addOperation(name='selectChannels')
721 729 # opObj10.addParameter(name='channelList', value='0,2,4,6', format='intlist')
722 730 #
723 731 # opObj12 = procUnitConfObj1.addOperation(name='IncohInt', optype='external')
724 732 # opObj12.addParameter(name='n', value='2', format='int')
725 733 #
726 734 # opObj11 = procUnitConfObj1.addOperation(name='SpectraPlot', optype='external')
727 735 # opObj11.addParameter(name='idfigure', value='2', format='int')
728 736 # opObj11.addParameter(name='wintitle', value='SpectraPlot10', format='str')
729 737 # opObj11.addParameter(name='zmin', value='70', format='int')
730 738 # opObj11.addParameter(name='zmax', value='90', format='int')
731 739 #
732 740 # opObj10 = procUnitConfObj1.addOperation(name='selectChannels')
733 741 # opObj10.addParameter(name='channelList', value='2,6', format='intlist')
734 742 #
735 743 # opObj12 = procUnitConfObj1.addOperation(name='IncohInt', optype='external')
736 744 # opObj12.addParameter(name='n', value='2', format='int')
737 745 #
738 746 # opObj11 = procUnitConfObj1.addOperation(name='SpectraPlot', optype='external')
739 747 # opObj11.addParameter(name='idfigure', value='3', format='int')
740 748 # opObj11.addParameter(name='wintitle', value='SpectraPlot10', format='str')
741 749 # opObj11.addParameter(name='zmin', value='70', format='int')
742 750 # opObj11.addParameter(name='zmax', value='90', format='int')
743 751
744 752
745 753 # opObj12 = procUnitConfObj1.addOperation(name='decoder')
746 754 # opObj12.addParameter(name='ncode', value='2', format='int')
747 755 # opObj12.addParameter(name='nbauds', value='8', format='int')
748 756 # opObj12.addParameter(name='code0', value='001110011', format='int')
749 757 # opObj12.addParameter(name='code1', value='001110011', format='int')
750 758
751 759
752 760
753 761 # procUnitConfObj2 = controllerObj.addProcUnit(datatype='Spectra', inputId=procUnitConfObj1.getId())
754 762 #
755 763 # opObj21 = procUnitConfObj2.addOperation(name='IncohInt', optype='external')
756 764 # opObj21.addParameter(name='n', value='2', format='int')
757 765 #
758 766 # opObj11 = procUnitConfObj2.addOperation(name='SpectraPlot', optype='external')
759 767 # opObj11.addParameter(name='idfigure', value='4', format='int')
760 768 # opObj11.addParameter(name='wintitle', value='SpectraPlot OBJ 2', format='str')
761 769 # opObj11.addParameter(name='zmin', value='70', format='int')
762 770 # opObj11.addParameter(name='zmax', value='90', format='int')
763 771
764 772 print "Escribiendo el archivo XML"
765 773
766 774 controllerObj.writeXml(filename)
767 775
768 776 print "Leyendo el archivo XML"
769 777 controllerObj.readXml(filename)
770 778 #controllerObj.printattr()
771 779
772 780 controllerObj.createObjects()
773 781 controllerObj.connectObjects()
774 782 controllerObj.run()
775 783
776 784 No newline at end of file
General Comments 0
You need to be logged in to leave comments. Login now