[Ns-developers] Extending WifiHelper object

Mathieu Lacage mathieu.lacage at sophia.inria.fr
Wed Mar 25 00:56:32 PDT 2009


On Tue, 2009-03-24 at 20:54 +0100, Mirko Banchi wrote:
> Hi Mathieu,
> 
> As you told me, i'm extending WifiHelper class in order to make easy
> setting of Msdu aggregators and also Edca parameters (minCw, maxCW ...)
> for each Qos station's queue. The discussed solution is the following:

looks good.

> class QosWifiMacHelper : public WifiMacHelper
> {
>   virtual Ptr<WifiMac> Create (void) const;
>   void SetType (std::string,
>                 std::string n0, const AttributeValue &v0,
>                 ...);
>   void SetMsduAggregatorForAc (AccessClass ac, std::string type,
>                                std::string n0, const AttributeValue &v0
>                                ,...);
>   void SetEdcaParameterForAc (?);
> };

> As you can see the main problems are with parameter list of
> 
> NqosWifiMacHelper::SetDcaParameter
> QosWifiMacHelper::SetEdcaParameter
> 
> Which kind of parameter we should use?
> 
> Even if ns3::EdcaTxopN has attributes like "MinCw", "MaxCw" etc, when
> SetEdcaParameter is called i haven't in hand the pointer to the specific
> queue yet.

Can you do what you do already for SetMsduAggregatorForAc with a factory
and create the EdcaTxop object from the helper rather than from the
WifiMac object ?

Mathieu



More information about the Ns-developers mailing list