src/core/trace-resolver.h
changeset 1370 d5339e1c95df
parent 1368 e75dc1a2a5fb
child 1371 bebf690257c9
--- a/src/core/trace-resolver.h	Mon Aug 27 20:45:49 2007 +0200
+++ b/src/core/trace-resolver.h	Mon Aug 27 20:46:10 2007 +0200
@@ -71,6 +71,26 @@
   virtual void Disconnect (std::string path, CallbackBase const &cb) = 0;
 
   virtual void PrintAvailable (std::string path, const TraceContext &context, std::ostream &os) = 0;
+
+
+  class SourceCollection
+  {
+  public:
+    void Print (std::ostream &os) const;
+    void AddUnique (std::string path, const TraceContext &context,
+                    std::string help);
+  private:
+    struct Source
+    {
+      std::string path;
+      TraceContext context;
+      std::string help;
+    };
+    typedef std::vector<struct Source> SourceVector;
+    SourceVector m_sources;
+  };
+  virtual void CollectSources (std::string path, const TraceContext &context, 
+                               SourceCollection *collection) {}
 protected:
   /**
    * \param path a namespace path