Extra Operators

Inheritance diagram of hermespy.core.operators.SilentTransmitter, hermespy.core.operators.SignalTransmitter, hermespy.core.operators.SignalReceiver, hermespy.core.operators.StaticOperator

This module contains convenience transmit and receive signal processing layers used primarily for debugging and trouble shooting.

class SilentTransmitter(num_samples, sampling_rate, *args, **kwargs)[source]

Bases: StaticOperator, Transmitter[Transmission], Serializable

Silent transmitter mock.

Parameters:
  • num_samples (int) – Number of samples per transmission.

  • sampling_rate (float) – Sampling rate of transmission.

classmethod Deserialize(process)[source]

Deserialize an object’s state.

Objects cannot be deserialized directly, instead a Factory must be instructed to carry out the deserialization process.

Parameters:

process (DeserializationProcess) – The current stage of the deserialization process. This object is generated by the Factory and provides an interface to deserialization methods supporting multiple backends.

Return type:

SilentTransmitter

Returns:

The deserialized object.

property power: float

Expected power of the transmitted signal in Watts.

Note

Applies only to the signal-carrying parts of the transmission, silent parts shuch as guard intervals should not be considered.

serialized_attributes = {'num_samples', 'sampling_rate'}
class SignalTransmitter(signal, *args, **kwargs)[source]

Bases: StaticOperator, Transmitter[Transmission], Serializable

Custom signal transmitter.

Parameters:

signal (Signal) – Signal to be transmittered by the static operator for each transmission.

classmethod Deserialize(process)[source]

Deserialize an object’s state.

Objects cannot be deserialized directly, instead a Factory must be instructed to carry out the deserialization process.

Parameters:

process (DeserializationProcess) – The current stage of the deserialization process. This object is generated by the Factory and provides an interface to deserialization methods supporting multiple backends.

Return type:

SignalTransmitter

Returns:

The deserialized object.

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 the Factory and provides an interface to serialization methods supporting multiple backends.

Return type:

None

property power: float

Expected power of the transmitted signal in Watts.

Note

Applies only to the signal-carrying parts of the transmission, silent parts shuch as guard intervals should not be considered.

property signal: Signal

Signal to be transmitted by the static operator for each transmission.

class SignalReceiver(num_samples, sampling_rate, expected_power=0.0, *args, **kwargs)[source]

Bases: StaticOperator, Receiver[Reception], Serializable

Custom signal receiver.

Parameters:
  • num_samples (int) – Number of samples per transmission.

  • sampling_rate (float) – Sampling rate of transmission.

classmethod Deserialize(process)[source]

Deserialize an object’s state.

Objects cannot be deserialized directly, instead a Factory must be instructed to carry out the deserialization process.

Parameters:

process (DeserializationProcess) – The current stage of the deserialization process. This object is generated by the Factory and provides an interface to deserialization methods supporting multiple backends.

Return type:

SignalReceiver

Returns:

The deserialized object.

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 the Factory and provides an interface to serialization methods supporting multiple backends.

Return type:

None

property energy: float
property power: float

Expected power of the received signal in Watts.

Note

Applies only to the signal-carrying parts of the transmission, silent parts shuch as guard intervals should not be considered.

class StaticOperator(num_samples, sampling_rate)[source]

Bases: object

Base class for static device operators

Parameters:
  • num_samples (int) – Number of samples per transmission.

  • sampling_rate (float) – Sampling rate of transmission.

serialize(process)[source]
Return type:

None

property frame_duration: float
property num_samples: int

Number of samples per transmission.

Returns: Number of samples.

property sampling_rate: float