add NetDevice::NeedsArp method
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Mon, 30 Apr 2007 10:05:46 +0200
changeset 445 10cd9049a0ad
parent 444 1647ca57f19d
child 446 ceecc7397053
add NetDevice::NeedsArp method
src/devices/p2p/p2p-net-device.cc
src/devices/p2p/p2p-net-device.h
src/node/net-device.cc
src/node/net-device.h
--- a/src/devices/p2p/p2p-net-device.cc	Mon Apr 30 10:00:34 2007 +0200
+++ b/src/devices/p2p/p2p-net-device.cc	Mon Apr 30 10:05:46 2007 +0200
@@ -360,4 +360,10 @@
     return m_channel;
 }
 
+bool 
+PointToPointNetDevice::DoNeedsArp (void) const
+{
+  return false;
+}
+
 } // namespace ns3
--- a/src/devices/p2p/p2p-net-device.h	Mon Apr 30 10:00:34 2007 +0200
+++ b/src/devices/p2p/p2p-net-device.h	Mon Apr 30 10:05:46 2007 +0200
@@ -254,6 +254,7 @@
    * @see class TraceResolver
    */
   virtual TraceResolver *DoCreateTraceResolver (TraceContext const &context);
+  virtual bool DoNeedsArp (void) const;
   /**
    * Enumeration of the states of the transmit machine of the net device.
    */
--- a/src/node/net-device.cc	Mon Apr 30 10:00:34 2007 +0200
+++ b/src/node/net-device.cc	Mon Apr 30 10:05:46 2007 +0200
@@ -220,4 +220,10 @@
   return m_node;
 }
 
+bool
+NetDevice::NeedsArp (void) const
+{
+  return DoNeedsArp ();
+}
+
 }; // namespace ns3
--- a/src/node/net-device.h	Mon Apr 30 10:00:34 2007 +0200
+++ b/src/node/net-device.h	Mon Apr 30 10:05:46 2007 +0200
@@ -152,6 +152,8 @@
    */
   bool Send(Packet& p, const MacAddress& dest, uint16_t protocolNumber);
 
+  bool NeedsArp (void) const;
+
  protected:
   /**
    * Enable broadcast support. This method should be
@@ -222,7 +224,7 @@
    * subclasses to forward packets. Subclasses MUST override this method.
    */
   virtual bool SendTo (Packet& p, const MacAddress& dest) = 0;
-
+  virtual bool DoNeedsArp (void) const = 0;
   virtual TraceResolver *DoCreateTraceResolver (TraceContext const &context) = 0;
   virtual Channel *DoGetChannel (void) const = 0;
   Node*         m_node;