API Guide Home (Online version only) |

# ImageLibCommon.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    Imaging Imaging Library
    00007  * @brief       This library provides support for image drawing and manipulation on
    00008  *              Treo 600 devices.
    00009  *
    00010  * Applications can use this library to draw JPEG images on the screen or create
    00011  * thumbnails and such on the Treo 600 devices. This library also allows some
    00012  * interaction with the camera within the 3rd party application itself. For the
    00013  * newer devices, developers should try to use palmOne Photo Library before using
    00014  * the Image Library.
    00015  *
    00016  * palmOne Photo Library allows better integration with the built-in Media application
    00017  * and storing image on the device. Developers who would like to use this library
    00018  * should first check the version of the library and then make the appropriate API
    00019  * calls depending on the version.
    00020  *
    00021  * The database API provides applications with the ability to:
    00022  *  - Get the list of albums.
    00023  *  - Create, delete and rename albums.
    00024  *  - Get the list of photos in each album.
    00025  *  - Add photos to albums.
    00026  *
    00027  * The image manipulation API provides applications with the ability to:
    00028  *  - Create and capture images and video clips.
    00029  *  - Read and write image data.
    00030  *  - Convert images to different formats.
    00031  *  - Display images.
    00032  *  - Scale, rotate and crop images.
    00033  *
    00034  * @{
    00035  * @}
    00036  */
    00037 /**
    00038  * @ingroup Imaging
    00039  */
    00040
    00041 /**
    00042  * @file    ImageLibCommon.h
    00043  * @version 1.0
    00044  * @brief   Public 68k common header file for the Image Library API on Treo 600 devices.
    00045  *
    00046  * This file contains common defines and error codes to be used with Imaging Library API.
    00047  * <hr>
    00048  */
    00049
    00050 #ifndef IMAGELIB_COMMON_H
    00051 #define IMAGELIB_COMMON_H
    00052
    00053 #include <PalmOS.h>
    00054 #include <PalmTypes.h>
    00055
    00056 #define ImageLibCreatorID 'imgL'            /**< Imaging library creator ID */
    00057 #define ImageLibTypeID    'libr'            /**< Standard library type */
    00058 #define ImageLibName      "ImageLibrary"    /**< Imaging library database name */
    00059
    00060 /**
    00061  * @name    Preview Image Dimensions
    00062  * @brief   Preview height and width in standard pixels. On a double density device,
    00063  *          the bitmap returned would be twice these dimensions.
    00064  */
    00065 /*@{*/
    00066 #define kPalmSizeImageWidth     160
    00067 #define kPalmSizeImageHeight    120
    00068 #define kFullSizeImageWidth     640
    00069 #define kFullSizeImageHeight    480
    00070 #define kThumbnailImageWidth     40
    00071 #define kThumbnailImageHeight    30
    00072 #define kPreviewBitmapWidth     (kPalmSizeImageWidth)
    00073 #define kPreviewBitmapHeight    (kPalmSizeImageHeight)
    00074 /*@}*/
    00075
    00076 #define kInvalidRecIndex ((UInt16)0xFFFF ) /**< define for invalid record index */
    00077
    00078 #define kImageFilenameLength    (dmDBNameLength) /**< max filename length */
    00079
    00080 /**
    00081  * @name Sort Orders
    00082  */
    00083 /*@{*/
    00084 #define kNoSortOrder (0)
    00085 #define kSortByName  (1)
    00086 #define kSortByDate  (2)
    00087 #define kSortByNameDesc  (3)
    00088 #define kSortByDateDesc  (4)
    00089 /*@}*/
    00090
    00091 /**
    00092  * @name Image Operation Codes
    00093  */
    00094 /*@{*/
    00095 #define kResizeOperation (0)
    00096 #define kJPEGOperation   (1)
    00097 #define kVFSOperation    (2)
    00098 /*@}*/
    00099
    00100 /** Handle returned by ImageLibIterateImages or ImageLibIterateVFSImages. */
    00101 typedef void * ImageIteratorHandle;
    00102
    00103 /** Passed in when calling ImageLibSetProgressCallback */
    00104 typedef void (*ImageLibProgressCallbackType) (Int32 progress, Int32 max, Int8 operation);
    00105
    00106 /**
    00107  * @name Error Codes
    00108  */
    00109 /*@{*/
    00110 #define imageLibErrorClass              (appErrorClass | 0x1000)
    00111 #define imageLibErrBadParam             (imageLibErrorClass)
    00112 #define imageLibErrNoCamera             (imageLibErrorClass + 1)
    00113 #define imageLibErrInternalFailure      (imageLibErrorClass + 2)
    00114 #define imageLibErrWriteFailure         (imageLibErrorClass + 3)
    00115 #define imageLibErrReadFailure          (imageLibErrorClass + 4)
    00116 #define imageLibErrBadData              (imageLibErrorClass + 5)
    00117 #define imageLibErrBadImageType         (imageLibErrorClass + 6)
    00118 #define imageLibErrBadImageDepth        (imageLibErrorClass + 7)
    00119 #define imageLibErrBadDimensions        (imageLibErrorClass + 8)
    00120 #define imageLibErrInitializationFailed (imageLibErrorClass + 9)
    00121 #define imageLibErrBadColorspace        (imageLibErrorClass + 10)
    00122 #define imageLibErrBadThumbnailType     (imageLibErrorClass + 11)
    00123 #define imageLibErrThumnailExists       (imageLibErrorClass + 12)
    00124 #define imageLibErrBadScaleFactor       (imageLibErrorClass + 13)
    00125 #define imageLibErrBadBitmapType        (imageLibErrorClass + 14)
    00126 #define imageLibErrImageAlreadyDownsized (imageLibErrorClass + 15)
    00127 #define imageLibErrImageLocked           (imageLibErrorClass + 16)
    00128 /*@}*/
    00129
    00130 #endif

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