@@ -887,7 +887,9 class JRODataReader(JRODataIO): | |||||
887 | if not(self.readBlock()): |
|
887 | if not(self.readBlock()): | |
888 | return 0 |
|
888 | return 0 | |
889 |
|
889 | |||
890 | print "[Reading] Block No. %d/%d -> %s" %(self.basicHeaderObj.dataBlock+1, |
|
890 | self.getBasicHeader() | |
|
891 | ||||
|
892 | print "[Reading] Block No. %d/%d -> %s" %(self.nReadBlocks, | |||
891 | self.processingHeaderObj.dataBlocksPerFile, |
|
893 | self.processingHeaderObj.dataBlocksPerFile, | |
892 | self.dataOut.datatime.ctime()) |
|
894 | self.dataOut.datatime.ctime()) | |
893 | return 1 |
|
895 | return 1 | |
@@ -1043,17 +1045,31 class JRODataReader(JRODataIO): | |||||
1043 | continue |
|
1045 | continue | |
1044 |
|
1046 | |||
1045 | for match in matchlist: |
|
1047 | for match in matchlist: | |
1046 | pathList.append(os.path.join(single_path,match,expLabel)) |
|
1048 | ||
|
1049 | datapath = os.path.join(single_path, match, expLabel) | |||
|
1050 | fileList = glob.glob1(datapath, "*"+ext) | |||
|
1051 | ||||
|
1052 | if len(fileList) < 1: | |||
|
1053 | continue | |||
|
1054 | ||||
|
1055 | pathList.append(datapath) | |||
1047 | dateList.append(thisDate) |
|
1056 | dateList.append(thisDate) | |
1048 |
|
1057 | |||
1049 | thisDate += datetime.timedelta(1) |
|
1058 | thisDate += datetime.timedelta(1) | |
1050 | else: |
|
1059 | else: | |
1051 | for thisDir in dirList: |
|
1060 | for thisDir in dirList: | |
|
1061 | ||||
|
1062 | datapath = os.path.join(single_path, thisDir, expLabel) | |||
|
1063 | fileList = glob.glob1(datapath, "*"+ext) | |||
|
1064 | ||||
|
1065 | if len(fileList) < 1: | |||
|
1066 | continue | |||
|
1067 | ||||
1052 | year = int(thisDir[1:5]) |
|
1068 | year = int(thisDir[1:5]) | |
1053 | doy = int(thisDir[5:8]) |
|
1069 | doy = int(thisDir[5:8]) | |
1054 | thisDate = datetime.date(year,1,1) + datetime.timedelta(doy-1) |
|
1070 | thisDate = datetime.date(year,1,1) + datetime.timedelta(doy-1) | |
1055 |
|
1071 | |||
1056 |
pathList.append( |
|
1072 | pathList.append(datapath) | |
1057 | dateList.append(thisDate) |
|
1073 | dateList.append(thisDate) | |
1058 |
|
1074 | |||
1059 | return dateList |
|
1075 | return dateList | |
@@ -1142,7 +1158,7 class JRODataReader(JRODataIO): | |||||
1142 |
|
1158 | |||
1143 | sys.exit(-1) |
|
1159 | sys.exit(-1) | |
1144 |
|
1160 | |||
1145 | self.getBasicHeader() |
|
1161 | # self.getBasicHeader() | |
1146 |
|
1162 | |||
1147 | if last_set != None: |
|
1163 | if last_set != None: | |
1148 | self.dataOut.last_block = last_set * self.processingHeaderObj.dataBlocksPerFile + self.basicHeaderObj.dataBlock |
|
1164 | self.dataOut.last_block = last_set * self.processingHeaderObj.dataBlocksPerFile + self.basicHeaderObj.dataBlock | |
@@ -1198,11 +1214,9 class JRODataReader(JRODataIO): | |||||
1198 | def printNumberOfBlock(self): |
|
1214 | def printNumberOfBlock(self): | |
1199 |
|
1215 | |||
1200 | if self.flagIsNewBlock: |
|
1216 | if self.flagIsNewBlock: | |
1201 |
print "[Reading] Block No. %d/%d -> %s" %(self. |
|
1217 | print "[Reading] Block No. %d/%d -> %s" %(self.nReadBlocks, | |
1202 | self.processingHeaderObj.dataBlocksPerFile, |
|
1218 | self.processingHeaderObj.dataBlocksPerFile, | |
1203 | self.dataOut.datatime.ctime()) |
|
1219 | self.dataOut.datatime.ctime()) | |
1204 |
|
||||
1205 | self.dataOut.blocknow = self.basicHeaderObj.dataBlock |
|
|||
1206 |
|
1220 | |||
1207 | def printInfo(self): |
|
1221 | def printInfo(self): | |
1208 |
|
1222 | |||
@@ -1246,6 +1260,8 class JRODataWriter(JRODataIO): | |||||
1246 |
|
1260 | |||
1247 | nWriteBlocks = 0 |
|
1261 | nWriteBlocks = 0 | |
1248 |
|
1262 | |||
|
1263 | fileDate = None | |||
|
1264 | ||||
1249 | def __init__(self, dataOut=None): |
|
1265 | def __init__(self, dataOut=None): | |
1250 | raise ValueError, "Not implemented" |
|
1266 | raise ValueError, "Not implemented" | |
1251 |
|
1267 | |||
@@ -1303,7 +1319,7 class JRODataWriter(JRODataIO): | |||||
1303 |
|
1319 | |||
1304 | self.basicHeaderObj.size = self.basicHeaderSize #bytes |
|
1320 | self.basicHeaderObj.size = self.basicHeaderSize #bytes | |
1305 | self.basicHeaderObj.version = self.versionFile |
|
1321 | self.basicHeaderObj.version = self.versionFile | |
1306 |
self.basicHeaderObj.dataBlock = self. |
|
1322 | self.basicHeaderObj.dataBlock = self.nTotalBlocks | |
1307 |
|
1323 | |||
1308 | utc = numpy.floor(self.dataOut.utctime) |
|
1324 | utc = numpy.floor(self.dataOut.utctime) | |
1309 | milisecond = (self.dataOut.utctime - utc)* 1000.0 |
|
1325 | milisecond = (self.dataOut.utctime - utc)* 1000.0 | |
@@ -1389,7 +1405,8 class JRODataWriter(JRODataIO): | |||||
1389 |
|
1405 | |||
1390 | self.writeBlock() |
|
1406 | self.writeBlock() | |
1391 |
|
1407 | |||
1392 |
print "[Writing] Block No. %d/%d" %(self.blockIndex, |
|
1408 | print "[Writing] Block No. %d/%d" %(self.blockIndex, | |
|
1409 | self.processingHeaderObj.dataBlocksPerFile) | |||
1393 |
|
1410 | |||
1394 | return 1 |
|
1411 | return 1 | |
1395 |
|
1412 | |||
@@ -1418,9 +1435,11 class JRODataWriter(JRODataIO): | |||||
1418 | subfolder = 'd%4.4d%3.3d' % (timeTuple.tm_year,timeTuple.tm_yday) |
|
1435 | subfolder = 'd%4.4d%3.3d' % (timeTuple.tm_year,timeTuple.tm_yday) | |
1419 |
|
1436 | |||
1420 | fullpath = os.path.join( path, subfolder ) |
|
1437 | fullpath = os.path.join( path, subfolder ) | |
|
1438 | setFile = self.setFile | |||
|
1439 | ||||
1421 | if not( os.path.exists(fullpath) ): |
|
1440 | if not( os.path.exists(fullpath) ): | |
1422 | os.mkdir(fullpath) |
|
1441 | os.mkdir(fullpath) | |
1423 |
|
|
1442 | setFile = -1 #inicializo mi contador de seteo | |
1424 | else: |
|
1443 | else: | |
1425 | filesList = os.listdir( fullpath ) |
|
1444 | filesList = os.listdir( fullpath ) | |
1426 | if len( filesList ) > 0: |
|
1445 | if len( filesList ) > 0: | |
@@ -1430,20 +1449,20 class JRODataWriter(JRODataIO): | |||||
1430 | # 0 1234 567 89A BCDE (hex) |
|
1449 | # 0 1234 567 89A BCDE (hex) | |
1431 | # x YYYY DDD SSS .ext |
|
1450 | # x YYYY DDD SSS .ext | |
1432 | if isNumber( filen[8:11] ): |
|
1451 | if isNumber( filen[8:11] ): | |
1433 |
|
|
1452 | setFile = int( filen[8:11] ) #inicializo mi contador de seteo al seteo del ultimo file | |
1434 | else: |
|
1453 | else: | |
1435 |
|
|
1454 | setFile = -1 | |
1436 | else: |
|
1455 | else: | |
1437 |
|
|
1456 | setFile = -1 #inicializo mi contador de seteo | |
1438 |
|
|
1457 | ||
1439 | setFile = self.setFile |
|
|||
1440 | setFile += 1 |
|
1458 | setFile += 1 | |
|
1459 | ||||
|
1460 | #If this is a new day it resets some values | |||
|
1461 | if self.dataOut.datatime.date() > self.fileDate: | |||
|
1462 | setFile = 0 | |||
|
1463 | self.nTotalBlocks = 0 | |||
1441 |
|
1464 | |||
1442 | filen = '%s%4.4d%3.3d%3.3d%s' % (self.optchar, |
|
1465 | filen = '%s%4.4d%3.3d%3.3d%s' % (self.optchar, timeTuple.tm_year, timeTuple.tm_yday, setFile, ext ) | |
1443 | timeTuple.tm_year, |
|
|||
1444 | timeTuple.tm_yday, |
|
|||
1445 | setFile, |
|
|||
1446 | ext ) |
|
|||
1447 |
|
1466 | |||
1448 | filename = os.path.join( path, subfolder, filen ) |
|
1467 | filename = os.path.join( path, subfolder, filen ) | |
1449 |
|
1468 | |||
@@ -1457,6 +1476,7 class JRODataWriter(JRODataIO): | |||||
1457 | self.fp = fp |
|
1476 | self.fp = fp | |
1458 | self.setFile = setFile |
|
1477 | self.setFile = setFile | |
1459 | self.flagIsNewFile = 1 |
|
1478 | self.flagIsNewFile = 1 | |
|
1479 | self.fileDate = self.dataOut.datatime.date() | |||
1460 |
|
1480 | |||
1461 | self.setFirstHeader() |
|
1481 | self.setFirstHeader() | |
1462 |
|
1482 | |||
@@ -1466,7 +1486,7 class JRODataWriter(JRODataIO): | |||||
1466 |
|
1486 | |||
1467 | return 1 |
|
1487 | return 1 | |
1468 |
|
1488 | |||
1469 |
def setup(self, dataOut, path, blocksPerFile, profilesPerBlock=64, set= |
|
1489 | def setup(self, dataOut, path, blocksPerFile, profilesPerBlock=64, set=None, ext=None, datatype=4): | |
1470 | """ |
|
1490 | """ | |
1471 | Setea el tipo de formato en la cual sera guardada la data y escribe el First Header |
|
1491 | Setea el tipo de formato en la cual sera guardada la data y escribe el First Header | |
1472 |
|
1492 | |||
@@ -1490,20 +1510,21 class JRODataWriter(JRODataIO): | |||||
1490 | if ext == None: |
|
1510 | if ext == None: | |
1491 | ext = self.ext |
|
1511 | ext = self.ext | |
1492 |
|
1512 | |||
1493 | ext = ext.lower() |
|
1513 | self.ext = ext.lower() | |
1494 |
|
||||
1495 | self.ext = ext |
|
|||
1496 |
|
1514 | |||
1497 | self.path = path |
|
1515 | self.path = path | |
1498 |
|
1516 | |||
1499 | self.setFile = set - 1 |
|
1517 | if set is None: | |
|
1518 | self.setFile = -1 | |||
|
1519 | else: | |||
|
1520 | self.setFile = set - 1 | |||
1500 |
|
1521 | |||
1501 | self.blocksPerFile = blocksPerFile |
|
1522 | self.blocksPerFile = blocksPerFile | |
1502 |
|
1523 | |||
1503 | self.profilesPerBlock = profilesPerBlock |
|
1524 | self.profilesPerBlock = profilesPerBlock | |
1504 |
|
1525 | |||
1505 | self.dataOut = dataOut |
|
1526 | self.dataOut = dataOut | |
1506 |
|
1527 | self.fileDate = self.dataOut.datatime.date() | ||
1507 | #By default |
|
1528 | #By default | |
1508 | self.dtype = self.dataOut.dtype |
|
1529 | self.dtype = self.dataOut.dtype | |
1509 |
|
1530 |
General Comments 0
You need to be logged in to leave comments.
Login now