25 #ifndef _FIREVISION_CAMS_NAO_H_
26 #define _FIREVISION_CAMS_NAO_H_
28 #include <core/exceptions/software.h>
29 #include <fvcams/control/source.h>
30 #include <fvcams/v4l2.h>
34 #define DSPIC_I2C_ADDR 0x8
35 #define DSPIC_SWITCH_REG 220
36 #define I2C_SLAVE 0x0703
38 namespace firevision {
40 class CameraArgumentParser;
48 virtual unsigned char source();
54 static int open_dev(
const char *i2c);
55 static void close_dev(
int dev,
const char *error = 0);
56 static int get_open_cam_id(
int dev);
57 static void switch_to_cam_id(
int dev,
int cam_id);
58 static void init_cam(
const char *cam);
61 char *i2c_device_name_;
Camera source control interface.
Video4Linux 2 camera with Nao-specific extensions.
NaoCamera(const CameraArgumentParser *cap)
Constructor.
virtual unsigned char source()
Return which cam is currently being used.
virtual bool exposure_auto()
Return whether auto exposure is enabled.
virtual void set_source(unsigned char source)
Switch currently used camera.
virtual void set_exposure_auto(bool enabled)
Enable/disable auto exposure.
Video4Linux 2 camera access implementation.