summaryrefslogtreecommitdiff
path: root/PLUGINS.html
diff options
context:
space:
mode:
Diffstat (limited to 'PLUGINS.html')
-rw-r--r--PLUGINS.html19
1 files changed, 17 insertions, 2 deletions
diff --git a/PLUGINS.html b/PLUGINS.html
index 7e9bc286..39b5031e 100644
--- a/PLUGINS.html
+++ b/PLUGINS.html
@@ -2025,8 +2025,9 @@ operator!
<b>Device hooks</b>
<p>
VDR has builtin facilities that select which device is able to provide a given
-transponder. However, there may be situations where the setup is so special
-that it requires considerations that exceed the scope of the core VDR code.
+transponder, or, which device may provide EIT data. However, there may be
+situations where the setup is so special that it requires considerations that
+exceed the scope of the core VDR code.
This is where <i>device hooks</i> can be used.
<p><table><tr><td class="code"><pre>
@@ -2034,6 +2035,7 @@ class cMyDeviceHook : public cDeviceHook {
public:
cMyDeviceHook(void);
virtual bool DeviceProvidesTransponder(const cDevice *Device, const cChannel *Channel) const;
+ virtual bool DeviceProvidesEIT(const cDevice *Device) const;
};
</pre></td></tr></table><p>
@@ -2050,6 +2052,19 @@ bool cMyDeviceHook::DeviceProvidesTransponder(const cDevice *Device, const cChan
}
</pre></td></tr></table><p>
+In its <tt>DeviceProvidesEIT()</tt> function the device hook can take
+whatever actions are necessary to determine whether the given Device can
+provide EIT data, as in
+
+<p><table><tr><td class="code"><pre>
+bool cMyDeviceHook::DeviceProvidesEIT(const cDevice *Device) const
+{
+ if (<i>condition where Device can't provide EIT data</i>)
+ return false;
+ return true;
+}
+</pre></td></tr></table><p>
+
A plugin that creates a derived cDeviceHook shall do so in its <tt>Initialize()</tt>
function, as in