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

qcam.h

00001 
00002 /*
00003  *    QuickCam
00004  *    --------
00005  *
00006  *    QuickCam code by Thomas Davis
00007  *    Additional QuickCam code Scott Laird <scott@laird.com>
00008  *    Polished and cleaned up by Michael Rudolph 
00009  *
00010  *    $Id: qcam.h,v 1.1 2000/10/09 03:34:17 uli Exp $
00011  */
00012 
00013 #ifdef HAVE_CONFIG_H
00014 #include <config.h>
00015 #endif
00016 
00017 #if defined(HAVE_QUICKCAM)
00018  
00019 #if !defined (_QCAM_H)
00020 #define _QCAM_H
00021 
00022 
00023 #if defined(__cplusplus)
00024 extern "C" {
00025 #endif
00026 
00027 #if !defined(_BYTE)
00028 #define _BYTE
00029 typedef unsigned char BYTE;
00030 #endif
00031 
00032 
00033 //#if defined(_IMPLEMENT_QCAM)
00034 
00035 #define QC_BRIGHTNESS   0x0b
00036 #define QC_CONTRAST     0x19
00037 #define QC_WHITEBALANCE 0x1f
00038 #define QC_XFERMODE     0x07
00039 #define QC_XSIZE        0x13
00040 #define QC_YSIZE        0x11
00041 #define QC_UNK1         0x0d
00042 #define QC_UNK2         0x0f
00043 #define MAX_AUTO_ADJUST 15
00044 #define FILE_QCAM       "/tmp/quickcam"
00045 #define QC_SENDSTATUS   41
00046 
00047 //#endif
00048 
00049 /*
00050  *    structure definition of quick cam configuration paramters
00051  */
00052 
00053 typedef struct _QC_CONFIG
00054 {
00055   int quickcam_port;
00056   int colour;
00057   int brightness;
00058   int whitebalance;
00059   int blackbalance;
00060   int contrast;
00061   int saturation;
00062   int hue;
00063   int unk1;
00064   int unk2;
00065   int bpp6;
00066   int biMode;
00067   int canDoBi;
00068   int zoom;
00069   int xfermode;
00070   int speed;
00071   int debugFlag;
00072   int xsize;
00073   int ysize;
00074   double thresh;
00075 } QC_CONFIG;
00076 
00077 
00078 /*
00079  *    library function prototypes
00080  */
00081 
00082 int  QC_find(void);
00083 void QC_reset(int port);
00084 int  QC_waitfor_bi(int port);
00085 int  QC_getversion(int port, int *col, int *cam, int *con);
00086 int  QC_getstatus(int port);
00087 int  QC_sendbyte(int port, int value);
00088 int  QC_sendcmd(int cmd, int value);
00089 void QC_set_brightness();
00090 void QC_set_size();
00091 void QC_set_contrast();
00092 void QC_set_whitebalance();
00093 void QC_set_blackbalance();
00094 void QC_set_hue();
00095 void QC_set_saturation();
00096 void QC_set_speed();
00097 void QC_set_all();
00098 void QC_Get4bppImageUni(BYTE * buffer);
00099 void QC_CGet4bppImageUni(BYTE * buffer);
00100 int  QC_init();
00101 void QC_exit();
00102 
00103 
00104 extern QC_CONFIG _QCConfig;
00105 
00106 #if defined(__cplusplus)
00107 }
00108 #endif
00109 
00110 #endif /* _QCAM_H */
00111 
00112 #endif /* HAVE_QUICKCAM */

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