summaryrefslogtreecommitdiff
path: root/2005/i
diff options
context:
space:
mode:
authorgaillaro2005-06-14 20:54:51 +0000
committergaillaro2005-06-14 20:54:51 +0000
commit312e73d4838863844e82b536584101c9279b5bdb (patch)
tree99aa2ba6dd9ddd156cb4146adc2549f98677cd23 /2005/i
parent002211ac2d446eb32bc9b1660affdedf95f6263e (diff)
controle de la LED de la webcam
Diffstat (limited to '2005/i')
-rw-r--r--2005/i/robert/src/video4linux/video4linux.cc18
-rw-r--r--2005/i/robert/src/video4linux/video4linux.hh4
2 files changed, 21 insertions, 1 deletions
diff --git a/2005/i/robert/src/video4linux/video4linux.cc b/2005/i/robert/src/video4linux/video4linux.cc
index f1ad9e2..70352e9 100644
--- a/2005/i/robert/src/video4linux/video4linux.cc
+++ b/2005/i/robert/src/video4linux/video4linux.cc
@@ -141,6 +141,24 @@ Video4Linux::wait (int timeout/*-1*/)
return fds.wait (timeout);
}
+/// Set led on/off
+void
+Video4Linux::setLed (bool on)
+{
+ struct pwc_leds LED;
+ if (on)
+ {
+ LED.led_on = 100;
+ LED.led_off = 0;
+ }
+ else
+ {
+ LED.led_on = 0;
+ LED.led_off = 0;
+ }
+ ioctl(fd_, VIDIOCPWCSLED, &LED);
+}
+
/// Ouvre le périphérique.
void
Video4Linux::open (const char *dev)
diff --git a/2005/i/robert/src/video4linux/video4linux.hh b/2005/i/robert/src/video4linux/video4linux.hh
index 4fd9949..f9d1206 100644
--- a/2005/i/robert/src/video4linux/video4linux.hh
+++ b/2005/i/robert/src/video4linux/video4linux.hh
@@ -42,7 +42,7 @@ class Video4Linux : public ImageReader
double bpp_;
void *map_;
video_mmap mmap_;
-
+
public:
/// Constructeur.
Video4Linux (const char *dev, int width, int height,
@@ -59,6 +59,8 @@ class Video4Linux : public ImageReader
void calibrate (void);
/// Attend qu'une image soit disponible, retourne true si oui.
bool wait (int timeout = -1);
+ /// Set led on/off
+ void setLed (bool on);
/// Active/désactive la calibration automatique de la luminosité
//void setAdaptive (int a);
protected: