A Discrete-Event Network Simulator
API
ns3::LteChunkProcessor Class Reference

This abstract class is used to process the time-vs-frequency SINR/interference/power chunk of a received LTE signal which was calculated by the LteInterference object. More...

#include "lte-chunk-processor.h"

+ Inheritance diagram for ns3::LteChunkProcessor:
+ Collaboration diagram for ns3::LteChunkProcessor:

Public Member Functions

 LteChunkProcessor ()
 
virtual ~LteChunkProcessor ()
 
virtual void AddCallback (LteChunkProcessorCallback c)
 Add callback to list. More...
 
virtual void End ()
 Finish calculation and inform interested objects about calculated value. More...
 
virtual void EvaluateChunk (const SpectrumValue &sinr, Time duration)
 Collect SpectrumValue and duration of signal. More...
 
virtual void Start ()
 Clear internal variables. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< LteChunkProcessor >
 SimpleRefCount ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o[[maybe_unused]])
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= ([[maybe_unused]] const SimpleRefCount &o)
 Assignment operator. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Private Attributes

std::vector< LteChunkProcessorCallbackm_lteChunkProcessorCallbacks
 chunk processor callback More...
 
Ptr< SpectrumValuem_sumValues
 sum values More...
 
Time m_totDuration
 total duration More...
 

Detailed Description

This abstract class is used to process the time-vs-frequency SINR/interference/power chunk of a received LTE signal which was calculated by the LteInterference object.

Definition at line 46 of file lte-chunk-processor.h.

Constructor & Destructor Documentation

◆ LteChunkProcessor()

ns3::LteChunkProcessor::LteChunkProcessor ( )

Definition at line 32 of file lte-chunk-processor.cc.

References NS_LOG_FUNCTION.

◆ ~LteChunkProcessor()

ns3::LteChunkProcessor::~LteChunkProcessor ( )
virtual

Definition at line 37 of file lte-chunk-processor.cc.

References NS_LOG_FUNCTION.

Member Function Documentation

◆ AddCallback()

void ns3::LteChunkProcessor::AddCallback ( LteChunkProcessorCallback  c)
virtual

Add callback to list.

This function adds callback c to list. Each callback pass calculated value to its object and is called in LteChunkProcessor::End().

Parameters
ccallback function

Definition at line 43 of file lte-chunk-processor.cc.

References m_lteChunkProcessorCallbacks, and NS_LOG_FUNCTION.

Referenced by LteDownlinkPowerControlTestCase::DoRun(), LteDownlinkDataSinrTestCase::DoRun(), LteDownlinkCtrlSinrTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteUplinkDataSinrTestCase::DoRun(), and LteUplinkSrsSinrTestCase::DoRun().

+ Here is the caller graph for this function:

◆ End()

void ns3::LteChunkProcessor::End ( void  )
virtual

Finish calculation and inform interested objects about calculated value.

During this function all callbacks from list are executed to inform interested object about calculated value. This function is called at the end of calculation.

Definition at line 71 of file lte-chunk-processor.cc.

References ns3::Time::GetSeconds(), m_lteChunkProcessorCallbacks, m_totDuration, NS_LOG_FUNCTION, and NS_LOG_WARN.

+ Here is the call graph for this function:

◆ EvaluateChunk()

void ns3::LteChunkProcessor::EvaluateChunk ( const SpectrumValue sinr,
Time  duration 
)
virtual

Collect SpectrumValue and duration of signal.

Passed values are collected in m_sumValues and m_totDuration variables.

Parameters
sinrthe SINR
durationthe duration

Definition at line 59 of file lte-chunk-processor.cc.

References ns3::Time::GetSeconds(), ns3::SpectrumValue::GetSpectrumModel(), m_sumValues, m_totDuration, and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

◆ Start()

void ns3::LteChunkProcessor::Start ( void  )
virtual

Clear internal variables.

This function clears internal variables in the beginning of calculation

Definition at line 50 of file lte-chunk-processor.cc.

References m_sumValues, m_totDuration, ns3::MicroSeconds(), and NS_LOG_FUNCTION.

+ Here is the call graph for this function:

Member Data Documentation

◆ m_lteChunkProcessorCallbacks

std::vector<LteChunkProcessorCallback> ns3::LteChunkProcessor::m_lteChunkProcessorCallbacks
private

chunk processor callback

Definition at line 94 of file lte-chunk-processor.h.

Referenced by AddCallback(), and End().

◆ m_sumValues

Ptr<SpectrumValue> ns3::LteChunkProcessor::m_sumValues
private

sum values

Definition at line 91 of file lte-chunk-processor.h.

Referenced by EvaluateChunk(), and Start().

◆ m_totDuration

Time ns3::LteChunkProcessor::m_totDuration
private

total duration

Definition at line 92 of file lte-chunk-processor.h.

Referenced by End(), EvaluateChunk(), and Start().


The documentation for this class was generated from the following files: