The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/i386/include/qcam.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  * Connectix QuickCam parallel-port camera video capture driver.
    3  * Copyright (c) 1996, Paul Traina.
    4  *
    5  * This driver is based in part on work
    6  * Copyright (c) 1996, Thomas Davis.
    7  *
    8  * QuickCam(TM) is a registered trademark of Connectix Inc.
    9  * Use this driver at your own risk, it is not warranted by
   10  * Connectix or the authors.
   11  *
   12  * Redistribution and use in source and binary forms, with or without
   13  * modification, are permitted provided that the following conditions
   14  * are met:
   15  * 1. Redistributions of source code must retain the above copyright
   16  *    notice, this list of conditions and the following disclaimer
   17  *    in this position and unchanged.
   18  * 2. Redistributions in binary form must reproduce the above copyright
   19  *    notice, this list of conditions and the following disclaimer in the
   20  *    documentation and/or other materials provided with the distribution.
   21  * 3. The name of the author may not be used to endorse or promote products
   22  *    derived from this software withough specific prior written permission
   23  *
   24  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
   25  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   26  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
   27  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
   28  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
   29  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
   30  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
   31  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   32  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
   33  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   34  *
   35  * NOTE: this file contains the sole public interface between the driver
   36  * and user applications.  Every effort should be made to retain comaptibility
   37  * with the decided upon standard interface shared between Linux and
   38  * FreeBSD.  Currently, FreeBSD uses a different (richer) interface than
   39  * the Linux.
   40  *
   41  * WARNING WARNING: The contents of this structure is in flux,
   42  *                  recompile often, the driver will change the version
   43  *                  number when the interface changes for now...
   44  */
   45 
   46 #ifndef _QUICKCAM_H
   47 #define _QUICKCAM_H 1
   48 
   49 #ifndef _IOR
   50 /* SCO doesn't have _IOR/_IOW for ioctls, so fake it out to keep things clean*/
   51 #define _IOR(cat, func, data)   (((cat) << 8) | (func))
   52 #define _IOW(cat, func, data)   (((cat) << 8) | (func))
   53 #endif
   54 
   55 /*
   56  * ioctls
   57  */
   58 #define QC_GET  _IOR('S', 1, struct qcam)       /* get parameter structure */
   59 #define QC_SET  _IOW('S', 2, struct qcam)       /* set parameter structure */
   60 
   61 #define QC_IOCTL_VERSION        3               /* version of the structure */
   62 
   63 struct qcam {
   64         int     qc_version;                     /* version of qcam structure */
   65         int     qc_xsize;                       /* size in pixels */
   66         int     qc_ysize;                       /* size in pixels */
   67         int     qc_xorigin;                     /* x origin */
   68         int     qc_yorigin;                     /* y origin */
   69         int     qc_bpp;                         /* bits per pixel (4 or 6) */
   70         int     qc_zoom;                        /* zoom mode */
   71         int     qc_exposure;                    /* length of exposure */
   72         u_char  qc_brightness;                  /* 0..255 */
   73         u_char  qc_whitebalance;                /* 0..255 */
   74         u_char  qc_contrast;                    /* 0..255 */
   75 };
   76 
   77 #define QC_MAX_XSIZE            320             /* pixels */
   78 #define QC_MAX_YSIZE            240             /* pixels */
   79 
   80 /*
   81  * zoom flags
   82  */
   83 #define QC_ZOOM_100             0x00            /* no zoom */
   84 #define QC_ZOOM_150             0x01            /* 1.5x */
   85 #define QC_ZOOM_200             0x02            /* 2.0x */
   86 
   87 #endif

Cache object: 92637ab9777ec4f6d9ef764f296d90a3


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.