finish Dispose -> DoDispose rework
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Thu, 03 May 2007 13:24:43 +0200
changeset 517 702e96b8960f
parent 516 3d330150ab6d
child 518 b38047b0e7ab
finish Dispose -> DoDispose rework
src/devices/p2p/p2p-net-device.cc
src/devices/p2p/p2p-net-device.h
src/node/application-list.cc
src/node/application-list.h
src/node/application.cc
src/node/application.h
src/node/net-device.cc
src/node/net-device.h
src/node/onoff-application.cc
src/node/onoff-application.h
--- a/src/devices/p2p/p2p-net-device.cc	Thu May 03 13:17:29 2007 +0200
+++ b/src/devices/p2p/p2p-net-device.cc	Thu May 03 13:24:43 2007 +0200
@@ -56,8 +56,6 @@
 {
   NS_DEBUG ("PointToPointNetDevice::~PointToPointNetDevice ()");
 
-  Dispose ();
-
   delete m_queue;
   m_queue = 0;
 }
@@ -102,14 +100,14 @@
     
 }
 
-void PointToPointNetDevice::Dispose()
+void PointToPointNetDevice::DoDispose()
 {
  if (m_channel != 0)
  {
    m_channel->Unref ();
    m_channel = 0;
  }
- NetDevice::Dispose ();
+ NetDevice::DoDispose ();
 }
 
 //
--- a/src/devices/p2p/p2p-net-device.h	Thu May 03 13:17:29 2007 +0200
+++ b/src/devices/p2p/p2p-net-device.h	Thu May 03 13:24:43 2007 +0200
@@ -97,10 +97,6 @@
    */
   virtual ~PointToPointNetDevice();
   /**
-   *Dispose method for refcounting
-   */
-  virtual void Dispose();
-  /**
    * Assignment Operator for a PointToPointNetDevice
    *
    * This is the assignment operator for the PointToPointNetDevice.  This is
@@ -172,6 +168,7 @@
    */
   void Receive (Packet& p);
 protected:
+  virtual void DoDispose (void);
   /**
    * Get a copy of the attached Queue.
    *
--- a/src/node/application-list.cc	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/application-list.cc	Thu May 03 13:24:43 2007 +0200
@@ -34,7 +34,7 @@
 {}
 
 void 
-ApplicationList::Dispose (void)
+ApplicationList::DoDispose (void)
 {
   for (std::vector<Application*>::const_iterator i = m_apps.begin();
        i != m_apps.end(); ++i)
@@ -44,12 +44,11 @@
       app->Unref ();
     }
   m_apps.clear ();
+  NsUnknown::DoDispose ();
 }
   
 ApplicationList::~ApplicationList()
-{ // Destructor, nothing needed as the SmartSet destroys itself
-  Dispose ();
-}
+{}
 
 ApplicationList* ApplicationList::Copy(Node * n) const 
 { // Copy this app list
--- a/src/node/application-list.h	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/application-list.h	Thu May 03 13:24:43 2007 +0200
@@ -38,7 +38,6 @@
   // Copy constructor not needed, default one is correct
   virtual ~ApplicationList();
   // Inherited from Capabilty
-  virtual void Dispose (void);
   virtual ApplicationList* Copy(Node*) const;
   virtual void SetNode(Node *);              // Sets the node for all apps
   virtual void Add(Application*);      // Add an already new'ed app
@@ -53,6 +52,8 @@
   uint32_t Count() const;  // Number of applications
   Application* Get(uint32_t i) const; // Get app by index
   
+protected:
+  virtual void DoDispose (void);
 private:
   std::vector<Application*> m_apps;
 };
--- a/src/node/application.cc	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/application.cc	Thu May 03 13:24:43 2007 +0200
@@ -58,12 +58,10 @@
   
 // \brief Application Destructor
 Application::~Application()
-{
-  Dispose ();
-}
+{}
 
 void
-Application::Dispose (void)
+Application::DoDispose (void)
 {
   if (m_node != 0)
     {
--- a/src/node/application.h	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/application.h	Thu May 03 13:24:43 2007 +0200
@@ -63,8 +63,6 @@
   Application(const Application&);  // Copy constructor
   Application& operator=(const Application&); // Assignment operator
   virtual ~Application();
-
-  virtual void Dispose (void);
   
   virtual Application* Copy() const = 0; // All applications must provide
   
@@ -129,6 +127,7 @@
   // subclasses.
   virtual void StopApplication();
 
+  virtual void DoDispose (void);
 private:
   // Helpers
   void ScheduleStart();
--- a/src/node/net-device.cc	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/net-device.cc	Thu May 03 13:24:43 2007 +0200
@@ -235,7 +235,7 @@
 }
 
 void
-NetDevice::Dispose()
+NetDevice::DoDispose()
 {}
 
 }; // namespace ns3
--- a/src/node/net-device.h	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/net-device.h	Thu May 03 13:24:43 2007 +0200
@@ -157,8 +157,6 @@
   bool NeedsArp (void) const;
 
   void SetReceiveCallback (Callback<bool,NetDevice *,const Packet &,uint16_t> cb);
-  
-  virtual void Dispose();
 
  protected:
   /**
@@ -218,6 +216,8 @@
    */
   bool ForwardUp (Packet& p);
 
+  virtual void DoDispose (void);
+
  private:
   /**
    * \param p packet to send
--- a/src/node/onoff-application.cc	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/onoff-application.cc	Thu May 03 13:24:43 2007 +0200
@@ -87,12 +87,10 @@
 }
 
 OnOffApplication::~OnOffApplication()
-{
-  Dispose ();
-}
+{}
 
 void
-OnOffApplication::Dispose (void)
+OnOffApplication::DoDispose (void)
 {
   if (m_socket != 0)
     {
@@ -106,7 +104,7 @@
   m_offTime = 0;
 
   // chain up
-  Application::Dispose ();
+  Application::DoDispose ();
 }
 
 #ifdef REMOVE_THIS
--- a/src/node/onoff-application.h	Thu May 03 13:17:29 2007 +0200
+++ b/src/node/onoff-application.h	Thu May 03 13:24:43 2007 +0200
@@ -54,8 +54,6 @@
   virtual void StopApplication();     // Called at time specified by Stop
   virtual OnOffApplication* Copy() const;// Make a copy of the application
 
-  virtual void Dispose (void);
-
   // Event handlers
   void StartSending();
   void StopSending();
@@ -63,6 +61,9 @@
 
   virtual void MaxBytes(uint32_t m) { m_maxBytes = m;}
 
+protected:
+  virtual void DoDispose (void);
+
 public: // Static methods
   static void DefaultRate(uint64_t r) { g_defaultRate = r;}