##// END OF EJS Templates
JROData.py...
JROData.py Se agrego e inicializo las variables heightList y channelList dentro de la clase

File last commit:

r73:ea60e7ccc5aa
r81:d69a019dbc20
Show More
TestSVoltageChain.py
101 lines | 3.1 KiB | text/x-python | PythonLexer
/ schainpy / TestSVoltageChain.py
Victor Sarmiento
r70 '''
Created on 27/03/2012
@author $Author$
@version $Id$
'''
import os, sys
import time, datetime
from Model.Voltage import Voltage
from IO.VoltageIO import *
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 #from Graphics.VoltagePlot import Osciloscope
from Model.Spectra import Spectra
from IO.SpectraIO import *
from Processing.VoltageProcessor import *
from Processing.SpectraProcessor import *
Victor Sarmiento
r70
class TestSChain():
def __init__(self):
self.setValues()
self.createObjects()
self.testSChain()
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73
Victor Sarmiento
r70
def setValues( self ):
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 self.path = "/home/dsuarez/Projects" #1
Victor Sarmiento
r70 #self.path = "/home/valentin/Tmp/VOLTAGE2" #2
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 # self.startDateTime = datetime.datetime(2007,5,1,15,49,0)
# self.endDateTime = datetime.datetime(2007,5,1,23,0,0)
self.startDateTime = datetime.datetime(2011,10,4,0,0,0)
self.endDateTime = datetime.datetime(2011,10,4,0,20,0)
self.N = 2
self.npts = 4
Victor Sarmiento
r70
def createObjects( self ):
self.Obj = Voltage()
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 self.OutObj = Voltage()
Victor Sarmiento
r70 self.readerObj = VoltageReader(self.Obj)
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 self.procObj = VoltageProcessor(self.Obj, self.OutObj)
self.spectraObj = Spectra()
self.specProcObj = SpectraProcessor(self.OutObj, self.spectraObj,self.npts)
#self.plotObj = Osciloscope(self.Obj)
Victor Sarmiento
r70
if not(self.readerObj.setup( self.path, self.startDateTime, self.endDateTime, expLabel='', online =0) ):
sys.exit(0)
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73
# if not(self.readerObj.setup(self.path, self.startDateTime, self.endDateTime)):
# sys.exit(0)
Victor Sarmiento
r70
def testSChain( self ):
ini = time.time()
while(True):
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 self.readerObj.getData()
Victor Sarmiento
r70
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 self.procObj.init()
Victor Sarmiento
r70
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 self.procObj.plotData(idProfile = 1, type='power',winTitle='figura 1')
self.procObj.decoder(type=0)
# self.procObj.plotData(idProfile = 1, type='iq', xmin=0, xmax=100,winTitle='figura 2')
#
# self.procObj.integrator(self.N)
self.procObj.plotData(idProfile = 1, type='power',winTitle='figura 3')
self.specProcObj.init()
self.specProcObj.integrator(2)
self.specProcObj.plotData(winTitle='Spectra 1', index=2)
# if self.readerObj.getData():
# self.plotObj.plotData(idProfile=0, type='power' )
#
#
# if self.readerObj.flagNoMoreFiles:
# break
#
Victor Sarmiento
r70 if self.readerObj.flagIsNewBlock:
print 'Block No %04d, Time: %s' %(self.readerObj.nReadBlocks,
datetime.datetime.fromtimestamp(self.readerObj.m_BasicHeader.utc),)
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73
Victor Sarmiento
r70 # fin = time.time()
# print 'Tiempo de un bloque leido y escrito: [%6.5f]' %(fin - ini)
# ini = time.time()
#time.sleep(0.5)
Daniel Valdez
Se ha definido que el arreglo de datos debe tener el formato [canales, perfiles, alturas]; se han modificado los metodos de lectura, escritura, ploteo, procesamiento que estan relacionados.
r73 # self.plotObj.end()
Victor Sarmiento
r70
if __name__ == '__main__':
TestSChain()