Mercurial > hg > vamp-plugin-sdk
comparison vamp-sdk/PluginBase.h @ 47:be8fdfe25693
* Change input buffers arg to process from float ** to const float *const *
to avoid plugins modifying their input data
* Some improvements to comments
* Fix stupidity in frequency-domain input passing (there are n/2+1 values,
not n/2)
author | cannam |
---|---|
date | Fri, 08 Dec 2006 17:39:32 +0000 |
parents | 3bbe244611bb |
children | aa64a46320d4 |
comparison
equal
deleted
inserted
replaced
46:2858c897d90f | 47:be8fdfe25693 |
---|---|
61 virtual ~PluginBase() { } | 61 virtual ~PluginBase() { } |
62 | 62 |
63 /** | 63 /** |
64 * Get the computer-usable name of the plugin. This should be | 64 * Get the computer-usable name of the plugin. This should be |
65 * reasonably short and contain no whitespace or punctuation | 65 * reasonably short and contain no whitespace or punctuation |
66 * characters. It may be shown to the user, but it won't be the | 66 * characters. It may only contain the characters [a-zA-Z0-9_]. |
67 * main method for a user to identify a plugin (that will be the | 67 * This is the authoritative way for a program to identify a |
68 * description, below). This may only contain the characters | 68 * plugin within a given library. |
69 * [a-zA-Z0-9_]. | 69 * |
70 * This text may be visible to the user, but it should not be the | |
71 * main text used to identify a plugin to the user (that will be | |
72 * the description, below). | |
70 */ | 73 */ |
71 virtual std::string getName() const = 0; | 74 virtual std::string getName() const = 0; |
72 | 75 |
73 /** | 76 /** |
74 * Get a human-readable description of the plugin. This should be | 77 * Get a human-readable description or title of the plugin. This |
75 * self-contained, as it may be shown to the user in isolation | 78 * should be brief and self-contained, as it may be used to |
76 * without also showing the plugin's "name". | 79 * identify the plugin to the user in isolation (i.e. without also |
80 * showing the plugin's "name"). | |
77 */ | 81 */ |
78 virtual std::string getDescription() const = 0; | 82 virtual std::string getDescription() const = 0; |
79 | 83 |
80 /** | 84 /** |
81 * Get the name of the author or vendor of the plugin in | 85 * Get the name of the author or vendor of the plugin in |
82 * human-readable form. | 86 * human-readable form. This should be a short identifying text, |
87 * as it may be used to label plugins from the same source in a | |
88 * menu or similar. | |
83 */ | 89 */ |
84 virtual std::string getMaker() const = 0; | 90 virtual std::string getMaker() const = 0; |
85 | 91 |
86 /** | 92 /** |
93 * Get the copyright statement or licensing summary for the | |
94 * plugin. This can be an informative text, without the same | |
95 * presentation constraints as mentioned for getMaker above. | |
96 */ | |
97 virtual std::string getCopyright() const = 0; | |
98 | |
99 /** | |
87 * Get the version number of the plugin. | 100 * Get the version number of the plugin. |
88 */ | 101 */ |
89 virtual int getPluginVersion() const = 0; | 102 virtual int getPluginVersion() const = 0; |
90 | |
91 /** | |
92 * Get the copyright statement or licensing summary of the plugin. | |
93 */ | |
94 virtual std::string getCopyright() const = 0; | |
95 | |
96 /** | |
97 * Get the type of plugin (e.g. DSSI, etc). This is likely to be | |
98 * implemented by the immediate subclass, not by actual plugins. | |
99 */ | |
100 virtual std::string getType() const = 0; | |
101 | 103 |
102 | 104 |
103 struct ParameterDescriptor | 105 struct ParameterDescriptor |
104 { | 106 { |
105 /** | 107 /** |
202 /** | 204 /** |
203 * Select a program. (If the given program name is not one of the | 205 * Select a program. (If the given program name is not one of the |
204 * available programs, do nothing.) | 206 * available programs, do nothing.) |
205 */ | 207 */ |
206 virtual void selectProgram(std::string) { } | 208 virtual void selectProgram(std::string) { } |
209 | |
210 /** | |
211 * Get the type of plugin. This is to be implemented by the | |
212 * immediate subclass, not by actual plugins. Do not attempt to | |
213 * implement this in plugin code. | |
214 */ | |
215 virtual std::string getType() const = 0; | |
207 }; | 216 }; |
208 | 217 |
209 } | 218 } |
210 | 219 |
211 #endif | 220 #endif |