Feature request: suggestion for cPlugin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Udo Richter wrote:
> ...
> Ok, here's a first implementation of what I had in mind. The attached
> patch implements the interface for VDR 1.3.20 and newer. PLUGINS.html
> and newplugin still need to be updated. ;)
> 
> The attached vdr-extintf-0.1.0.tgz implements two sample plugins that do
> some communication: Direct communication to a specific plugin, detecting
> presence of plugins that offer a service, use a service provided by some
> plugin and broadcast a message to all interested plugins.
> Install as usual. Load the two plugins with vdr -P extcli -P extsvr.
> 
> @Plugin developers:
> Suggestions, reviews and comments are welcome!
> 
> Cheers,
> 
> Udo
> 
> ...
> +  virtual bool ExtensionInterface(const char *ExtensionId, void *Data = NULL);
> ...
> +  static cPlugin *CallFirstExtension(const char *ExtensionId, void *Data = NULL);
> +  static cPlugin *CallPluginExtension(const char *PluginName, const char *ExtensionId, void *Data = NULL);
> +  static bool CallAllExtensions(const char *ExtensionId, void *Data = NULL);

I'm not really fond of this "extension" thing.
IMHO this is more of an "inter plugin communication" thing than an "extension".
Or, maybe "service" is the right name. After all, that's what it is: a plugin
can offer a service that other plugins can make use of.

So I suggest s/Extension/Service/g, and plain "Service" instead of "ExtensionInterface".

You also might want to give some guidelines as to how to create
those "ServiceIDs" - otherwise most likely every plugin will come
up with a totally different scheme.

Klaus


[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux