Public Member Functions |
| void | SetHeaderModulationAndCodingScheme (ModulationAndCodingType mcs) |
|
ModulationAndCodingType | GetHeaderModulationAndCodingScheme (void) |
|
void | SetPayloadModulationAndCodingScheme (ModulationAndCodingType mcs) |
|
ModulationAndCodingType | GetPayloadModulationAndCodingScheme (void) |
| size_t | GetOfdmSymbolsPerCodeBlock (void) |
|
void | EndRxHeader (Ptr< SpectrumValue > &rxPsd, Ptr< const PLC_TrxMetaInfo > metaInfo) |
|
void | EndRxPayload (Ptr< const PLC_TrxMetaInfo > metaInfo) |
|
void | ReceptionFailure (void) |
|
void | SendFrame (Ptr< Packet > p, Ptr< PLC_TrxMetaInfo > metaInfo) |
|
virtual void | PreambleDetectionSuccessful (Ptr< const Packet > p, uint32_t txId, Ptr< SpectrumValue > &rxPsd, Time duration, Ptr< const PLC_TrxMetaInfo > metaInfo) |
Static Public Member Functions |
|
static TypeId | GetTypeId (void) |
| static void | SetOfdmSymbolsPerCodeBlock (size_t spb) |
| static void | SetRatelessCodingOverhead (double overhead) |
|
static double | GetRatelessCodingOverhead (void) |
Protected Member Functions |
|
virtual void | DoStart (void) |
|
virtual void | DoDispose (void) |
|
virtual void | DoSetNoiseFloor (Ptr< const SpectrumValue > noiseFloor) |
|
virtual bool | DoStartTx (Ptr< Packet > p) |
|
virtual void | DoStartRx (Ptr< const Packet > p, uint32_t txId, Ptr< SpectrumValue > &rxPsd, Time duration, Ptr< const PLC_TrxMetaInfo > metaInfo) |
|
virtual void | DoUpdateRxPsd (uint32_t txId, Ptr< SpectrumValue > newRxPsd) |
|
virtual void | StartReception (Ptr< const Packet > p, uint32_t txId, Ptr< SpectrumValue > &rxPsd, Time duration, Ptr< const PLC_TrxMetaInfo > metaInfo) |
|
virtual void | NotifySuccessfulReception (void) |
|
Ptr< Packet > | CreateEncodedPacket (Ptr< PLC_TrxMetaInfo > metaInfo) |
|
Ptr< Packet > | CreateFixedRateEncodedPacket (Ptr< PLC_TrxMetaInfo > metaInfo) |
|
Ptr< Packet > | CreateRatelessEncodedPacket (Ptr< PLC_TrxMetaInfo > metaInfo) |
|
PLC_PhyCcaResult | ClearChannelAssessment (void) |
|
size_t | RequiredChunks (size_t num_blocks) |
|
size_t | ChunksInByte (size_t num_chunks, size_t raw_bits_per_symbol) |
Protected Attributes |
|
Ptr< PLC_InformationRateModel > | m_information_rate_model |
|
ModulationAndCodingType | m_header_mcs |
|
ModulationAndCodingType | m_payload_mcs |
Static Protected Attributes |
|
static size_t | modulation_symbols_per_code_block = 1 |
|
static double | rateless_coding_overhead = 0.2 |
Simple implementation of a half duplex phy using the information rate model