##// END OF EJS Templates
Metodo self.__waitNewBlock agreagado: Bug leyendo datos en linea. No esperaba un nuevo bloque, siempre saltaba al siguiente archivo.
Miguel Valdez -
r172:248131ce173d
parent child
Show More
@@ -620,6 +620,36 class JRODataReader(JRODataIO):
620 self.nReadBlocks = 0
620 self.nReadBlocks = 0
621 return 1
621 return 1
622
622
623 def __waitNewBlock(self):
624 #si es OnLine y ademas aun no se han leido un bloque completo entonces se espera por uno valido
625 if not self.online:
626 return
627
628
629 if (self.nReadBlocks < self.m_ProcessingHeader.dataBlocksPerFile):
630
631 currentPointer = self.fp.tell()
632
633 for nTries in range( self.nTries ):
634 #self.fp.close()
635
636 print "\tWaiting %0.2f seconds for the next block, try %03d ..." % (self.delay, nTries+1)
637 time.sleep( self.delay )
638
639 #self.fp = open( self.filename, 'rb' )
640 #self.fp.seek( fpointer )
641
642 self.fileSize = os.path.getsize( self.filename )
643 currentSize = self.fileSize - currentPointer
644
645 if ( currentSize >= neededSize ):
646 self.__rdBasicHeader()
647 return 1
648
649 return 0
650
651 return 1
652
623 def __setNewBlock(self):
653 def __setNewBlock(self):
624 if self.fp == None:
654 if self.fp == None:
625 return 0
655 return 0
@@ -634,6 +664,9 class JRODataReader(JRODataIO):
634 if (currentSize >= neededSize):
664 if (currentSize >= neededSize):
635 self.__rdBasicHeader()
665 self.__rdBasicHeader()
636 return 1
666 return 1
667
668 if self.__waitNewBlock():
669 return 1
637
670
638 if not(self.setNextFile()):
671 if not(self.setNextFile()):
639 return 0
672 return 0
@@ -7,7 +7,7 $Id$
7 import os, sys
7 import os, sys
8 import numpy
8 import numpy
9
9
10 import pyfits
10 #import pyfits
11 import glob
11 import glob
12 import fnmatch
12 import fnmatch
13 import time, datetime
13 import time, datetime
General Comments 0
You need to be logged in to leave comments. Login now