From 6ac7b61fe080eeb8644dd5b9d45eeac8af4b1876 Mon Sep 17 00:00:00 2001 From: mancini <mancini@astron.nl> Date: Mon, 11 Nov 2019 11:44:57 +0100 Subject: [PATCH] SSB-47: Reformat and rename --- .../lib/datacontainers/calibration_table.py | 25 ++++++++++--------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/CAL/CalibrationCommon/lib/datacontainers/calibration_table.py b/CAL/CalibrationCommon/lib/datacontainers/calibration_table.py index f0c2419c943..de991e9155d 100644 --- a/CAL/CalibrationCommon/lib/datacontainers/calibration_table.py +++ b/CAL/CalibrationCommon/lib/datacontainers/calibration_table.py @@ -9,7 +9,7 @@ from typing import List from dataclasses import dataclass, asdict, field from h5py import File -from numpy import empty as empty_ndarray, ndarray, fromiter as array_from_iter, float64,\ +from numpy import empty as empty_ndarray, ndarray, fromiter as array_from_iter, float64, \ array_equal, arange, array from copy import deepcopy @@ -61,6 +61,7 @@ class CalibrationTable: observation_antennaset: str = '' observation_band: str = '' + @staticmethod def load_from_file(file_path): logger.info('loading file %s', file_path) @@ -177,6 +178,16 @@ class CalibrationTable: raise InvalidFileException('empty header') return header + def _parse_header(self): + self.observation_mode = int(self.observation_mode) + self.calibration_version = int(self.calibration_version) + if isinstance(self.calibration_ppsdelay, str): + self.calibration_ppsdelay = list(map(int, self.calibration_ppsdelay. + lstrip('['). + rstrip(']'). + strip(). + split(' '))) + @staticmethod def _parse_data(data_buffer: bytes): data = array_from_iter(map(lambda x: x[0], iter_unpack('d', data_buffer)), dtype=float) @@ -196,18 +207,8 @@ class CalibrationTable: return complex_data - def _parse_attributes(self): - self.observation_mode = int(self.observation_mode) - self.calibration_version = int(self.calibration_version) - if isinstance(self.calibration_ppsdelay, str): - self.calibration_ppsdelay = list(map(int, self.calibration_ppsdelay. - lstrip('['). - rstrip(']'). - strip(). - split(' '))) - def __post_init__(self): - self._parse_attributes() + self._parse_header() def __eq__(self, other): return super().__eq__(other) and array_equal(self.data, other.data) -- GitLab