diff options
author | Lars Hanisch <dvb@flensrocker.de> | 2011-02-02 21:44:20 +0100 |
---|---|---|
committer | Lars Hanisch <dvb@flensrocker.de> | 2011-02-02 21:44:20 +0100 |
commit | 6fb28a2e29faf239b1b14fcac981d560a7550e65 (patch) | |
tree | 0fe226aad44f26d2d375fa9320bcfa2f2135123f /monitor.h | |
parent | 8a8770d8b8b8d19e5f7d07628f742957d1ade4f1 (diff) | |
download | vdr-plugin-dynamite-6fb28a2e29faf239b1b14fcac981d560a7550e65.tar.gz vdr-plugin-dynamite-6fb28a2e29faf239b1b14fcac981d560a7550e65.tar.bz2 |
add generic udev-filter
Other plugins can add a filter for different subsystems and devnodes.
example:
AddUdevMonitor video4linux /dev/video
If udev signals an "add"-event whose devnode starts with "/dev/video"
the whole devnode is queued for attaching.
Diffstat (limited to 'monitor.h')
-rw-r--r-- | monitor.h | 16 |
1 files changed, 15 insertions, 1 deletions
@@ -54,5 +54,19 @@ class cUdevDvbFilter : public cUdevFilter { protected: virtual void Process(cUdevDevice &Device); }; - + +class cUdevPatternFilter : public cUdevFilter { +public: + static bool AddFilter(const char *Subsystem, const char *Pattern); +protected: + static cMutex filtersMutex; + static cList<cUdevPatternFilter> filters; + + virtual ~cUdevPatternFilter(void); + virtual void Process(cUdevDevice &Device); +private: + cUdevPatternFilter(const char *Pattern); + cString pattern; + }; + #endif // __DYNAMITEMONITOR_H |