InetSocketAddress: replace explicit conversion to implicit conversion
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Mon, 30 Jul 2007 14:07:39 +0200
changeset 1204 d40723d53e3d
parent 1174 e931ef589bb4
child 1205 6cee0d34bda6
InetSocketAddress: replace explicit conversion to implicit conversion
examples/csma-cd-one-subnet.cc
examples/simple-point-to-point.cc
samples/main-simple.cc
src/internet-node/udp-socket.cc
src/node/inet-socket-address.cc
src/node/inet-socket-address.h
--- a/examples/csma-cd-one-subnet.cc	Mon Jul 30 13:59:13 2007 +0200
+++ b/examples/csma-cd-one-subnet.cc	Mon Jul 30 14:07:39 2007 +0200
@@ -132,7 +132,7 @@
   // from n0 to n1
   Ptr<OnOffApplication> ooff = Create<OnOffApplication> (
     n0, 
-    InetSocketAddress (Ipv4Address("10.1.1.2"), 80).ConvertTo (), 
+    InetSocketAddress ("10.1.1.2", 80), 
     "Udp",
     ConstantVariable(1), 
     ConstantVariable(0));
@@ -143,7 +143,7 @@
   // Create a similar flow from n3 to n0, starting at time 1.1 seconds
   ooff = Create<OnOffApplication> (
     n3, 
-    InetSocketAddress (Ipv4Address("10.1.1.1"), 80).ConvertTo (), 
+    InetSocketAddress ("10.1.1.1", 80), 
     "Udp",
     ConstantVariable(1), 
     ConstantVariable(0));
--- a/examples/simple-point-to-point.cc	Mon Jul 30 13:59:13 2007 +0200
+++ b/examples/simple-point-to-point.cc	Mon Jul 30 14:07:39 2007 +0200
@@ -144,7 +144,7 @@
   // 210 bytes at a rate of 448 Kb/s
   Ptr<OnOffApplication> ooff = Create<OnOffApplication> (
     n0, 
-    InetSocketAddress (Ipv4Address("10.1.3.2"), 80).ConvertTo (), 
+    InetSocketAddress ("10.1.3.2", 80), 
     "Udp",
     ConstantVariable(1), 
     ConstantVariable(0));
@@ -155,7 +155,7 @@
   // Create a similar flow from n3 to n1, starting at time 1.1 seconds
   ooff = Create<OnOffApplication> (
     n3, 
-    InetSocketAddress (Ipv4Address("10.1.2.1"), 80).ConvertTo (), 
+    InetSocketAddress ("10.1.2.1", 80), 
     "Udp",
     ConstantVariable(1), 
     ConstantVariable(0));
--- a/samples/main-simple.cc	Mon Jul 30 13:59:13 2007 +0200
+++ b/samples/main-simple.cc	Mon Jul 30 14:07:39 2007 +0200
@@ -46,11 +46,11 @@
 
   Ptr<Socket> sink = socketFactory->CreateSocket ();
   InetSocketAddress local = InetSocketAddress (Ipv4Address::GetAny (), 80);
-  sink->Bind (local.ConvertTo ());
+  sink->Bind (local);
 
   Ptr<Socket> source = socketFactory->CreateSocket ();
   InetSocketAddress remote = InetSocketAddress (Ipv4Address::GetLoopback (), 80);
-  source->Connect (remote.ConvertTo ());
+  source->Connect (remote);
 
   GenerateTraffic (source, 500);
   PrintTraffic (sink);
--- a/src/internet-node/udp-socket.cc	Mon Jul 30 13:59:13 2007 +0200
+++ b/src/internet-node/udp-socket.cc	Mon Jul 30 14:07:39 2007 +0200
@@ -95,7 +95,7 @@
     {
       return ERROR_INVAL;
     }
-  InetSocketAddress transport = InetSocketAddress::ConvertFrom (address);
+  InetSocketAddress transport = address;
   Ipv4Address ipv4 = transport.GetIpv4 ();
   uint16_t port = transport.GetPort ();
   if (ipv4 == Ipv4Address::GetAny () && port == 0)
@@ -151,7 +151,7 @@
                      ns3::Callback<void, Ptr<Socket> > connectionFailed,
                      ns3::Callback<void, Ptr<Socket> > halfClose)
 {
-  InetSocketAddress transport = InetSocketAddress::ConvertFrom (address);
+  InetSocketAddress transport = address;
   m_defaultAddress = transport.GetIpv4 ();
   m_defaultPort = transport.GetPort ();
   if (!connectionSucceeded.IsNull ())
@@ -194,7 +194,7 @@
 UdpSocket::DoSendPacketTo (const Packet &p, const Address &address,
                            ns3::Callback<void, Ptr<Socket>, uint32_t> dataSent)
 {
-  InetSocketAddress transport = InetSocketAddress::ConvertFrom (address);
+  InetSocketAddress transport = address;
   Ipv4Address ipv4 = transport.GetIpv4 ();
   uint16_t port = transport.GetPort ();
   return DoSendPacketTo (p, ipv4, port, dataSent);
@@ -245,7 +245,7 @@
     {
       p = Packet (buffer, size);
     }
-  InetSocketAddress transport = InetSocketAddress::ConvertFrom (address);
+  InetSocketAddress transport = address;
   Ipv4Address ipv4 = transport.GetIpv4 ();
   uint16_t port = transport.GetPort ();
   return DoSendPacketTo (p, ipv4, port, dataSent);
@@ -269,7 +269,7 @@
       return;
     }
   
-  Address address = InetSocketAddress (ipv4, port).ConvertTo ();
+  Address address = InetSocketAddress (ipv4, port);
   Packet p = packet;
   if (!m_dummyRxCallback.IsNull ())
     {
--- a/src/node/inet-socket-address.cc	Mon Jul 30 13:59:13 2007 +0200
+++ b/src/node/inet-socket-address.cc	Mon Jul 30 14:07:39 2007 +0200
@@ -51,6 +51,16 @@
   return address.CheckCompatible (GetType (), 6);
 }
 
+InetSocketAddress::operator Address () const
+{
+  return ConvertTo ();
+}
+
+InetSocketAddress::InetSocketAddress (const Address &address)
+{
+  *this = ConvertFrom (address);
+}
+
 Address 
 InetSocketAddress::ConvertTo (void) const
 {
--- a/src/node/inet-socket-address.h	Mon Jul 30 13:59:13 2007 +0200
+++ b/src/node/inet-socket-address.h	Mon Jul 30 14:07:39 2007 +0200
@@ -73,14 +73,18 @@
    * \returns an Address instance which represents this
    * InetSocketAddress instance.
    */
-  Address ConvertTo (void) const;
+  operator Address () const;
+
   /**
    * \param address the Address instance to convert from.
-   * \returns an InetSocketAddress which corresponds to the input
+   *
+   * Construct an InetSocketAddress which corresponds to the input
    * Address
    */
+  InetSocketAddress (const Address &address);
+private:
+  Address ConvertTo (void) const;
   static InetSocketAddress ConvertFrom (const Address &address);
-private:
   static uint8_t GetType (void);
   Ipv4Address m_ipv4;
   uint16_t m_port;