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"
Public Member Functions | |
LteChunkProcessor () | |
virtual | ~LteChunkProcessor () |
virtual void | AddCallback (LteChunkProcessorCallback c) |
Add callback to list. | |
virtual void | End () |
Finish calculation and inform interested objects about calculated value. | |
virtual void | EvaluateChunk (const SpectrumValue &sinr, Time duration) |
Collect SpectrumValue and duration of signal. | |
virtual void | Start () |
Clear internal variables. | |
Public Member Functions inherited from ns3::SimpleRefCount< LteChunkProcessor > | |
SimpleRefCount () | |
Default constructor. | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. | |
uint32_t | GetReferenceCount () const |
Get the reference count of the object. | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment operator. | |
void | Ref () const |
Increment the reference count. | |
void | Unref () const |
Decrement the reference count. | |
Private Attributes | |
std::vector< LteChunkProcessorCallback > | m_lteChunkProcessorCallbacks |
chunk processor callback | |
Ptr< SpectrumValue > | m_sumValues |
sum values | |
Time | m_totDuration |
total duration | |
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 34 of file lte-chunk-processor.h.
ns3::LteChunkProcessor::LteChunkProcessor | ( | ) |
Definition at line 21 of file lte-chunk-processor.cc.
References NS_LOG_FUNCTION.
|
virtual |
Definition at line 26 of file lte-chunk-processor.cc.
References NS_LOG_FUNCTION.
|
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().
c | callback function |
Definition at line 32 of file lte-chunk-processor.cc.
References m_lteChunkProcessorCallbacks, and NS_LOG_FUNCTION.
|
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 59 of file lte-chunk-processor.cc.
References ns3::Time::GetSeconds(), m_lteChunkProcessorCallbacks, m_totDuration, NS_LOG_FUNCTION, and NS_LOG_WARN.
|
virtual |
Collect SpectrumValue and duration of signal.
Passed values are collected in m_sumValues and m_totDuration variables.
sinr | the SINR |
duration | the duration |
Definition at line 47 of file lte-chunk-processor.cc.
References ns3::Create(), ns3::Time::GetSeconds(), ns3::SpectrumValue::GetSpectrumModel(), m_sumValues, m_totDuration, and NS_LOG_FUNCTION.
|
virtual |
Clear internal variables.
This function clears internal variables in the beginning of calculation
Definition at line 39 of file lte-chunk-processor.cc.
References m_sumValues, m_totDuration, ns3::MicroSeconds(), and NS_LOG_FUNCTION.
|
private |
chunk processor callback
Definition at line 83 of file lte-chunk-processor.h.
Referenced by AddCallback(), and End().
|
private |
sum values
Definition at line 79 of file lte-chunk-processor.h.
Referenced by EvaluateChunk(), and Start().
|
private |
total duration
Definition at line 80 of file lte-chunk-processor.h.
Referenced by End(), EvaluateChunk(), and Start().