Module pyspecan.model.sink.sink
Functions
def args_sink(parser)-
Expand source code
def args_sink(parser): parser.add_argument("-fs", "--Fs", default=SinkConfig.Fs, type="frequency", help="sample rate") parser.add_argument("-cf", "--cf", default=SinkConfig.cf, type="frequency", help="center frequency")
Classes
class Sink (model, **kwargs)-
Expand source code
class Sink: __slots__ = ( "log", "model", "_samples", "_cf", "_Fs" ) def __init__(self, model, **kwargs): self.log = logger.new(f"model.{type(self).__name__}") self.model = model self._cf: Frequency = Frequency.get(kwargs.get("cf", SinkConfig.cf)) self._Fs: Frequency = Frequency.get(kwargs.get("Fs", SinkConfig.Fs)) self._samples = np.empty((), dtype=np.complex64) def reset(self): self._samples = np.empty(self.model.mode.get_block_size(), dtype=np.complex64) @property def samples(self): return self._samples def show(self, ind=0): raise NotImplementedError() def set_fs(self, fs): self.log.debug("set_fs(%s)", fs) if isinstance(fs, str): fs = Frequency.get(fs).raw fs = self._set_fs(fs) self._Fs = Frequency.get(fs) self.model.f = self.model.update_f() def get_fs(self): return self._Fs def set_cf(self, cf): self.log.debug("set_cf(%s)", cf) if isinstance(cf, str): cf = Frequency.get(cf).raw cf = self._set_cf(cf) self._cf = Frequency.get(cf) self.model.f = self.model.update_f() def get_cf(self): return self._cf # --- Defined in child classes --- # def _set_fs(self, fs): raise NotImplementedError() def _set_cf(self, cf): raise NotImplementedError()Subclasses
Instance variables
var log-
Expand source code
class Sink: __slots__ = ( "log", "model", "_samples", "_cf", "_Fs" ) def __init__(self, model, **kwargs): self.log = logger.new(f"model.{type(self).__name__}") self.model = model self._cf: Frequency = Frequency.get(kwargs.get("cf", SinkConfig.cf)) self._Fs: Frequency = Frequency.get(kwargs.get("Fs", SinkConfig.Fs)) self._samples = np.empty((), dtype=np.complex64) def reset(self): self._samples = np.empty(self.model.mode.get_block_size(), dtype=np.complex64) @property def samples(self): return self._samples def show(self, ind=0): raise NotImplementedError() def set_fs(self, fs): self.log.debug("set_fs(%s)", fs) if isinstance(fs, str): fs = Frequency.get(fs).raw fs = self._set_fs(fs) self._Fs = Frequency.get(fs) self.model.f = self.model.update_f() def get_fs(self): return self._Fs def set_cf(self, cf): self.log.debug("set_cf(%s)", cf) if isinstance(cf, str): cf = Frequency.get(cf).raw cf = self._set_cf(cf) self._cf = Frequency.get(cf) self.model.f = self.model.update_f() def get_cf(self): return self._cf # --- Defined in child classes --- # def _set_fs(self, fs): raise NotImplementedError() def _set_cf(self, cf): raise NotImplementedError() var model-
Expand source code
class Sink: __slots__ = ( "log", "model", "_samples", "_cf", "_Fs" ) def __init__(self, model, **kwargs): self.log = logger.new(f"model.{type(self).__name__}") self.model = model self._cf: Frequency = Frequency.get(kwargs.get("cf", SinkConfig.cf)) self._Fs: Frequency = Frequency.get(kwargs.get("Fs", SinkConfig.Fs)) self._samples = np.empty((), dtype=np.complex64) def reset(self): self._samples = np.empty(self.model.mode.get_block_size(), dtype=np.complex64) @property def samples(self): return self._samples def show(self, ind=0): raise NotImplementedError() def set_fs(self, fs): self.log.debug("set_fs(%s)", fs) if isinstance(fs, str): fs = Frequency.get(fs).raw fs = self._set_fs(fs) self._Fs = Frequency.get(fs) self.model.f = self.model.update_f() def get_fs(self): return self._Fs def set_cf(self, cf): self.log.debug("set_cf(%s)", cf) if isinstance(cf, str): cf = Frequency.get(cf).raw cf = self._set_cf(cf) self._cf = Frequency.get(cf) self.model.f = self.model.update_f() def get_cf(self): return self._cf # --- Defined in child classes --- # def _set_fs(self, fs): raise NotImplementedError() def _set_cf(self, cf): raise NotImplementedError() prop samples-
Expand source code
@property def samples(self): return self._samples
Methods
def get_cf(self)-
Expand source code
def get_cf(self): return self._cf def get_fs(self)-
Expand source code
def get_fs(self): return self._Fs def reset(self)-
Expand source code
def reset(self): self._samples = np.empty(self.model.mode.get_block_size(), dtype=np.complex64) def set_cf(self, cf)-
Expand source code
def set_cf(self, cf): self.log.debug("set_cf(%s)", cf) if isinstance(cf, str): cf = Frequency.get(cf).raw cf = self._set_cf(cf) self._cf = Frequency.get(cf) self.model.f = self.model.update_f() def set_fs(self, fs)-
Expand source code
def set_fs(self, fs): self.log.debug("set_fs(%s)", fs) if isinstance(fs, str): fs = Frequency.get(fs).raw fs = self._set_fs(fs) self._Fs = Frequency.get(fs) self.model.f = self.model.update_f() def show(self, ind=0)-
Expand source code
def show(self, ind=0): raise NotImplementedError()
class SinkConfig-
Expand source code
class SinkConfig: Fs = 1 cf = 0Class variables
var Fsvar cf