src/devices/wifi/wifi-net-device.h
changeset 2350 0b54480c4fd1
parent 2284 14b682d28918
child 2503 e667dc0f350e
equal deleted inserted replaced
2349:b1df486516a4 2350:0b54480c4fd1
   104 
   104 
   105   // inherited from NetDevice
   105   // inherited from NetDevice
   106   virtual bool DoNeedsArp (void) const;
   106   virtual bool DoNeedsArp (void) const;
   107   virtual Ptr<Channel> DoGetChannel (void) const;
   107   virtual Ptr<Channel> DoGetChannel (void) const;
   108   virtual bool SendTo (Ptr<Packet> packet, const Address &to, uint16_t protocolNumber);
   108   virtual bool SendTo (Ptr<Packet> packet, const Address &to, uint16_t protocolNumber);
   109   // inherited from Object
       
   110   virtual Ptr<TraceResolver> GetTraceResolver (void) const;
       
   111   // defined for children
   109   // defined for children
   112   virtual void NotifyAttached (void) = 0;
   110   virtual void NotifyAttached (void) = 0;
   113   virtual bool DoSendTo (Ptr<const Packet> packet, const Mac48Address &to) = 0;
   111   virtual bool DoSendTo (Ptr<const Packet> packet, const Mac48Address &to) = 0;
   114   // private helper
   112   // private helper
   115   void Construct (void);
   113   void Construct (void);
   116 
   114 
   117   CallbackTraceSource<Ptr<const Packet>, Mac48Address> m_rxLogger;
   115   CallbackTraceSource<Ptr<const Packet>, Mac48Address> m_rxLogger;
   118   CallbackTraceSource<Ptr<const Packet>, Mac48Address> m_txLogger;
   116   CallbackTraceSource<Ptr<const Packet>, Mac48Address> m_txLogger;
   119 protected:
   117 protected:
       
   118   // inherited from Object
       
   119   virtual Ptr<TraceResolver> GetTraceResolver (void) const;
   120   WifiNetDevice (Ptr<Node> node);
   120   WifiNetDevice (Ptr<Node> node);
   121   WifiNetDevice (Ptr<Node> node, Mac48Address self);
   121   WifiNetDevice (Ptr<Node> node, Mac48Address self);
   122   void DoForwardUp (Ptr<Packet> packet, const Mac48Address &from);
   122   void DoForwardUp (Ptr<Packet> packet, const Mac48Address &from);
   123   DcaTxop *CreateDca (uint32_t minCw, uint32_t maxCw, uint32_t aifsn) const;
   123   Ptr<DcaTxop> CreateDca (uint32_t minCw, uint32_t maxCw, uint32_t aifsn) const;
   124   // inherited from Object
   124   // inherited from Object
   125   virtual void DoDispose (void);
   125   virtual void DoDispose (void);
   126 
   126 
   127   Ptr<WifiChannel> m_channel;
   127   Ptr<WifiChannel> m_channel;
   128   Ptr<WifiPhy> m_phy;
   128   Ptr<WifiPhy> m_phy;
   129   MacStations *m_stations;
   129   MacStations *m_stations;
   130   MacLow *m_low;
   130   Ptr<MacLow> m_low;
   131   MacRxMiddle *m_rxMiddle;
   131   MacRxMiddle *m_rxMiddle;
   132   MacTxMiddle *m_txMiddle;
   132   MacTxMiddle *m_txMiddle;
   133   MacParameters *m_parameters;
   133   MacParameters *m_parameters;
   134   DcfManager *m_manager;
   134   DcfManager *m_manager;
   135   PhyListener *m_phyListener;
   135   PhyListener *m_phyListener;
   159   void DoConstruct (void);
   159   void DoConstruct (void);
   160   void ForwardUp (void);
   160   void ForwardUp (void);
   161   // inherited from WifiNetDefice
   161   // inherited from WifiNetDefice
   162   virtual bool DoSendTo (Ptr<const Packet> packet, Mac48Address const & to);
   162   virtual bool DoSendTo (Ptr<const Packet> packet, Mac48Address const & to);
   163   virtual void NotifyAttached (void);
   163   virtual void NotifyAttached (void);
       
   164   virtual Ptr<TraceResolver> GetTraceResolver (void) const;
   164 
   165 
   165   Ssid m_ssid;
   166   Ssid m_ssid;
   166   DcaTxop *m_dca;
   167   Ptr<DcaTxop> m_dca;
   167   MacHighAdhoc *m_high;
   168   MacHighAdhoc *m_high;
   168 };
   169 };
   169 
   170 
   170 /**
   171 /**
   171  * \brief a 802.11 STA network interface 
   172  * \brief a 802.11 STA network interface 
   205   void Associated (void);
   206   void Associated (void);
   206   void DisAssociated (void);
   207   void DisAssociated (void);
   207   // inherited from WifiNetDefice
   208   // inherited from WifiNetDefice
   208   virtual bool DoSendTo (Ptr<const Packet> packet, Mac48Address const & to);
   209   virtual bool DoSendTo (Ptr<const Packet> packet, Mac48Address const & to);
   209   virtual void NotifyAttached (void);
   210   virtual void NotifyAttached (void);
       
   211   virtual Ptr<TraceResolver> GetTraceResolver (void) const;
   210 
   212 
   211   Ssid m_ssid;
   213   Ssid m_ssid;
   212   DcaTxop *m_dca;
   214   Ptr<DcaTxop> m_dca;
   213   MacHighNqsta *m_high;
   215   MacHighNqsta *m_high;
   214 };
   216 };
   215 
   217 
   216 /**
   218 /**
   217  * \brief a 802.11 AP network interface
   219  * \brief a 802.11 AP network interface
   241 private:
   243 private:
   242   void DoConstruct (void);
   244   void DoConstruct (void);
   243   // inherited from WifiNetDefice
   245   // inherited from WifiNetDefice
   244   virtual bool DoSendTo (Ptr<const Packet> packet, Mac48Address const & to);
   246   virtual bool DoSendTo (Ptr<const Packet> packet, Mac48Address const & to);
   245   virtual void NotifyAttached (void);
   247   virtual void NotifyAttached (void);
       
   248   virtual Ptr<TraceResolver> GetTraceResolver (void) const;
   246 
   249 
   247   Ssid m_ssid;
   250   Ssid m_ssid;
   248   DcaTxop *m_dca;
   251   Ptr<DcaTxop> m_dca;
   249   DcaTxop *m_beaconDca;
   252   Ptr<DcaTxop> m_beaconDca;
   250   MacHighNqap *m_high;
   253   MacHighNqap *m_high;
   251 };
   254 };
   252 
   255 
   253 } // namespace ns3
   256 } // namespace ns3
   254 
   257