Receiver¶

- class Receiver(seed=None, selected_receive_ports=None, carrier_frequency=None)[source]¶
Bases:
Generic
[ReceptionType
],RandomNode
,MixingOperator
Operator receiving from a device.
- Parameters:
seed (
int
|None
) – Random seed used to initialize the pseudo-random number generator.selected_receive_ports (
Sequence
[int
] |None
) – Indices of antenna ports selected for reception from the operatedDevice's
antenna array. If not specified, all available antenna ports will be considered.carrier_frequency (
float
|None
) – Central frequency of the mixed signal in radio-frequency transmission band. If not specified, the operated device’s default carrier frequency will be assumed during signal processing.
- abstract _receive(signal, state)[source]¶
Process a received signal by the receiver.
Subroutine of the public
receive
method that performs the pipeline-specific receive processing and consolidates the inferred information into a singleReception
object.- Parameters:
signal (
Signal
) – Multi-stream signal model to be processed.state (
ReceiveState
) – Device state to be considered during reception.
- Return type:
- Returns:
Information inferred from the received signal.
- add_receive_callback(callback)[source]¶
Add a callback to be called after processing the receive DSP algorithm.
- Parameters:
callback (
Callable
[[TypeVar
(ReceptionType
, bound=Reception
)],None
]) – Function to be called after processing the receive DSP algorithm. The receive output is passed as the only argument.- Return type:
Returns: Hook to be used for removal.
- receive(signal, state, notify=True)[source]¶
Process a received signal by the receiver.
Wrapper around the abstract
_receive
method.- Parameters:
signal (
Signal
) – Model of the signal samples to be processed by the DSP algorithm.state (
DeviceState
) – State of the receiving device to be conmsidered by the DSP algorithm.notify (
bool
) – Notify the receiver’s callbacks. Enabled by default.
- Return type:
Returns: Information received by this operator.
- Raises:
ValueError – If the number of signal streams does not match the number of receive ports.
- serialize(process)[source]¶
Serialize this object’s state.
Objects cannot be serialized directly, instead a
Factory
must be instructed to carry out the serialization process.- Parameters:
process (
SerializationProcess
) – The current stage of the serialization process. This object is generated by theFactory
and provides an interface to serialization methods supporting multiple backends.- Return type: