API Guide Home
(Online version only)

palmOneCameraCommon.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002  * Copyright (c) 2004-2005 palmOne, Inc. or its subsidiaries.
00003  * All rights reserved.
00004  ******************************************************************************/
00005 /**
00006  * @defgroup    Camera Camera Library
00007  * @brief       This library provides camera support for Zire 72 and Treo 650
00008  *              devices.
00009  *
00010  * Developers who want to provide camera support to their application on Zire 72
00011  * and Treo 650 devices should use Camera Manager Library API instead of the old
00012  * Camera Library.
00013  *
00014  * @{
00015  * @}
00016  */
00017 /**
00018  * @ingroup Camera
00019  */
00020 
00021 /**
00022  * @file    palmOneCameraCommon.h
00023  * @version 3.0
00024  * @brief   Public 68K common header file for camera support for Zire 72 and Treo 650 devices.
00025  *
00026  * This file contains the library constants and error codes used in the APIs.
00027  * <hr>
00028  */
00029 
00030 #ifndef _PALMONECAMERAMGRCOMMON_H_
00031 #define _PALMONECAMERAMGRCOMMON_H_
00032 
00033 #define     kCamLibType     'libr'              /**< Default library type */
00034 #define     kCamLibCreator  'camL'              /**< Camera Manager library creator ID */
00035 #define     kCamLibName     "CameraLib-camL"    /**< Camera Manager library name */
00036 
00037 
00038 /**
00039  * @name Library Versions
00040  */
00041 /*@{*/
00042 #define     kCamLibVersion1 sysMakeROMVersion(1, 0, 0, sysROMStageRelease, 0)
00043 #define     kCamLibVersion2 sysMakeROMVersion(2, 0, 0, sysROMStageRelease, 0)
00044 #define     kCamLibVersion3 sysMakeROMVersion(3, 0, 0, sysROMStageRelease, 0)
00045 #define     kCamLibVersion  kCamLibVersion3
00046 /*@}*/
00047 
00048 
00049 /**
00050  * @name Features
00051  */
00052 /*@{*/
00053 #define     kCamLibFtrCaptureVersion    0       /**< Feature id for capture h/w. */
00054 #define     kCamLibCaptureHwrVersion    0x10    /**< Feature value if capture h/w present. */
00055 #define     kCamLibFtrVersionNum        0       /**< Feature version if camera is present. */
00056 /*@}*/
00057 
00058 
00059 /**
00060  * @name Error Codes
00061  */
00062 /*@{*/
00063 #define kCamLibErrorClass           (oemErrorClass + 0x100)
00064 #define kCamLibErrBadParam          (kCamLibErrorClass | 0x01)/**< Invalid parameter. */
00065 #define kCamLibErrNoMemory          (kCamLibErrorClass | 0x02)/**< Memory error. */
00066 #define kCamLibErrNotOpen           (kCamLibErrorClass | 0x03)/**< Library is not open. */
00067 #define kCamLibErrStillOpen         (kCamLibErrorClass | 0x04)/**< Returned from CamLibClose() if the library is still open. */
00068 #define kCamLibErrInternal          (kCamLibErrorClass | 0x05)/**< Internal error. */
00069 #define kCamLibErrNotSupported      (kCamLibErrorClass | 0x06)/**< Unsupported function. */
00070 #define kCamLibErrNotCompatible     (kCamLibErrorClass | 0x07)/**< Bad Version. */
00071 #define kCamLibErrNoPower           (kCamLibErrorClass | 0x08)/**< Camera not powered. */
00072 #define kCamLibErrAllFramesLocked   (kCamLibErrorClass | 0x09)/**< All video frames are locked. */
00073 /*@}*/
00074 
00075 
00076 /**
00077  * @name Control Commands
00078  */
00079 /*@{*/
00080 #define kCamLibCtrlPowerOn                  0x01/**< Powers on and initialize the camera module. No parameter. */
00081 #define kCamLibCtrlPowerOff                 0x02/**< Powers off the camera module. No parameter. */
00082 #define kCamLibCtrlHardwareSettingsDlg      0x03/**< Displays the hardware camera settings dialog. No parameter. */
00083 #define kCamLibCtrlPreviewStart             0x04/**< Starts the camera preview mode. No parameter. */
00084 #define kCamLibCtrlPreviewStop              0x05/**< Stops the camera preview mode. No parameter. */
00085 #define kCamLibCtrlCaptureGetBitmapInfo     0x06/**< Used to determine the captured image properties. Parameter is CamLibBitmapInfoType*. */
00086 #define kCamLibCtrlCapture                  0x07/**< Captures the current image. Parameter is CamLibCaptureType*. */
00087 #define kCamLibCtrlStatusGet                0x08/**< Used to determine if a certain camera status is currently in effect. Parameter is CamLibStatusType*. */
00088 #define kCamLibCtrlStatusQuery              0x09/**< Used to determine if a certain camera status is available. Parameter is CamLibStatusType*. */
00089 #define kCamLibCtrlCaptureFormatSet         0x10/**< Sets the capture format. Parameter is CamLibCaptureFormatType*. */
00090 #define kCamLibCtrlCaptureFormatGet         0x11/**< Gets the current capture format. Parameter is CamLibCaptureFormatType*. */
00091 #define kCamLibCtrlCaptureFormatQuery       0x12/**< Queries the capture formats available. Parameter is CamLibCaptureFormatType*. */
00092 #define kCamLibCtrlCaptureSizeSet           0x13/**< Sets the capture size. Parameter is CamLibImageSizeType*. */
00093 #define kCamLibCtrlCaptureSizeGet           0x14/**< Gets the current capture size. Parameter is CamLibImageSizeType*. */
00094 #define kCamLibCtrlCaptureSizeQuery         0x15/**< Queries the capture sizes available. Parameter is CamLibImageSizeType*. */
00095 #define kCamLibCtrlCaptureAreaSet           0x16/**< Sets the capture area. Parameter is RectangleType*. Low-res value. */
00096 #define kCamLibCtrlCaptureAreaGet           0x17/**< Gets the capture area. Parameter is RectangleType*. Low-res value. */
00097 #define kCamLibCtrlPreviewSizeSet           0x20/**< Sets the preview size. Parameter is CamLibImageSizeType*. */
00098 #define kCamLibCtrlPreviewSizeGet           0x21/**< Gets the preview size. Parameter is CamLibImageSizeType*. */
00099 #define kCamLibCtrlPreviewSizeQuery         0x22/**< Queries the preview sizes available. Parameter is CamLibImageSizeType*. */
00100 #define kCamLibCtrlPreviewRectSet           0x23/**< Sets the preview rectangle. Parameter is RectangleType*. Low-res value. */
00101 #define kCamLibCtrlPreviewRectGet           0x24/**< Gets the preview rectangle. Parameter is RectangleType*. Low-res value. */
00102 #define kCamLibCtrlPreviewAreaSet           0x26/**< Sets the preview area. Parameter is RectangleType*. Low-res value. */
00103 #define kCamLibCtrlPreviewAreaGet           0x27/**< Gets the preview area. Parameter is RectangleType*. Low-res value. */
00104 #define kCamLibCtrlWhiteBalanceSet          0x30/**< Sets the white balance. Parameter is CamLibWhiteBalanceType*. */
00105 #define kCamLibCtrlWhiteBalanceGet          0x31/**< Gets the current white balance. Parameter is CamLibWhiteBalanceType*. */
00106 #define kCamLibCtrlWhiteBalanceQuery        0x32/**< Queries the white balances available. Parameter is CamLibWhiteBalanceType*. */
00107 #define kCamLibCtrlLightingSet              0x33/**< Sets the lighting setting. Parameter is CamLibLightingType*. */
00108 #define kCamLibCtrlLightingGet              0x34/**< Gets the current lighting setting. Parameter is CamLibLightingType*. */
00109 #define kCamLibCtrlLightingQuery            0x35/**< Queries the lighting settings available. Parameter is CamLibLightingType*. */
00110 #define kCamLibCtrlZoomSet                  0x36/**< Sets the zoom value. Parameter is CamLibZoomType*. */
00111 #define kCamLibCtrlZoomGet                  0x37/**< Gets the current zoom value. Parameter is CamLibZoomType*. */
00112 #define kCamLibCtrlZoomQuery                0x38/**< Queries the zoom range. Parameter is CamLibZoomType*. */
00113 #define kCamLibCtrlEffectsSet               0x39/**< Sets the camera effect. Parameter is CamLibEffectsType*. */
00114 #define kCamLibCtrlEffectsGet               0x3A/**< Gets the current camera effect. Parameter is CamLibEffectsType*. */
00115 #define kCamLibCtrlEffectsQuery             0x3B/**< Queries the camera effects available. Parameter is CamLibEffectsType*. */
00116 #define kCamLibCtrlSaturationSet            0x3C/**< Sets the saturation level. Parameter is CamLibSaturationType*. */
00117 #define kCamLibCtrlSaturationGet            0x3D/**< Gets the current saturation level. Parameter is CamLibSaturationType*. */
00118 #define kCamLibCtrlSaturationQuery          0x3E/**< Queries the saturation range. Parameter is CamLibSaturationType*. */
00119 #define kCamLibCtrlExposureSet              0x40/**< Sets the exposure. Parameter is CamLibExposureType*. */
00120 #define kCamLibCtrlExposureGet              0x41/**< Gets the exposure. Parameter is CamLibExposureType*. */
00121 #define kCamLibCtrlExposureQuery            0x42/**< Checks the exposure values available. Parameter is CamLibExposureType*. */
00122 #define kCamLibCtrlContrastSet              0x43/**< Sets the contrast. Parameter is CamLibContrastType*. */
00123 #define kCamLibCtrlContrastGet              0x44/**< Gets the current contrast. Parameter is CamLibContrastType*. */
00124 #define kCamLibCtrlContrastQuery            0x45/**< Checks the contrast values available. Parameter is CamLibContrastType*. */
00125 #define kCamLibCtrlSharpnessSet             0x46/**< Sets the sharpness. Parameter is CamLibSharpnessType*. */
00126 #define kCamLibCtrlSharpnessGet             0x47/**< Gets the sharpness. Parameter is CamLibSharpnessType*. */
00127 #define kCamLibCtrlSharpnessQuery           0x48/**< Queries the sharpness range. Parameter is CamLibSharpnessType*. */
00128 #define kCamLibCtrlStreamFormatSet          0x50/**< Sets the video stream format. Parameter is CamLibCaptureFormatType*. */
00129 #define kCamLibCtrlStreamFormatGet          0x51/**< Gets the video stream format. Parameter is CamLibCaptureFormatType*. */
00130 #define kCamLibCtrlStreamFormatQuery        0x52/**< Queries the video stream formats available. Parameter is CamLibCaptureFormatType*. */
00131 #define kCamLibCtrlStreamSizeSet            0x53/**< Sets the video stream size. Parameter is CamLibCaptureSizeType*. */
00132 #define kCamLibCtrlStreamSizeGet            0x54/**< Gets the video stream size. Parameter is CamLibCaptureSizeType*. */
00133 #define kCamLibCtrlStreamSizeQuery          0x55/**< Queries the video stream sizes available. Parameter is CamLibCaptureSizeType*. */
00134 #define kCamLibCtrlStreamStart              0x56/**< Starts the video stream capture. Parameter is CamLibStreamType*. */
00135 #define kCamLibCtrlStreamStop               0x57/**< Stops the video stream capture. Parameter is CamLibStreamType*. */
00136 #define kCamLibCtrlStreamWaitForFrame       0x58/**< Waits and locks a video frame. Parameter is CamLibStreamType*. */
00137 #define kCamLibCtrlStreamUnlockFrame        0x59/**< Unlocks a video frame. Parameter is CamLibStreamType*. */
00138 #define kCamLibCtrlStreamBufNumSet          0x60/**< Sets the number of video frame buffers. Parameter is CamLibBufNumType*. */
00139 #define kCamLibCtrlStreamBufNumGet          0x61/**< Gets the number of video frame buffers. Parameter is CamLibBufNumType*. */
00140 #define kCamLibCtrlStreamBufNumQuery        0x62/**< Queries the number of video frame buffer range. Parameter is CamLibBufNumType*. */
00141 #define kCamLibCtrlStreamPreviewSet         0x63/**< Sets the stream preview on or off. Parameter is CamLibStreamPreviewType*. */
00142 #define kCamLibCtrlStreamPreviewGet         0x64/**< Gets the stream preview status (on or off). Parameter is CamLibStreamPreviewType*. */
00143 #define kCamLibCtrlStreamPreviewQuery       0x65/**< Queries the stream preview available. Parameter is CamLibStreamPreviewType*. */
00144 #define kCamLibCtrlColorSpaceSet            0x66/**< Sets the Color Space. Parameter is CamLibColorSpaceType*.*/
00145 #define kCamLibCtrlColorSpaceGet            0x67/**< Gets the Color Space. Parameter is CamLibColorSpaceType*.*/
00146 #define kCamLibCtrlColorSpaceQuery          0x68/**< Queries for the Color Space. Parameter is CamLibColorSpaceType*.*/
00147 #define kCamLibCtrlShutterSpeedSet          0x69/**< Sets the Shutter Speed. Parameter is CamLibShutterSpeedType*.*/
00148 #define kCamLibCtrlShutterSpeedGet          0x6A/**< Gets the Shutter Speed. Parameter is CamLibShutterSpeedType*.*/
00149 #define kCamLibCtrlShutterSpeedQuery        0x6B/**< Queries for the Shutter Speed. Parameter is CamLibShutterSpeedType*.*/
00150 #define kCamLibCtrlApertureValueSet         0x6C/**< Sets the Aperture Value. Parameter is CamLibApertureValueType*.*/
00151 #define kCamLibCtrlApertureValueGet         0x6D/**< Gets the Aperture Value. Parameter is CamLibApertureValueType*.*/
00152 #define kCamLibCtrlApertureValueQuery       0x6E/**< Queries for the Aperture Value. Parameter is CamLibApertureValueType*.*/
00153 /*@}*/
00154 
00155 /** Camera Manager library control structure */
00156 typedef UInt16 CamLibControlType;
00157 
00158 /**
00159  * @name Camera Status
00160  */
00161 /*@{*/
00162 #define kCamLibStatusPoweredOn          0x01/**< Is the camera powered on? */
00163 #define kCamLibStatusInPreview          0x02/**< Is the camera in preview mode? */
00164 #define kCamLibStatusInStillCapture     0x04/**< Is the camera in still capture? */
00165 #define kCamLibStatusInVideoCapture     0x08/**< Is the camera in video capture? */
00166 /*@}*/
00167 
00168 /** @brief Container for the camera status kCamLibStatus* */
00169 typedef struct CamLibStatusTag
00170 {
00171     UInt32 status;  /**< Camera status */
00172 } CamLibStatusType;
00173 
00174 /** @brief Bitmap info structure for every format except PalmBMPV4.  Data starts after the parameters. */
00175 typedef struct CamLibBitmapInfoTag
00176 {
00177     UInt16 width;           /**< Width of the bitmap. */
00178     UInt16 height;          /**< Height of the bitmap. */
00179     UInt32 numBytes;        /**< Number or Bytes to be streamed. */
00180     UInt8  bitsPerPixel;    /**< Number of bits per pixel. */
00181     UInt8  reserved0;       /**< For packing. */
00182     UInt16 reserved1;       /**< For packing. */
00183 } CamLibBitmapInfoType;
00184 
00185 /******************************************************************************/
00186 /* CamLibCaptureCallbackFunc */
00187 /**
00188    @brief Image capture callback function pointer
00189 
00190    @param bufP      I/O     Pointer to the image buffer
00191    @param size      IN      Size of the buffer
00192    @param userDataP OUT     Pointer to the user data
00193 
00194    @return          Error code or zero if no error occurs
00195 
00196 *******************************************************************************/
00197 typedef Err CamLibCaptureCallbackFunc(void *bufP, UInt32 size, void *userDataP);
00198 
00199 /** @brief Capture settings structure.  The callback is called with userDataP passed. */
00200 typedef struct CamLibCaptureTag
00201 {
00202     CamLibCaptureCallbackFunc *callbackP;   /**< Callback function. */
00203     void *userDataP;                        /**< User data pointer. */
00204 } CamLibCaptureType;
00205 
00206 /**
00207  * @brief Video stream structure.  Used for capturing a video stream.
00208  *
00209  * When used with WaitfForFram, bufP will contain the full frame buffer.
00210  */
00211 typedef struct CamLibStreamTag
00212 {
00213     void    *lock;          /**< Reserved. */
00214     void    *bufP;          /**< Pointer to base of frame buffer content. */
00215     UInt32  size;           /**< Size in bytes of frame buffer. */
00216     UInt32  frameTime;      /**< Time-stamp when frame was captured. */
00217     UInt32  frameNum;       /**< Number of frames (relative to start) in stream. */
00218 } CamLibStreamType;
00219 
00220 
00221 /** Video Stream Capture buffers */
00222 #define kCamLibBufNumManual     0x01
00223 
00224 /** @see CamLibSettingTag */
00225 typedef struct CamLibSettingTag CamLibBufNumType;
00226 
00227 /**
00228  * @brief Settings Capabilities structure.
00229  * For settings without manual values, only type is used.
00230  */
00231 typedef struct CamLibSettingTag
00232 {
00233     UInt32 type;        /**< Setting type. */
00234     Int32 value;        /**< For manual settings only. */
00235     Int32 minValue;     /**< Used for Get/Query only and is valid for manual value. */
00236     Int32 maxValue;     /**< Used for Get/Query only and is valid for manual value. */
00237 } CamLibSettingType;
00238 
00239 /**
00240  * @brief Color Space structure.
00241  */
00242 typedef struct CamLibColorSpaceTag
00243 {
00244     Int32 value;        /**< Value. */
00245 
00246 } CamLibColorSpaceType;
00247 
00248 
00249 
00250 /**
00251  * @name Capture Formats
00252  */
00253 /*@{*/
00254 #define kCamLibCaptureDataFormatRGB565              0x0002/**< Capture format in 16-bit RGB. */
00255 #define kCamLibCaptureDataFormatYUV422              0x0004/**< Capture format in 16-bit YUV422. */
00256 #define kCamLibCaptureDataFormatYCbCr422            0x0008/**< Capture format in 16-bit YCbCr422. */
00257 #define kCamLibCaptureDataFormatYUV422Planar        0x0010/**< Capture format in 16-bit YUV422 Planar. */
00258 #define kCamLibCaptureDataFormatYCbCr422Planar      0x0020/**< Capture format in 16-bit YCbCr422 Planar. */
00259 #define kCamLibCaptureDataFormatYUV420              0x0040/**< Capture format in 16-bit YUV420. */
00260 #define kCamLibCaptureDataFormatYCbCr420            0x0080/**< Capture format in 16-bit YCbCr420. */
00261 #define kCamLibCaptureDataFormatYUV420Planar        0x0100/**< Capture format in 16-bit YUV420 Planar. */
00262 #define kCamLibCaptureDataFormatYCbCr420Planar      0x0200/**< Capture format in 16-bit YCbCr420 Planar. */
00263 /*@}*/
00264 
00265 /** @see CamLibSettingTag */
00266 typedef struct CamLibSettingTag CamLibCaptureFormatType;
00267 
00268 /**
00269  * @name Image Resolution
00270  */
00271 /*@{*/
00272 #define kCamLibImageSizeQQVGA               0x02/**< 160 x 120 High Resolution. */
00273 #define kCamLibImageSizeQVGA                0x04/**< 320 x 240 High Resolution. */
00274 #define kCamLibImageSizeVGA                 0x08/**< 640 x 480 High Resolution. */
00275 #define kCamLibImageSizeSXGA                0x10/**< 1280x 960 High Resolution. */
00276 #define kCamLibImageSizeQCIF                0x20/**< 177 x 144 High Resolution. */
00277 #define kCamLibImageSizeCIF                 0x40/**< 354 x 288 High Resolution. */
00278 
00279 /* By definition, SXGA is 1280x1024, but someone erroneously defined
00280  * kCamLibImageSizeSXGA as 1280x960.  kCamLibImageSizeSXGA is now
00281  * deprecated, in favor of two new contstants.
00282  */
00283 
00284 #define kCamLibImageSizeSXGA960             0x10/**< 1280x 960 High Resolution. */
00285 #define kCamLibImageSizeSXGA1024            0x80/**< 1280x 1024 High Resolution. */
00286 /*@}*/
00287 
00288 /** @see CamLibSettingTag */
00289 typedef struct CamLibSettingTag CamLibImageSizeType;
00290 
00291 /**
00292  * @name White Balance Settings
00293  */
00294 /*@{*/
00295 #define kCamLibWhiteBalanceAuto             0x02/**< Automatically determines the correct white balance for capturing and previewing images.*/
00296 #define kCamLibWhiteBalanceIndoor           0x04/**< Sets the white balance for indoor capturing and previewing of images */
00297 #define kCamLibWhiteBalanceIncandescent     0x04/**< Sets the white balance for indoor capturing and previewing of images */
00298 #define kCamLibWhiteBalanceOutdoor          0x08/**< Sets the white balance for outdoor capturing and previewing of images */
00299 #define kCamLibWhiteBalanceSunny            0x08/**< Sets the white balance for outdoor capturing and previewing of images */
00300 #define kCamLibWhiteBalanceExtra            0x10/**< Sets the white balance for flourescent indoor capturing and previewing of images */
00301 #define kCamLibWhiteBalanceFluorescent      0x10/**< Sets the white balance for flourescent indoor capturing and previewing of images */
00302 #define kCamLibWhiteBalanceCloudy           0x20/**< Sets the white balance for cloudy lighting during capture and preview of images */
00303 #define kCamLibWhiteBalanceShade            0x40/**< Sets the white balance for shady lighting during capture and preview of images */
00304 #define kCamLibWhiteBalanceTwilight         0x80/**< Sets the white balance for twilight lighting during capture and preview of images */
00305 /*@}*/
00306 
00307 /** @see CamLibSettingTag */
00308 typedef struct CamLibSettingTag CamLibWhiteBalanceType;
00309 
00310 /**
00311  * @name Exposure Level Settings
00312  */
00313 /*@{*/
00314 #define kCamLibExposureManual           0x01/**<Sets the exposure level manually through an additional
00315                                                  passed parameter with kCamLibCtrlExposureSet. For manual
00316                                                  values, all values are x1000 of real exposure i.e. exp 1.5 is 1500. */
00317 #define kCamLibExposureAuto             0x02/**<Sets the exposure level automatically.*/
00318 /*@}*/
00319 
00320 /** @see CamLibSettingTag */
00321 typedef struct CamLibSettingTag CamLibExposureType;
00322 
00323 /**
00324  * @name Contrast Setting
00325  */
00326 /*@{*/
00327 #define kCamLibContrastManual           0x01/**< Sets the contrast value manually. Use kCamLibCtrlContrastGet
00328 to determine the minimum and maximum values allowed and the unit of
00329 measurement. */
00330 /*@}*/
00331 
00332 /** @see CamLibSettingTag */
00333 typedef struct CamLibSettingTag CamLibContrastType;
00334 
00335 /**
00336  * @name Zoom Setting
00337  */
00338 /*@{*/
00339 #define kCamLibZoomManual               0x01/**< Sets the zoom value manually.
00340 All values here are x1000 of real zoom i.e. x2 is 2000. */
00341 /*@}*/
00342 
00343 /** @see CamLibSettingTag */
00344 typedef struct CamLibSettingTag CamLibZoomType;
00345 
00346 /**
00347  * @name Lighting Settings
00348  */
00349 /*@{*/
00350 #define kCamLibLightingNormal           0x02/**< The camera is set for normal light. */
00351 #define kCamLibLightingLow              0x04/**< The camera is set for low light. */
00352 /*@}*/
00353 
00354 /** @see CamLibSettingTag */
00355 typedef struct CamLibSettingTag CamLibLightingType;
00356 
00357 /**
00358  * @name Special Effects
00359  */
00360 /*@{*/
00361 #define kCamLibEffectsNormal            0x02/**< No special effects */
00362 #define kCamLibEffectsBlackWhite        0x04/**< Balck & white effect */
00363 #define kCamLibEffectsSepia             0x08/**< Sepia effect */
00364 #define kCamLibEffectsBluish            0x10/**< Bluish effect */
00365 #define kCamLibEffectsNegative          0x20/**< Negative effect */
00366 /*@}*/
00367 
00368 /** @see CamLibSettingTag */
00369 typedef struct CamLibSettingTag CamLibEffectsType;
00370 
00371 /**
00372  * @name Saturation Level
00373  */
00374 /*@{*/
00375 #define kCamLibSaturationManual         0x01/**< Sets the saturation level manually */
00376 /*@}*/
00377 
00378 /** @see CamLibSettingTag */
00379 typedef struct CamLibSettingTag CamLibSaturationType;
00380 
00381 /**
00382  * @name Sharpness Level
00383  */
00384 /*@{*/
00385 #define kCamLibSharpnessManual          0x01/**< Sets the sharpness level manually. */
00386 /*@}*/
00387 
00388 /** @see CamLibSettingTag */
00389 typedef struct CamLibSettingTag CamLibSharpnessType;
00390 
00391 /**
00392  * @name Stream Preview Settings
00393  */
00394 /*@{*/
00395 #define kCamLibStreamPreviewOn          0x01/**< Stream preview on. */
00396 #define kCamLibStreamPreviewOff         0x02/**< Stream preview off. */
00397 /*@}*/
00398 
00399 /** @see CamLibSettingTag */
00400 typedef struct CamLibSettingTag CamLibStreamPreviewType;
00401 
00402 /**
00403  * @name Color Space Settings
00404  */
00405 /*@{*/
00406 #define kCamLibColorSpace_sRGB          0x02/**< color space sRGB. */
00407 #define kCamLibColorSpaceUncalibrated   0x04/**< color space uncalibrated. */
00408 /*@}*/
00409 
00410 /**
00411  * @name Shutter Speed Settings
00412  */
00413 /*@{*/
00414 #define kCamLibShutterSpeedManual       0x01/**<Sets the shutter speed manually through an additional
00415                                                  passed parameter with kCamLibCtrlShutterSpeedSet.*/
00416 #define kCamLibShutterSpeedAuto         0x02/**<Sets the shutter speed automatically.*/
00417 /*@}*/
00418 
00419 /** @see CamLibSettingTag */
00420 typedef struct CamLibSettingTag CamLibShutterSpeedType;
00421 
00422 /**
00423  * @name Aperture Value Settings
00424  */
00425 /*@{*/
00426 #define kCamLibApertureValueManual      0x01/**<Sets the aperture value manually through an additional
00427                                                  passed parameter with kCamLibCtrlApertureValueSet.For manual
00428                                                  values, all values are x1000 of real aperture value
00429                                                  i.e. ap val 1.4 is 1400.*/
00430 #define kCamLibApertureValueAuto        0x02/**<Sets the aperture value automatically.*/
00431 /*@}*/
00432 
00433 /** @see CamLibSettingTag */
00434 typedef struct CamLibSettingTag CamLibApertureValueType;
00435 
00436 /**
00437  * @name Function Traps
00438  */
00439 /*@{*/
00440 #define kCamLibTrapGetVersion       (sysLibTrapCustom + 0)
00441 #define kCamLibTrapControl          (sysLibTrapCustom + 1)
00442 /*@}*/
00443 
00444 #endif  // _CAMERAMGRCOMMON_H_
00445 

Top Palm Developer Network
© 2004-2008, Palm, Inc. All rights reserved.
Generated on Fri Jun 13 10:06:54 2008 for Palm API Guide