pub trait Modulation: 'static {
type T: ChannelType;
type Modulator: Modulator<T = Self::T>;
type Demodulator: Demodulator<T = Self::T>;
const BITS_PER_SYMBOL: f64;
}
Expand description
Modulation.
This trait is used to define the modulations that can be handled by the simulation. It ties together a modulator and demodulator that work over the same channel type (either real or complex), and declares the number of bits per symbol of the modulation.
Required Associated Constants§
Sourceconst BITS_PER_SYMBOL: f64
const BITS_PER_SYMBOL: f64
Number of bits per symbol.
Required Associated Types§
Sourcetype T: ChannelType
type T: ChannelType
Channel type.
This is the scalar type for the symbols of the channel.
Sourcetype Demodulator: Demodulator<T = Self::T>
type Demodulator: Demodulator<T = Self::T>
Demodulator type.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.