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