#ifndef __EXTN_LIRCWATCH_H
#define __EXTB_LIRCWATCH_H

#include <vdr/thread.h>

class cExtBLircWatch : private cThread {
private:
  enum { LIRC_KEY_BUF = 30, LIRC_BUFFER_SIZE = 128 };
  bool watch_success;
  bool watch;
  int m_fd;

 int video_modes;
  int scart_boot_modes;
  bool video_found;
  bool scart_boot_found;
  volatile bool m_bShutdown;
protected:
  virtual void Action(void);
  void close();
public:
  cExtBLircWatch(const char *DeviceName);
  virtual ~cExtBLircWatch();
  void StartWatch(void);
  bool WatchSuccess(void) { return (watch_success); }
  int GetVideoModes(void) { return (video_modes); }
  int GetScartBootModes(void) { return (scart_boot_modes); }
};

#endif
