@@ -239,7 +239,7 class JRODataReader(JRODataIO, ProcessingUnit): | |||
|
239 | 239 | |
|
240 | 240 | nReadBlocks = 0 |
|
241 | 241 | |
|
242 |
delay = |
|
|
242 | delay = 10 #number of seconds waiting a new file | |
|
243 | 243 | |
|
244 | 244 | nTries = 3 #quantity tries |
|
245 | 245 | |
@@ -524,7 +524,7 class JRODataReader(JRODataIO, ProcessingUnit): | |||
|
524 | 524 | self.filename = file |
|
525 | 525 | self.flagIsNewFile = 1 |
|
526 | 526 | if self.fp != None: self.fp.close() |
|
527 | self.fp = open(file) | |
|
527 | self.fp = open(file, 'rb') | |
|
528 | 528 | self.flagNoMoreFiles = 0 |
|
529 | 529 | print 'Setting the file: %s' % file |
|
530 | 530 | else: |
@@ -554,6 +554,37 class JRODataReader(JRODataIO, ProcessingUnit): | |||
|
554 | 554 | self.nReadBlocks = 0 |
|
555 | 555 | return 1 |
|
556 | 556 | |
|
557 | def __waitNewBlock(self): | |
|
558 | #si es OnLine y ademas aun no se han leido un bloque completo entonces se espera por uno valido | |
|
559 | if not self.online: | |
|
560 | return 0 | |
|
561 | ||
|
562 | if (self.nReadBlocks >= self.processingHeaderObj.dataBlocksPerFile): | |
|
563 | return 0 | |
|
564 | ||
|
565 | currentPointer = self.fp.tell() | |
|
566 | ||
|
567 | neededSize = self.processingHeaderObj.blockSize + self.basicHeaderSize | |
|
568 | ||
|
569 | for nTries in range( self.nTries ): | |
|
570 | ||
|
571 | self.fp.close() | |
|
572 | self.fp = open( self.filename, 'rb' ) | |
|
573 | self.fp.seek( currentPointer ) | |
|
574 | ||
|
575 | self.fileSize = os.path.getsize( self.filename ) | |
|
576 | currentSize = self.fileSize - currentPointer | |
|
577 | ||
|
578 | if ( currentSize >= neededSize ): | |
|
579 | self.__rdBasicHeader() | |
|
580 | return 1 | |
|
581 | ||
|
582 | print "\tWaiting %0.2f seconds for the next block, try %03d ..." % (self.delay, nTries+1) | |
|
583 | time.sleep( self.delay ) | |
|
584 | ||
|
585 | ||
|
586 | return 0 | |
|
587 | ||
|
557 | 588 | def __setNewBlock(self): |
|
558 | 589 | if self.fp == None: |
|
559 | 590 | return 0 |
@@ -568,6 +599,9 class JRODataReader(JRODataIO, ProcessingUnit): | |||
|
568 | 599 | if (currentSize >= neededSize): |
|
569 | 600 | self.__rdBasicHeader() |
|
570 | 601 | return 1 |
|
602 | ||
|
603 | if self.__waitNewBlock(): | |
|
604 | return 1 | |
|
571 | 605 | |
|
572 | 606 | if not(self.setNextFile()): |
|
573 | 607 | return 0 |
General Comments 0
You need to be logged in to leave comments.
Login now