TestSChain.py
97 lines
| 3.4 KiB
| text/x-python
|
PythonLexer
/ schainpy / TestSChain.py
|
r20 | ''' | |
Created on 23/01/2012 | |||
@author $Author$ | |||
@version $Id$ | |||
''' | |||
import os, sys | |||
import time, datetime | |||
from Model.Voltage import Voltage | |||
|
r23 | from IO.VoltageIO import * | |
|
r20 | from Graphics.VoltagePlot import Osciloscope | |
|
r25 | from Model.Spectra import Spectra | |
from IO.SpectraIO import * | |||
from Graphics.SpectraPlot import Spectrum | |||
|
r20 | class TestSChain(): | |
def __init__(self): | |||
self.setValues() | |||
self.createObjects() | |||
|
r55 | self.setupObjects() | |
|
r20 | self.testSChain() | |
pass | |||
def setValues(self): | |||
self.path = '/home/roj-idl71/Data/RAWDATA/DP_Faraday/' | |||
|
r22 | self.path = '/Users/danielangelsuarezmunoz/Documents/Projects/testWR' | |
|
r23 | self.path = '/home/roj-idl71/Data/RAWDATA/IMAGING' | |
|
r55 | #self.path = '/remote/puma/2011_08/E-F_Valley' | |
#self.path = '/remote/puma/2011_12/EEJ+150km+ONAXIS+ESF+Twilight/Twilight/' | |||
self.path = '/home/roj-idl71/tmp/data/' | |||
|
r23 | ||
self.ppath = "/home/roj-idl71/tmp/data" | |||
|
r55 | self.startDateTime = datetime.datetime(2011,1,31,0,20,0) | |
self.endDateTime = datetime.datetime(2011,12,5,18,10,0) | |||
|
r20 | ||
def createObjects(self): | |||
|
r55 | ||
# self.Obj = Voltage() | |||
# self.readerObj = VoltageReader(self.Obj) | |||
# self.plotObj = Osciloscope(self.Obj) | |||
# self.writerObj = VoltageWriter(self.Obj) | |||
|
r25 | self.Obj = Spectra() | |
self.readerObj = SpectraReader(self.Obj) | |||
self.plotObj = Spectrum(self.Obj) | |||
# self.writerObj = SpectraWriter(self.Obj) | |||
|
r55 | ||
def setupObjects(self): | |||
|
r20 | ||
|
r55 | if not(self.readerObj.setup(self.path, self.startDateTime, self.endDateTime, expLabel='', online = 0)): | |
|
r23 | sys.exit(0) | |
|
r55 | ||
print "Parameters:" | |||
print "Num profiles: %s" %(self.readerObj.m_SystemHeader.numProfiles) | |||
print "Num samples: %s" %(self.readerObj.m_SystemHeader.numSamples) | |||
print "Num channels: %s" %(self.readerObj.m_SystemHeader.numChannels) | |||
print "Num profiles per block: %s" %(self.readerObj.m_ProcessingHeader.profilesPerBlock) | |||
print "Num heights: %s" %(self.readerObj.m_ProcessingHeader.numHeights) | |||
print "Num coh int: %s" %(self.readerObj.m_ProcessingHeader.coherentInt) | |||
print "Num incoh int: %s" %(self.readerObj.m_ProcessingHeader.incoherentInt) | |||
print "Num code: %d" %(self.readerObj.m_ProcessingHeader.numCode) | |||
print "Num baud: %d" %(self.readerObj.m_ProcessingHeader.numBaud) | |||
|
r25 | # if not(self.writerObj.setup(self.ppath)): | |
# sys.exit(0) | |||
|
r20 | ||
def testSChain(self): | |||
|
r23 | ini = time.time() | |
|
r20 | while(True): | |
self.readerObj.getData() | |||
|
r26 | self.plotObj.plotData(zmin=40, zmax=140, showColorbar=True, showPowerProfile=True) | |
|
r55 | #self.plotObj.plotData(idProfile=1, type="power") | |
|
r23 | # self.writerObj.putData() | |
|
r20 | if self.readerObj.noMoreFiles: | |
break | |||
|
r23 | ||
if self.readerObj.flagIsNewBlock: | |||
|
r89 | print 'Block No %04d, Time: %s' %(self.readerObj.nTotalBlocks, | |
|
r23 | datetime.datetime.fromtimestamp(self.readerObj.m_BasicHeader.utc),) | |
fin = time.time() | |||
print 'Tiempo de un bloque leido y escrito: [%6.5f]' %(fin - ini) | |||
|
r25 | ini = time.time() | |
|
r23 | ||
|
r25 | #time.sleep(0.5) | |
|
r20 | self.plotObj.end() | |
if __name__ == '__main__': | |||
TestSChain() |