Source code for speasy.core.codecs.bundled_codecs.hapi.hapi_file

from typing import List,  Optional, Dict, Any
import logging

import numpy as np
log = logging.getLogger(__name__)

[docs] class HapiParameter: def __init__(self, values: np.ndarray, meta: Dict[str, Any]): self._meta = meta self._values = values @property def name(self): return self._meta["name"] @property def meta(self): return self._meta @property def values(self): return self._values
[docs] class HapiFile: def __init__(self): self._parameters: List[HapiParameter] = []
[docs] def create_parameter(self, values: np.ndarray, meta: Dict[str, Any])->HapiParameter: parameter = HapiParameter(values, meta) self._parameters.append(parameter) return parameter
[docs] def add_parameter(self, parameter: HapiParameter): self._parameters.append(parameter)
@property def time_axis(self): return self._parameters[0].values @property def time_axis_meta(self): return self._parameters[0].meta
[docs] def get_parameter(self, name: str) -> Optional[HapiParameter]: for par in self._parameters: if par.name == name: return par return None
@property def parameters(self): return self._parameters