kill TraceResolver et al.
authorMathieu Lacage <mathieu.lacage@sophia.inria.fr>
Mon, 03 Mar 2008 01:58:57 +0100
changeset 2542 a9b88fdc09d6
parent 2541 91020a8d4264
child 2543 401bfe8c0176
kill TraceResolver et al.
src/core/object.cc
src/core/object.h
src/core/wscript
src/devices/wifi/mac-low.cc
src/internet-node/arp-l3-protocol.h
src/internet-node/ascii-trace.cc
src/internet-node/ipv4-interface.cc
src/internet-node/ipv4-interface.h
src/internet-node/ipv4-static-routing.h
src/internet-node/tcp-l4-protocol.h
src/internet-node/udp-l4-protocol.h
src/mobility/hierarchical-mobility-model.cc
src/mobility/hierarchical-mobility-model.h
src/node/net-device.h
src/node/node.cc
utils/print-introspected-doxygen.cc
--- a/src/core/object.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/core/object.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -21,7 +21,6 @@
 #include "object.h"
 #include "assert.h"
 #include "singleton.h"
-#include "trace-resolver.h"
 #include "attribute.h"
 #include "trace-source-accessor.h"
 #include "log.h"
@@ -373,73 +372,8 @@
 
 } // anonymous namespace
 
-/*********************************************************************
- *         The TypeId TraceResolver
- *********************************************************************/
-
 namespace ns3 {
 
-class TypeIdTraceResolver : public TraceResolver
-{
-public:
-  TypeIdTraceResolver (Ptr<const Object> aggregate);
-  virtual void Connect (std::string path, CallbackBase const &cb, const TraceContext &context);
-  virtual void Disconnect (std::string path, CallbackBase const &cb);
-  virtual void CollectSources (std::string path, const TraceContext &context, 
-                               SourceCollection *collection);
-  virtual void TraceAll (std::ostream &os, const TraceContext &context);
-private:
-  Ptr<const Object> ParseForInterface (std::string path);
-  Ptr<const Object> m_aggregate;
-};
-
-TypeIdTraceResolver::TypeIdTraceResolver (Ptr<const Object> aggregate)
-  : m_aggregate (aggregate)
-{}
-Ptr<const Object>
-TypeIdTraceResolver::ParseForInterface (std::string path)
-{
-  std::string element = GetElement (path);
-  std::string::size_type dollar_pos = element.find ("$");
-  if (dollar_pos != 0)
-    {
-      return 0;
-    }
-  std::string interfaceName = element.substr (1, std::string::npos);
-  TypeId interfaceId = TypeId::LookupByName (interfaceName);
-  Ptr<Object> interface = m_aggregate->GetObject<Object> (interfaceId);
-  return interface;
-}
-void  
-TypeIdTraceResolver::Connect (std::string path, CallbackBase const &cb, const TraceContext &context)
-{
-  Ptr<const Object> interface = ParseForInterface (path);
-  if (interface != 0)
-    {
-      interface->GetTraceResolver ()->Connect (GetSubpath (path), cb, context);
-    }
-}
-void 
-TypeIdTraceResolver::Disconnect (std::string path, CallbackBase const &cb)
-{
-  Ptr<const Object> interface = ParseForInterface (path);
-  if (interface != 0)
-    {
-      interface->TraceDisconnect (GetSubpath (path), cb);
-    }
-}
-void 
-TypeIdTraceResolver::CollectSources (std::string path, const TraceContext &context, 
-                                          SourceCollection *collection)
-{
-  m_aggregate->DoCollectSources (path, context, collection);
-}
-void 
-TypeIdTraceResolver::TraceAll (std::ostream &os, const TraceContext &context)
-{
-  m_aggregate->DoTraceAll (os, context);
-}
-
 /*********************************************************************
  *         The TypeId class
  *********************************************************************/
@@ -1253,19 +1187,6 @@
 }
 
 void 
-Object::TraceConnect (std::string path, const CallbackBase &cb) const
-{
-  NS_ASSERT (CheckLoose ());
-  GetTraceResolver ()->Connect (path, cb, TraceContext ());
-}
-void 
-Object::TraceDisconnect (std::string path, const CallbackBase &cb) const
-{
-  NS_ASSERT (CheckLoose ());
-  GetTraceResolver ()->Disconnect (path, cb);
-}
-
-void 
 Object::SetTypeId (TypeId tid)
 {
   NS_ASSERT (Check ());
@@ -1278,14 +1199,6 @@
   NS_ASSERT (!m_disposed);
 }
 
-Ptr<TraceResolver>
-Object::GetTraceResolver (void) const
-{
-  NS_ASSERT (CheckLoose ());
-  Ptr<TypeIdTraceResolver> resolver =
-    Create<TypeIdTraceResolver> (this);
-  return resolver;
-}
 
 bool 
 Object::Check (void) const
@@ -1354,77 +1267,12 @@
   } while (current != end);
 }
 
-void 
-Object::DoCollectSources (std::string path, const TraceContext &context, 
-                          TraceResolver::SourceCollection *collection) const
-{
-  const Object *current;
-  current = this;
-  do {
-    if (current->m_collecting)
-      {
-        return;
-      }
-    current = current->m_next;
-  } while (current != this);
-
-  m_collecting = true;
-
-  current = this->m_next;
-  while (current != this)
-    {
-      NS_ASSERT (current != 0);
-      NS_LOG_LOGIC ("collect current=" << current);
-      TypeId cur = current->m_tid;
-      while (cur != Object::GetTypeId ())
-        {
-          std::string name = cur.GetName ();
-          std::string fullpath = path;
-          fullpath.append ("/$");
-          fullpath.append (name);
-          NS_LOG_LOGIC("collect: " << fullpath);
-          current->GetTraceResolver ()->CollectSources (fullpath, context, collection);
-          cur = cur.GetParent ();
-        }
-      current = current->m_next;
-    }
-
-  m_collecting = false;
-}
-void 
-Object::DoTraceAll (std::ostream &os, const TraceContext &context) const
-{
-  const Object *current;
-  current = this;
-  do {
-    if (current->m_collecting)
-      {
-        return;
-      }
-    current = current->m_next;
-  } while (current != this);
-
-  m_collecting = true;
-
-  current = this->m_next;
-  while (current != this)
-    {
-      NS_ASSERT (current != 0);
-      current->GetTraceResolver ()->TraceAll (os, context);
-      current = current->m_next;
-    }
-
-  m_collecting = false;
-}
-
 } // namespace ns3
 
 
 #ifdef RUN_SELF_TESTS
 
 #include "test.h"
-#include "sv-trace-source.h"
-#include "composite-trace-resolver.h"
 
 namespace {
 
@@ -1439,18 +1287,7 @@
   }
   BaseA ()
   {}
-  void BaseGenerateTrace (int16_t v)
-  { m_source = v; }
   virtual void Dispose (void) {}
-  virtual ns3::Ptr<ns3::TraceResolver> GetTraceResolver (void) const
-  {
-    ns3::Ptr<ns3::CompositeTraceResolver> resolver = 
-      ns3::Create<ns3::CompositeTraceResolver> ();
-    resolver->AddSource ("basea-x", ns3::TraceDoc ("test source"), m_source);
-    resolver->SetParentResolver (Object::GetTraceResolver ());
-    return resolver;
-  }
-  ns3::SVTraceSource<int16_t> m_source;
 };
 
 class DerivedA : public BaseA
@@ -1464,20 +1301,9 @@
   }
   DerivedA ()
   {}
-  void DerivedGenerateTrace (int16_t v)
-  { m_sourceDerived = v; }
   virtual void Dispose (void) {
     BaseA::Dispose ();
   }
-  virtual ns3::Ptr<ns3::TraceResolver> GetTraceResolver (void) const
-  {
-    ns3::Ptr<ns3::CompositeTraceResolver> resolver = 
-      ns3::Create<ns3::CompositeTraceResolver> ();
-    resolver->AddSource ("deriveda-x", ns3::TraceDoc ("test source"), m_sourceDerived);
-    resolver->SetParentResolver (BaseA::GetTraceResolver ());
-    return resolver;
-  }
-  ns3::SVTraceSource<int16_t> m_sourceDerived;
 };
 
 class BaseB : public ns3::Object
@@ -1491,18 +1317,7 @@
   }
   BaseB ()
   {}
-  void BaseGenerateTrace (int16_t v)
-  { m_source = v; }
   virtual void Dispose (void) {}
-  virtual ns3::Ptr<ns3::TraceResolver> GetTraceResolver (void) const
-  {
-    ns3::Ptr<ns3::CompositeTraceResolver> resolver = 
-      ns3::Create<ns3::CompositeTraceResolver> ();
-    resolver->AddSource ("baseb-x", ns3::TraceDoc ("test source"), m_source);
-    resolver->SetParentResolver (Object::GetTraceResolver ());
-    return resolver;
-  }
-  ns3::SVTraceSource<int16_t> m_source;
 };
 
 class DerivedB : public BaseB
@@ -1516,20 +1331,9 @@
   }
   DerivedB ()
   {}
-  void DerivedGenerateTrace (int16_t v)
-  { m_sourceDerived = v; }
   virtual void Dispose (void) {
     BaseB::Dispose ();
   }
-  virtual ns3::Ptr<ns3::TraceResolver> GetTraceResolver (void) const
-  {
-    ns3::Ptr<ns3::CompositeTraceResolver> resolver = 
-      ns3::Create<ns3::CompositeTraceResolver> ();
-    resolver->AddSource ("derivedb-x", ns3::TraceDoc ("test source"), m_sourceDerived);
-    resolver->SetParentResolver (BaseB::GetTraceResolver ());
-    return resolver;
-  }
-  ns3::SVTraceSource<int16_t> m_sourceDerived;
 };
 
 NS_OBJECT_ENSURE_REGISTERED (BaseA);
@@ -1546,41 +1350,11 @@
 public:
   ObjectTest ();
   virtual bool RunTests (void);
-private:
-  void BaseATrace (const TraceContext &context, int64_t oldValue, int64_t newValue);
-  void DerivedATrace (const TraceContext &context, int64_t oldValue, int64_t newValue);
-  void BaseBTrace (const TraceContext &context, int64_t oldValue, int64_t newValue);
-  void DerivedBTrace (const TraceContext &context, int64_t oldValue, int64_t newValue);
-
-  bool m_baseATrace;
-  bool m_derivedATrace;
-  bool m_baseBTrace;
-  bool m_derivedBTrace;
 };
 
 ObjectTest::ObjectTest ()
   : Test ("Object")
 {}
-void 
-ObjectTest::BaseATrace (const TraceContext &context, int64_t oldValue, int64_t newValue)
-{
-  m_baseATrace = true;
-}
-void 
-ObjectTest::DerivedATrace (const TraceContext &context, int64_t oldValue, int64_t newValue)
-{
-  m_derivedATrace = true;
-}
-void 
-ObjectTest::BaseBTrace (const TraceContext &context, int64_t oldValue, int64_t newValue)
-{
-  m_baseBTrace = true;
-}
-void 
-ObjectTest::DerivedBTrace (const TraceContext &context, int64_t oldValue, int64_t newValue)
-{
-  m_derivedBTrace = true;
-}
 
 bool 
 ObjectTest::RunTests (void)
@@ -1629,74 +1403,6 @@
   baseA = 0;
   baseA = baseB->GetObject<BaseA> ();
 
-  baseA = CreateObject<BaseA> ();
-  baseA->TraceConnect ("/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-  m_baseATrace = false;
-  baseA->BaseGenerateTrace (1);
-  NS_TEST_ASSERT (m_baseATrace);
-  baseA->TraceDisconnect ("/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-
-  baseB = CreateObject<BaseB> ();
-  baseB->TraceConnect ("/baseb-x",  MakeCallback (&ObjectTest::BaseBTrace, this));
-  m_baseBTrace = false;
-  baseB->BaseGenerateTrace (2);
-  NS_TEST_ASSERT (m_baseBTrace);
-  baseB->TraceDisconnect ("/baseb-x",  MakeCallback (&ObjectTest::BaseBTrace, this));
-
-  baseA->AggregateObject (baseB);
-
-  baseA->TraceConnect ("/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-  m_baseATrace = false;
-  baseA->BaseGenerateTrace (3);
-  NS_TEST_ASSERT (m_baseATrace);
-  baseA->TraceDisconnect ("/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-
-  baseA->TraceConnect ("/$BaseB/baseb-x",  MakeCallback (&ObjectTest::BaseBTrace, this));
-  m_baseBTrace = false;
-  baseB->BaseGenerateTrace (4);
-  NS_TEST_ASSERT (m_baseBTrace);
-  baseA->TraceDisconnect ("/$BaseB/baseb-x",  MakeCallback (&ObjectTest::BaseBTrace, this));
-  m_baseBTrace = false;
-  baseB->BaseGenerateTrace (5);
-  NS_TEST_ASSERT (!m_baseBTrace);
-
-  baseB->TraceConnect ("/$BaseA/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-  m_baseATrace = false;
-  baseA->BaseGenerateTrace (6);
-  NS_TEST_ASSERT (m_baseATrace);
-  baseB->TraceDisconnect ("/$BaseA/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-
-  baseA->TraceConnect ("/$BaseA/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-  m_baseATrace = false;
-  baseA->BaseGenerateTrace (7);
-  NS_TEST_ASSERT (m_baseATrace);
-  baseA->TraceDisconnect ("/$BaseA/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-
-  Ptr<DerivedA> derivedA;
-  derivedA = CreateObject<DerivedA> ();
-  baseB = CreateObject<BaseB> ();
-  derivedA->AggregateObject (baseB);
-  baseB->TraceConnect ("/$DerivedA/deriveda-x", MakeCallback (&ObjectTest::DerivedATrace, this));
-  baseB->TraceConnect ("/$DerivedA/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-  m_derivedATrace = false;
-  m_baseATrace = false;
-  derivedA->DerivedGenerateTrace (8);
-  derivedA->BaseGenerateTrace (9);
-  NS_TEST_ASSERT (m_derivedATrace);
-  NS_TEST_ASSERT (m_baseATrace);
-  baseB->TraceDisconnect ("/$DerivedA/deriveda-x", MakeCallback (&ObjectTest::BaseATrace, this));
-  baseB->TraceDisconnect ("/$DerivedA/basea-x", MakeCallback (&ObjectTest::BaseATrace, this));
-
-  baseB->TraceConnect ("/$DerivedA/*", MakeCallback (&ObjectTest::DerivedATrace, this));
-  m_derivedATrace = false;
-  derivedA->DerivedGenerateTrace (10);
-  NS_TEST_ASSERT (m_derivedATrace);
-  // here, we have connected the derived trace sink to all 
-  // trace sources, including the base trace source.
-  m_derivedATrace = false;
-  derivedA->BaseGenerateTrace (11);
-  NS_TEST_ASSERT (m_derivedATrace);
-  baseB->TraceDisconnect ("/$DerivedA/*", MakeCallback (&ObjectTest::BaseATrace, this));
 
   // Test the object creation code of TypeId
   Ptr<Object> a = BaseA::GetTypeId ().CreateObject ();
--- a/src/core/object.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/core/object.h	Mon Mar 03 01:58:57 2008 +0100
@@ -23,8 +23,8 @@
 
 #include <stdint.h>
 #include <string>
+#include <vector>
 #include "ptr.h"
-#include "trace-resolver.h"
 #include "callback.h"
 #include "attribute.h"
 #include "object-base.h"
@@ -42,7 +42,6 @@
 
 namespace ns3 {
 
-class TraceContext;
 class CallbackBase;
 class Object;
 class AttributeAccessor;
@@ -444,29 +443,6 @@
    */
   void AggregateObject (Ptr<Object> other);
 
-  /**
-   * \param path the path to match for the callback
-   * \param cb callback to connect
-   *
-   * Connect the input callback to all trace sources which
-   * match the input path.
-   *
-   */
-  void TraceConnect (std::string path, const CallbackBase &cb) const;
-  /**
-   * \param path the path to match for the callback
-   * \param cb callback to disconnect
-   *
-   * Disconnect the input callback from all trace sources which
-   * match the input path.
-   */
-  void TraceDisconnect (std::string path, const CallbackBase &cb) const;
-  /**
-   * \returns the trace resolver associated to this object.
-   *
-   * This method should be rarely called by users.
-   */
-  virtual Ptr<TraceResolver> GetTraceResolver (void) const;
 protected:
   /**
    * This method is called by Object::Dispose.
@@ -476,8 +452,6 @@
   virtual void DoDispose (void);
   virtual void NotifyConstructionCompleted (void);
 private:
-  friend class TypeIdTraceResolver;
-
   template <typename T>
   friend Ptr<T> CreateObject (const AttributeList &attributes);
 
@@ -502,9 +476,6 @@
   bool DoSet (Ptr<const AttributeAccessor> spec, Attribute intialValue, 
               Ptr<const AttributeChecker> checker, Attribute value);
   Ptr<Object> DoGetObject (TypeId tid) const;
-  void DoCollectSources (std::string path, const TraceContext &context, 
-                         TraceResolver::SourceCollection *collection) const;
-  void DoTraceAll (std::ostream &os, const TraceContext &context) const;
   bool Check (void) const;
   bool CheckLoose (void) const;
   /**
--- a/src/core/wscript	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/core/wscript	Mon Mar 03 01:58:57 2008 +0100
@@ -42,16 +42,7 @@
         'command-line.cc',
         'type-name.cc',
         'random-variable-default-value.cc',
-        'variable-tracer-test.cc',
-        'trace-context.cc',
-        'trace-context-element.cc',
-        'trace-resolver.cc',
-        'callback-trace-source.cc',
-        'composite-trace-resolver.cc',
-        'trace-doc.cc',
-        'trace-source.cc',
         'type-traits-test.cc',
-        'array-trace-resolver.cc',
         'type-id-default-value.cc',
         'attribute.cc',
         'boolean.cc',
@@ -98,17 +89,6 @@
         'type-name.h',
         'type-traits.h',
         'random-variable-default-value.h',
-        'trace-source.h',
-        'uv-trace-source.h',
-        'sv-trace-source.h',
-        'fv-trace-source.h',
-        'callback-trace-source.h',
-        'trace-context.h',
-        'trace-context-element.h',
-        'trace-resolver.h',
-        'composite-trace-resolver.h',
-        'array-trace-resolver.h',
-        'trace-doc.h',
         'int-to-type.h',
         'type-id-default-value.h',
         'attribute.h',
--- a/src/devices/wifi/mac-low.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/devices/wifi/mac-low.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -31,7 +31,6 @@
 #include "wifi-mac.h"
 #include "mac-stations.h"
 #include "wifi-mac-parameters.h"
-#include "ns3/composite-trace-resolver.h"
 
 NS_LOG_COMPONENT_DEFINE ("MacLow");
 
--- a/src/internet-node/arp-l3-protocol.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/arp-l3-protocol.h	Mon Mar 03 01:58:57 2008 +0100
@@ -32,7 +32,6 @@
 class NetDevice;
 class Node;
 class Packet;
-class TraceResolver;
 class TraceContext;
 /**
  * \brief An implementation of the ARP protocol
--- a/src/internet-node/ascii-trace.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/ascii-trace.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -21,7 +21,6 @@
 #include "ascii-trace.h"
 
 #include "ns3/config.h"
-#include "ns3/trace-context.h"
 #include "ns3/simulator.h"
 #include "ns3/node.h"
 #include "ns3/packet.h"
--- a/src/internet-node/ipv4-interface.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/ipv4-interface.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -22,7 +22,6 @@
 #include "ipv4-interface.h"
 #include "ns3/ipv4-address.h"
 #include "ns3/net-device.h"
-#include "ns3/trace-resolver.h"
 #include "ns3/log.h"
 #include "ns3/packet.h"
 
--- a/src/internet-node/ipv4-interface.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/ipv4-interface.h	Mon Mar 03 01:58:57 2008 +0100
@@ -32,7 +32,6 @@
 
 class NetDevice;
 class Packet;
-class TraceResolver;
 class TraceContext;
 
 /**
--- a/src/internet-node/ipv4-static-routing.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/ipv4-static-routing.h	Mon Mar 03 01:58:57 2008 +0100
@@ -25,8 +25,6 @@
 
 #include <list>
 #include <stdint.h>
-#include "ns3/callback-trace-source.h"
-#include "ns3/array-trace-resolver.h"
 #include "ns3/ipv4-address.h"
 #include "ipv4-header.h"
 #include "ns3/ptr.h"
@@ -41,8 +39,6 @@
 class Ipv4Header;
 class Ipv4Route;
 class Node;
-class TraceResolver;
-class TraceContext;
 
 
 /**
--- a/src/internet-node/tcp-l4-protocol.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/tcp-l4-protocol.h	Mon Mar 03 01:58:57 2008 +0100
@@ -36,7 +36,6 @@
 namespace ns3 {
 
 class Node;
-class TraceResolver;
 class TraceContext;
 class Socket;
 class TcpHeader;
--- a/src/internet-node/udp-l4-protocol.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/internet-node/udp-l4-protocol.h	Mon Mar 03 01:58:57 2008 +0100
@@ -33,7 +33,6 @@
 namespace ns3 {
 
 class Node;
-class TraceResolver;
 class TraceContext;
 class Socket;
 /**
--- a/src/mobility/hierarchical-mobility-model.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/mobility/hierarchical-mobility-model.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -56,7 +56,7 @@
       notifier = CreateObject<MobilityModelNotifier> ();
       m_child->AggregateObject (notifier);
     }
-  notifier->TraceConnect ("/course-changed", MakeCallback (&HierarchicalMobilityModel::ChildChanged, this));
+  notifier->TraceSourceConnect ("CourseChanged", MakeCallback (&HierarchicalMobilityModel::ChildChanged, this));
 }
 
 void 
@@ -70,7 +70,7 @@
       notifier = CreateObject<MobilityModelNotifier> ();
       m_parent->AggregateObject (notifier);
     }
-  notifier->TraceConnect ("/course-changed", MakeCallback (&HierarchicalMobilityModel::ParentChanged, this));
+  notifier->TraceSourceConnect ("CourseChanged", MakeCallback (&HierarchicalMobilityModel::ParentChanged, this));
 }
 
 
@@ -118,13 +118,13 @@
 }
 
 void 
-HierarchicalMobilityModel::ParentChanged (const TraceContext &context, Ptr<const MobilityModel> model)
+HierarchicalMobilityModel::ParentChanged (Ptr<const MobilityModel> model)
 {
   MobilityModel::NotifyCourseChange ();
 }
 
 void 
-HierarchicalMobilityModel::ChildChanged (const TraceContext &context, Ptr<const MobilityModel> model)
+HierarchicalMobilityModel::ChildChanged (Ptr<const MobilityModel> model)
 {
   MobilityModel::NotifyCourseChange ();
 }
--- a/src/mobility/hierarchical-mobility-model.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/mobility/hierarchical-mobility-model.h	Mon Mar 03 01:58:57 2008 +0100
@@ -60,8 +60,8 @@
 
   void SetChild (Ptr<MobilityModel> model);
   void SetParent (Ptr<MobilityModel> model);
-  void ParentChanged (const TraceContext &context, Ptr<const MobilityModel> model);
-  void ChildChanged (const TraceContext &context, Ptr<const MobilityModel> model);
+  void ParentChanged (Ptr<const MobilityModel> model);
+  void ChildChanged (Ptr<const MobilityModel> model);
 
   Ptr<MobilityModel> m_child;
   Ptr<MobilityModel> m_parent;
--- a/src/node/net-device.h	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/node/net-device.h	Mon Mar 03 01:58:57 2008 +0100
@@ -33,7 +33,6 @@
 namespace ns3 {
 
 class Node;
-class TraceResolver;
 class TraceContext;
 class Channel;
 class Packet;
--- a/src/node/node.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/src/node/node.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -25,7 +25,6 @@
 #include "packet-socket-factory.h"
 #include "ns3/packet.h"
 #include "ns3/simulator.h"
-#include "ns3/composite-trace-resolver.h"
 #include "ns3/object-vector.h"
 #include "ns3/uinteger.h"
 
--- a/utils/print-introspected-doxygen.cc	Sun Mar 02 22:53:11 2008 +0100
+++ b/utils/print-introspected-doxygen.cc	Mon Mar 03 01:58:57 2008 +0100
@@ -1,6 +1,5 @@
 #include "ns3/internet-node.h"
 #include "ns3/ptr.h"
-#include "ns3/trace-resolver.h"
 #include "ns3/node-list.h"
 #include "ns3/point-to-point-net-device.h"
 #include "ns3/csma-net-device.h"
@@ -12,77 +11,6 @@
 
 using namespace ns3;
 
-void
-PrintSimpleText (const TraceResolver::SourceCollection *sources, std::ostream &os)
-{
-  for (TraceResolver::SourceCollection::Iterator i = sources->Begin (); i != sources->End (); i++)
-    {
-      os << "source=" << i->path << std::endl;
-      os << "TraceContext=[";
-      i->context.PrintAvailable (os, ",");
-      os << "]" << std::endl;
-      os << "help=\"" << i->doc.GetHelp () << "\"" << std::endl;
-      os << "void TraceSinkCallback (const TraceContext &";
-      for (TraceDoc::Iterator k = i->doc.ArgsBegin (); k != i->doc.ArgsEnd (); k++)
-        {
-          os << ", " << k->first;
-        }
-      os << ")" << std::endl;
-      os << "argument 1  --  the trace context associated to the connected trace source." << std::endl;
-      uint32_t k = 2;
-      for (TraceDoc::Iterator j = i->doc.ArgsBegin (); j != i->doc.ArgsEnd (); j++)
-        {
-          os << "argument " << k << "  --  " << j->second << "." << std::endl;
-          k++;
-        }
-      os << std::endl;
-    }
-}
-static void
-PrintDoxygenText (const TraceResolver::SourceCollection *sources, std::ostream &os)
-{
-  uint32_t z = 0;
-  for (TraceResolver::SourceCollection::Iterator i = sources->Begin (); i != sources->End (); i++)
-    {
-      os << "///" << std::endl;
-      os << "/// \\ingroup TraceSourceList" << std::endl; 
-      os << "/// \\brief " << i->doc.GetHelp () << std::endl;
-      os << "/// \\param arg1 the trace context associated to the connected trace source." << std::endl;
-      uint32_t j = 2;
-      for (TraceDoc::Iterator l = i->doc.ArgsBegin (); l != i->doc.ArgsEnd (); l++)
-        {
-          os << "/// \\param arg" << j << " " << l->second << "." << std::endl;
-          j++;
-        }
-      os << "///" << std::endl;
-      os << "///" << std::endl;
-      os << "/// The path to this trace source is: <b><tt>\"" << i->path << "\"</tt></b>." << std::endl;
-      os << "///" << std::endl;
-      if (i->context.Begin ().IsLast ())
-        {
-          os << "/// No data can be extracted from \\p arg1 with ns3::TraceContext::GetElement." << std::endl;
-        }
-      else
-        {
-          os << "/// The following classes can be extracted from \\p arg1 with " << std::endl;
-          os << "/// ns3::TraceContext::GetElement:" << std::endl;
-          for (TraceContext::Iterator m = i->context.Begin (); !m.IsLast (); m.Next ())
-            {
-              os << "///  - " << m.Get () << std::endl;
-            }
-        }
-      os << "void TraceSinkCallback" << z << " (const TraceContext & arg1" ;
-      j = 2;
-      for (TraceDoc::Iterator k = i->doc.ArgsBegin (); k != i->doc.ArgsEnd (); k++)
-        {
-          os << ", " << k->first << " arg" << j;
-          j++;
-        }
-      os << ");" << std::endl;
-      os << std::endl;
-      z++;
-    }
-}
 
 static void
 PrintOneDefaultValue (DefaultValueBase *value, std::ostream &os)
@@ -131,10 +59,6 @@
   node->AddDevice (csma);
   csma->AddQueue (CreateObject<DropTailQueue> ());
 
-  TraceResolver::SourceCollection collection;
-  //NodeList::GetTraceResolver ()->CollectSources ("", TraceContext (), &collection);
-  PrintDoxygenText (&collection, std::cout);
-
 
   PrintDefaultValuesDoxygen (std::cout);