Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Related Pages  

Camera.h

00001 /* Camera.h
00002  * Last modified:
00003  * Authors: Daniel Venkitachalam <venki-d@ee.uwa.edu.au>
00004  *          Leon Koch <leon@redfishsoftware.com.au>
00005  */
00010 #ifndef CAMERA_H
00011 #define CAMERA_H
00012 
00013 #ifdef HAVE_CONFIG_H
00014 #include <config.h>
00015 #endif
00016 
00017 #include <string.h>
00018 #include <sys/types.h>
00019 #include <sys/stat.h>
00020 #include <fcntl.h>
00021 
00022 #include "FW/labImage.h"
00023 
00024 #define DEFAULT_BLACK 0
00025 #define DEFAULT_WHITE 255
00026 #define DEFAULT_WIDTH 82
00027 #define DEFAULT_HEIGHT 62
00028 #define DEFAULT_BPP 24
00029 
00030 typedef unsigned char BYTE;
00031 
00032 class Camera {
00033  public:
00037         typedef struct {
00039                 int width;
00041                 int height;
00043                 int bpp;
00044         } CamInfo;
00045 
00049         virtual bool open(void) = 0;
00050 
00052         virtual void close(void) = 0;
00053 
00055         virtual void read(Picture *p_frame) = 0;
00056 
00058         virtual bool iscolor(void) { return false; };
00059 
00061         virtual void get_info(CamInfo *info) = 0;
00062 
00066         virtual void setBrightness(int value) = 0;
00068         virtual void setContrast(int value) = 0;
00070         virtual void setSaturation(int value) = 0;
00075         virtual void setAutoBrightness(bool on) = 0;
00077         virtual int getBrightness(void) = 0;
00079         virtual int getContrast(void) = 0;
00081         virtual int getSaturation(void) = 0;
00083         virtual bool getAutoBrightness(void) = 0;
00084         
00085 };
00086 
00087 #endif /* Camera_h */

Generated on Tue Apr 1 11:01:16 2003 for ImprovQT by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002