Replace RAOBSample with SoundingSample
This commit is contained in:
parent
e2f27b1470
commit
60bfe3fa09
1 changed files with 12 additions and 25 deletions
|
@ -13,27 +13,11 @@ CHUNK_STRIP_CHARS = "\x01\x03\x0a\x20"
|
|||
class RAOBReaderException(Exception):
|
||||
...
|
||||
|
||||
class RAOBSample():
|
||||
__slots__ = (
|
||||
'surface', 'height', 'pressure', 'temp', 'dewpoint',
|
||||
'wind_dir', 'wind_speed'
|
||||
)
|
||||
|
||||
def __init__(self):
|
||||
self.surface: bool = False
|
||||
self.height: float = None
|
||||
self.pressure: float = None
|
||||
self.temp: float = None
|
||||
self.dewpoint: float = None
|
||||
self.wind_dir: float = None
|
||||
self.wind_speed: float = None
|
||||
|
||||
class RAOBSounding():
|
||||
def __init__(self):
|
||||
self.timestamp: datetime.datetime = None
|
||||
self.station: int = None
|
||||
self.cur: RAOBSample = None
|
||||
self.samples: list[RAOBSample] = list()
|
||||
self.timestamp: datetime.datetime = None
|
||||
self.station: int = None
|
||||
self.samples: list[SoundingSample] = list()
|
||||
|
||||
class RAOBObs():
|
||||
def __init__(self, kind: str):
|
||||
|
@ -202,11 +186,11 @@ class RAOBObs():
|
|||
'pressure': float(pressure)
|
||||
}
|
||||
|
||||
def parse_sample_tokens(self, tokens: list[str]) -> RAOBSample:
|
||||
sample = RAOBSample()
|
||||
def parse_sample_tokens(self, tokens: list[str]) -> SoundingSample:
|
||||
sample = SoundingSample()
|
||||
|
||||
if tokens[0][0:2] == '99':
|
||||
sample.surface = True
|
||||
sample.elapsed = 0
|
||||
hp = self.parse_surface_pressure(tokens[0])
|
||||
else:
|
||||
hp = self.parse_height_pressure(tokens[0])
|
||||
|
@ -219,11 +203,15 @@ class RAOBObs():
|
|||
|
||||
sample.height = hp['height']
|
||||
sample.pressure = hp['pressure']
|
||||
sample.temp = td['temp'] if td is not None else None
|
||||
sample.dewpoint = td['dewpoint'] if td is not None else None
|
||||
sample.temp = td['temp'] if td is not None else None
|
||||
sample.dewpoint = td['dewpoint'] if td is not None else None
|
||||
sample.wind_dir = wind['dir'] if wind is not None else None
|
||||
sample.wind_speed = wind['speed'] if wind is not None else None
|
||||
|
||||
sample.pressure_qa = ' '
|
||||
sample.height_qa = ' '
|
||||
sample.temp_qa = ' '
|
||||
|
||||
return sample
|
||||
|
||||
def parse_ttaa(self) -> RAOBSounding:
|
||||
|
@ -311,7 +299,6 @@ class RAOBReader():
|
|||
def __init__(self, fh: io.TextIOBase):
|
||||
self.fh = fh
|
||||
self.soundings = dict()
|
||||
self.current = Sounding()
|
||||
|
||||
def parse_chunk(self, text: str) -> RAOBChunk:
|
||||
meta = {
|
||||
|
|
Loading…
Add table
Reference in a new issue