Feature request: suggestion for cPlugin

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

 



cwieninger@xxxxxx wrote:
> I was asked, if I could expose some functionality of epgsearch (searching the EPG, 
> calling the extended timer edit menu) to other plugins. I plan to do this, like the timeline 
> plugin does to check for timer conflicts in other plugins:

Another way to tunnel information from one plugin to another is to use
SetupParse("==epgsearch-tunnel-v1.0==",(char*)&data) for it. If, for
some reason, the plugin doesn't know this tunnel (wrong version, wrong
plugin), the function will most likely ignore this call and return false.


A far better way would be of course if VDR's cPlugin would have such a
general purpose interface. My approach would be like this:

  virtual bool ExtensionInterface(const char *ExtensionId, void *Data)

Plugins return false unless ExtensionId matches a known unique protocol
ID. If the plugin supports this protocol, true will be returned in any
case. If *Data is not NULL, it points to a protocol-specific buffer. If
*Data is NULL, this is just a protocol-supported call.

cPluginManager should have methods to call ExtensionInterface for all
plugins (broadcast-like), or for all plugins until one plugin returns
true (find one that offers the interface).


@Klaus: I can implement that if interested.

Cheers,

Udo


[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