bug 500: make DcaTxop accessible through an attribute.
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Tue, 24 Feb 2009 08:20:51 +0100
changeset 4209 42c89b271a69
parent 4208 ef9ae8962bbb
child 4210 da9be6abb1b2
bug 500: make DcaTxop accessible through an attribute.
src/devices/wifi/adhoc-wifi-mac.cc
src/devices/wifi/adhoc-wifi-mac.h
src/devices/wifi/nqap-wifi-mac.cc
src/devices/wifi/nqap-wifi-mac.h
src/devices/wifi/nqsta-wifi-mac.cc
src/devices/wifi/nqsta-wifi-mac.h
--- a/src/devices/wifi/adhoc-wifi-mac.cc	Mon Feb 23 16:07:46 2009 +0000
+++ b/src/devices/wifi/adhoc-wifi-mac.cc	Tue Feb 24 08:20:51 2009 +0100
@@ -24,6 +24,7 @@
 #include "mac-rx-middle.h"
 #include "wifi-phy.h"
 #include "dcf-manager.h"
+#include "ns3/pointer.h"
 #include "ns3/packet.h"
 #include "ns3/log.h"
 
@@ -42,6 +43,10 @@
   static TypeId tid = TypeId ("ns3::AdhocWifiMac")
     .SetParent<WifiMac> ()
     .AddConstructor<AdhocWifiMac> ()
+    .AddAttribute ("DcaTxop", "The DcaTxop object",
+                   PointerValue (),
+                   MakePointerAccessor (&AdhocWifiMac::DoGetDcaTxop),
+                   MakePointerChecker<DcaTxop> ()) 
     ;
   return tid;
 }
@@ -243,5 +248,10 @@
   NS_LOG_DEBUG ("received size="<<packet->GetSize ()<<", from="<<hdr->GetAddr2 ());
   m_upCallback (packet, hdr->GetAddr2 (), hdr->GetAddr1 ());
 }
+Ptr<DcaTxop>
+AdhocWifiMac::DoGetDcaTxop(void) const
+{
+  return m_dca;
+}
 
 } // namespace ns3
--- a/src/devices/wifi/adhoc-wifi-mac.h	Mon Feb 23 16:07:46 2009 +0000
+++ b/src/devices/wifi/adhoc-wifi-mac.h	Tue Feb 24 08:20:51 2009 +0100
@@ -86,6 +86,7 @@
   void ForwardUp (Ptr<Packet> packet, WifiMacHeader const*hdr);
   AdhocWifiMac (const AdhocWifiMac & ctor_arg);
   AdhocWifiMac &operator = (const AdhocWifiMac &o);
+  Ptr<DcaTxop> DoGetDcaTxop(void) const;
 
   Ptr<DcaTxop> m_dca;
   Callback<void,Ptr<Packet>, Mac48Address, Mac48Address> m_upCallback;
--- a/src/devices/wifi/nqap-wifi-mac.cc	Mon Feb 23 16:07:46 2009 +0000
+++ b/src/devices/wifi/nqap-wifi-mac.cc	Tue Feb 24 08:20:51 2009 +0100
@@ -30,6 +30,7 @@
 #include "dcf-manager.h"
 #include "mac-rx-middle.h"
 #include "mac-low.h"
+#include "ns3/pointer.h"
 
 NS_LOG_COMPONENT_DEFINE ("NqapWifiMac");
 
@@ -56,6 +57,10 @@
                    MakeBooleanAccessor (&NqapWifiMac::SetBeaconGeneration,
                                         &NqapWifiMac::GetBeaconGeneration),
                    MakeBooleanChecker ())
+    .AddAttribute ("DcaTxop", "The DcaTxop object",
+                   PointerValue (),
+                   MakePointerAccessor (&NqapWifiMac::DoGetDcaTxop),
+                   MakePointerChecker<DcaTxop> ()) 
     ;
   return tid;
 }
@@ -554,5 +559,10 @@
       NS_ASSERT (false);
     }  
 }
+Ptr<DcaTxop>
+NqapWifiMac::DoGetDcaTxop(void) const
+{
+  return m_dca;
+}
 
 } // namespace ns3
--- a/src/devices/wifi/nqap-wifi-mac.h	Mon Feb 23 16:07:46 2009 +0000
+++ b/src/devices/wifi/nqap-wifi-mac.h	Tue Feb 24 08:20:51 2009 +0100
@@ -113,6 +113,7 @@
   virtual void DoDispose (void);
   NqapWifiMac (const NqapWifiMac & ctor_arg);
   NqapWifiMac &operator = (const NqapWifiMac &o);
+  Ptr<DcaTxop> DoGetDcaTxop(void) const;
 
   Ptr<DcaTxop> m_dca;
   Ptr<DcaTxop> m_beaconDca;
--- a/src/devices/wifi/nqsta-wifi-mac.cc	Mon Feb 23 16:07:46 2009 +0000
+++ b/src/devices/wifi/nqsta-wifi-mac.cc	Tue Feb 24 08:20:51 2009 +0100
@@ -33,6 +33,8 @@
 #include "mac-low.h"
 #include "dcf-manager.h"
 #include "mac-rx-middle.h"
+#include "ns3/trace-source-accessor.h"
+#include "ns3/pointer.h"
 
 NS_LOG_COMPONENT_DEFINE ("NqstaWifiMac");
 
@@ -83,6 +85,10 @@
                    BooleanValue (false),
                    MakeBooleanAccessor (&NqstaWifiMac::SetActiveProbing),
                    MakeBooleanChecker ())
+    .AddAttribute ("DcaTxop", "The DcaTxop object",
+                   PointerValue (),
+                   MakePointerAccessor (&NqstaWifiMac::DoGetDcaTxop),
+                   MakePointerChecker<DcaTxop> ()) 
     ;
   return tid;
 }
@@ -194,7 +200,11 @@
 {
   return m_low->GetPifs ();
 }
-
+Ptr<DcaTxop>
+NqstaWifiMac::DoGetDcaTxop(void) const
+{
+  return m_dca;
+}
 void 
 NqstaWifiMac::SetWifiPhy (Ptr<WifiPhy> phy)
 {
--- a/src/devices/wifi/nqsta-wifi-mac.h	Mon Feb 23 16:07:46 2009 +0000
+++ b/src/devices/wifi/nqsta-wifi-mac.h	Tue Feb 24 08:20:51 2009 +0100
@@ -129,6 +129,7 @@
   virtual void DoDispose (void);
   NqstaWifiMac (const NqstaWifiMac & ctor_arg);
   NqstaWifiMac &operator = (const NqstaWifiMac & ctor_arg);
+  Ptr<DcaTxop> DoGetDcaTxop(void) const;
 
   enum {
     ASSOCIATED,