21 #include "wimax-tlv.h"
22 #include "cs-parameters.h"
25 CsParameters::CsParameters ()
27 m_classifierDscAction = CsParameters::ADD;
29 CsParameters::~CsParameters ()
34 CsParameters::CsParameters (
Tlv tlv)
36 NS_ASSERT_MSG (tlv.GetType () == SfVectorTlvValue::IPV4_CS_Parameters,
40 for (std::vector<Tlv*>::const_iterator iter = param->Begin (); iter
41 != param->End (); ++iter)
43 switch ((*iter)->GetType ())
45 case CsParamVectorTlvValue::Classifier_DSC_Action:
48 = (
enum CsParameters::Action)((
U8TlvValue*)((*iter)->PeekValue ()))->GetValue ();
51 case CsParamVectorTlvValue::Packet_Classification_Rule:
53 m_packetClassifierRule
61 CsParameters::CsParameters (
enum CsParameters::Action classifierDscAction,
64 m_classifierDscAction = classifierDscAction;
65 m_packetClassifierRule = classifier;
70 m_classifierDscAction = action;
75 m_packetClassifierRule = packetClassifierRule;
77 enum CsParameters::Action
80 return m_classifierDscAction;
85 return m_packetClassifierRule;
91 tmp.Add (
Tlv (CsParamVectorTlvValue::Classifier_DSC_Action,1,
U8TlvValue (m_classifierDscAction)));
92 tmp.Add (m_packetClassifierRule.
ToTlv ());
93 return Tlv (SfVectorTlvValue::IPV4_CS_Parameters, tmp.GetSerializedSize (), tmp);
enum Action GetClassifierDscAction(void) const
void SetClassifierDscAction(enum Action action)
sets the dynamic service classifier action to ADD, Change or delete. Only ADD is supported ...
this class implements the convergence sub-layer descriptor as a tlv vector
This class implements the Type-Len-Value structure channel encodings as described by "IEEE Standard f...
void SetPacketClassifierRule(IpcsClassifierRecord packetClassifierRule)
sets the packet classifier rules
Tlv ToTlv(void) const
creates a tlv from the classifier record
#define NS_ASSERT_MSG(condition, message)
Tlv ToTlv(void) const
Creates a TLV from this classifier.
IpcsClassifierRecord GetPacketClassifierRule(void) const