diff vamp-sdk/PluginAdapter.h @ 53:74822738965b

* Some doc updates
author cannam
date Wed, 21 Mar 2007 14:15:25 +0000
parents be8fdfe25693
children 6683f99107cf
line wrap: on
line diff
--- a/vamp-sdk/PluginAdapter.h	Mon Mar 12 11:00:11 2007 +0000
+++ b/vamp-sdk/PluginAdapter.h	Wed Mar 21 14:15:25 2007 +0000
@@ -45,10 +45,28 @@
 
 namespace Vamp {
 
+/**
+ * PluginAdapter and PluginAdapterBase provide a wrapper class that a
+ * plugin library can use to make its C++ Vamp::Plugin objects
+ * available through the Vamp C API.
+ * 
+ * Almost all Vamp plugin libraries will want to make use of this.  To
+ * do so, all they need to do is declare a PluginAdapter<T> for each
+ * plugin class T in their library.  It's very simple, and you need to
+ * know absolutely nothing about how it works in order to use it.
+ * Just cut and paste from an existing plugin's discovery function.
+ * @see vampGetPluginDescriptor
+ */
+
 class PluginAdapterBase
 {
 public:
     virtual ~PluginAdapterBase();
+
+    /**
+     * Return a VampPluginDescriptor describing the plugin that is
+     * wrapped by this adapter.
+     */
     const VampPluginDescriptor *getDescriptor();
 
 protected:
@@ -126,6 +144,13 @@
     void resizeFV(Plugin *plugin, int n, int j, size_t sz);
 };
 
+/**
+ * PluginAdapter turns a PluginAdapterBase into a specific wrapper for
+ * a particular plugin implementation.
+ *
+ * See PluginAdapterBase.
+ */
+
 template <typename P>
 class PluginAdapter : public PluginAdapterBase
 {