this class implements a structure to compute the priority of service flows More...
#include <ul-job.h>
Public Types | |
enum | JobPriority { LOW, INTERMEDIATE, HIGH } |
Public Member Functions | |
UlJob (void) | |
virtual | ~UlJob (void) |
Time | GetDeadline (void) |
Time | GetPeriod (void) |
Time | GetReleaseTime (void) |
enum ServiceFlow::SchedulingType | GetSchedulingType (void) |
ServiceFlow * | GetServiceFlow (void) |
uint32_t | GetSize (void) |
SSRecord * | GetSsRecord (void) |
ReqType | GetType (void) |
void | SetDeadline (Time deadline) |
void | SetPeriod (Time period) |
void | SetReleaseTime (Time releaseTime) |
void | SetSchedulingType (ServiceFlow::SchedulingType schedulingType) |
void | SetServiceFlow (ServiceFlow *serviceFlow) |
void | SetSize (uint32_t size) |
void | SetSsRecord (SSRecord *ssRecord) |
void | SetType (ReqType type) |
![]() | |
Object () | |
virtual | ~Object () |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Start (void) |
![]() | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
![]() | |
virtual | ~ObjectBase () |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Private Attributes | |
Time | m_deadline |
uint8_t | m_flag |
int | m_jitterSamples |
double | m_last_jitterCalTime |
Time | m_period |
Time | m_releaseTime |
uint8_t | m_retryCount |
enum ServiceFlow::SchedulingType | m_schedulingType |
ServiceFlow * | m_serviceFlow |
uint32_t | m_size |
SSRecord * | m_ssRecord |
ReqType | m_type |
double | m_ugsJitter |
Friends | |
bool | operator== (const UlJob &a, const UlJob &b) |
Additional Inherited Members | |
![]() | |
static TypeId | GetTypeId (void) |
This method returns the TypeId associated to ns3::Object. | |
![]() | |
Object (const Object &o) | |
virtual void | DoDispose (void) |
virtual void | DoStart (void) |
virtual void | NotifyNewAggregate (void) |
this class implements a structure to compute the priority of service flows
Time ns3::UlJob::GetDeadline | ( | void | ) |
Definition at line 106 of file ul-job.cc.
References m_deadline.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline().
Time ns3::UlJob::GetPeriod | ( | void | ) |
Definition at line 95 of file ul-job.cc.
References m_period.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline().
Time ns3::UlJob::GetReleaseTime | ( | void | ) |
Definition at line 83 of file ul-job.cc.
References m_releaseTime.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline().
enum ServiceFlow::SchedulingType ns3::UlJob::GetSchedulingType | ( | void | ) |
Definition at line 47 of file ul-job.cc.
References m_schedulingType.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CheckMinimumBandwidth(), and ns3::UplinkSchedulerMBQoS::Schedule().
ServiceFlow * ns3::UlJob::GetServiceFlow | ( | void | ) |
Definition at line 71 of file ul-job.cc.
References m_serviceFlow.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CheckMinimumBandwidth(), ns3::UplinkSchedulerMBQoS::CountSymbolsJobs(), ns3::UplinkSchedulerMBQoS::GetPendingSize(), ns3::SortProcess::operator()(), ns3::operator==(), and ns3::UplinkSchedulerMBQoS::Schedule().
uint32_t ns3::UlJob::GetSize | ( | void | ) |
Definition at line 117 of file ul-job.cc.
References m_size.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::GetPendingSize(), and ns3::UplinkSchedulerMBQoS::Schedule().
SSRecord * ns3::UlJob::GetSsRecord | ( | void | ) |
Definition at line 36 of file ul-job.cc.
References m_ssRecord.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CountSymbolsJobs(), ns3::operator==(), and ns3::UplinkSchedulerMBQoS::Schedule().
ReqType ns3::UlJob::GetType | ( | void | ) |
Definition at line 59 of file ul-job.cc.
References m_type.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CountSymbolsJobs(), and ns3::UplinkSchedulerMBQoS::Schedule().
void ns3::UlJob::SetDeadline | ( | Time | deadline | ) |
Definition at line 111 of file ul-job.cc.
References m_deadline.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetPeriod | ( | Time | period | ) |
Definition at line 100 of file ul-job.cc.
References m_period.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetReleaseTime | ( | Time | releaseTime | ) |
Definition at line 89 of file ul-job.cc.
References m_releaseTime.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetSchedulingType | ( | ServiceFlow::SchedulingType | schedulingType | ) |
Definition at line 53 of file ul-job.cc.
References m_schedulingType.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CreateUlJob(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetServiceFlow | ( | ServiceFlow * | serviceFlow | ) |
Definition at line 77 of file ul-job.cc.
References m_serviceFlow.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CreateUlJob(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetSize | ( | uint32_t | size | ) |
Definition at line 123 of file ul-job.cc.
References m_size.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetSsRecord | ( | SSRecord * | ssRecord | ) |
Definition at line 41 of file ul-job.cc.
References m_ssRecord.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CreateUlJob(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
void ns3::UlJob::SetType | ( | ReqType | type | ) |
Definition at line 65 of file ul-job.cc.
References m_type.
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CreateUlJob(), and ns3::UplinkSchedulerMBQoS::ProcessBandwidthRequest().
|
private |
Definition at line 83 of file ul-job.h.
Referenced by GetDeadline(), and SetDeadline().
|
private |
Definition at line 82 of file ul-job.h.
Referenced by GetPeriod(), and SetPeriod().
|
private |
Definition at line 81 of file ul-job.h.
Referenced by GetReleaseTime(), and SetReleaseTime().
|
private |
Definition at line 85 of file ul-job.h.
Referenced by GetSchedulingType(), and SetSchedulingType().
|
private |
Definition at line 96 of file ul-job.h.
Referenced by GetServiceFlow(), and SetServiceFlow().
|
private |
|
private |
Definition at line 93 of file ul-job.h.
Referenced by GetSsRecord(), and SetSsRecord().
|
private |