diff options
author | Patrik Ryd <patrik.ryd@linaro.org> | 2012-05-16 16:43:47 +0200 |
---|---|---|
committer | Patrik Ryd <patrik.ryd@linaro.org> | 2012-05-16 16:43:47 +0200 |
commit | f26ebeb607b37f6c7423592e21983f83e7b260d5 (patch) | |
tree | 700b03ee8f1b0caf8503b3f7ded04dac019abff3 | |
parent | 1c0d89ab9c5c06479da7a858d44857c134fe2bb8 (diff) | |
download | libhardware-linaro_android_4.0.4_snowball.tar.gz |
Revert "Adding the header file for copybit"linaro_android_4.0.4_snowball
This reverts commit f0db1c8e317b655f9b79e7e1a92e889ad3edfef7.
-rw-r--r-- | include/hardware/copybit.h | 256 |
1 files changed, 0 insertions, 256 deletions
diff --git a/include/hardware/copybit.h b/include/hardware/copybit.h deleted file mode 100644 index 93547b74..00000000 --- a/include/hardware/copybit.h +++ /dev/null @@ -1,256 +0,0 @@ -/* - * Copyright (C) 2008 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef ANDROID_COPYBIT_INTERFACE_H -#define ANDROID_COPYBIT_INTERFACE_H - -#include <hardware/hardware.h> - -#include <stdint.h> -#include <sys/cdefs.h> -#include <sys/types.h> - -__BEGIN_DECLS - -/** - * The id of this module - */ -#define COPYBIT_HARDWARE_MODULE_ID "copybit" - -/** - * Name of the graphics device to open - */ -#define COPYBIT_HARDWARE_COPYBIT0 "copybit0" - -/* supported pixel-formats. these must be compatible with - * graphics/PixelFormat.java, ui/PixelFormat.h, pixelflinger/format.h - */ -enum { - COPYBIT_FORMAT_RGBA_8888 = HAL_PIXEL_FORMAT_RGBA_8888, - COPYBIT_FORMAT_RGBX_8888 = HAL_PIXEL_FORMAT_RGBX_8888, - COPYBIT_FORMAT_RGB_888 = HAL_PIXEL_FORMAT_RGB_888, - COPYBIT_FORMAT_RGB_565 = HAL_PIXEL_FORMAT_RGB_565, - COPYBIT_FORMAT_BGRA_8888 = HAL_PIXEL_FORMAT_BGRA_8888, - COPYBIT_FORMAT_RGBA_5551 = HAL_PIXEL_FORMAT_RGBA_5551, - COPYBIT_FORMAT_RGBA_4444 = HAL_PIXEL_FORMAT_RGBA_4444, - COPYBIT_FORMAT_YCbCr_422_SP = HAL_PIXEL_FORMAT_YCbCr_422_SP, - COPYBIT_FORMAT_YCbCr_420_SP = HAL_PIXEL_FORMAT_YCbCr_420_SP, - COPYBIT_FORMAT_YCbCr_422_P = HAL_PIXEL_FORMAT_YCbCr_422_P, - COPYBIT_FORMAT_YCbCr_420_P = HAL_PIXEL_FORMAT_YCbCr_420_P, - COPYBIT_FORMAT_YCrCb_422_SP = HAL_PIXEL_FORMAT_YCrCb_422_SP, - COPYBIT_FORMAT_YCrCb_420_SP = HAL_PIXEL_FORMAT_YCrCb_420_SP, - COPYBIT_FORMAT_YCrCb_422_P = HAL_PIXEL_FORMAT_YCrCb_422_P, - COPYBIT_FORMAT_YCrCb_420_P = HAL_PIXEL_FORMAT_YCrCb_420_P, - /* STE: Added Support for YUV42XMBN, required for Copybit CC acceleration */ - COPYBIT_FORMAT_YCBCR42XMBN = HAL_PIXEL_FORMAT_YCBCR42XMBN, - /* STE: Added for YCbCr422R -> RGB888 use-case */ - COPYBIT_FORMAT_YCbCr_422_I = HAL_PIXEL_FORMAT_YCbCr_422_I, -}; - -/* name for copybit_set_parameter */ -enum { - /* rotation of the source image in degrees (0 to 359) */ - COPYBIT_ROTATION_DEG = 1, - /* plane alpha value */ - COPYBIT_PLANE_ALPHA = 2, - /* enable or disable dithering */ - COPYBIT_DITHER = 3, - /* transformation applied (this is a superset of COPYBIT_ROTATION_DEG) */ - COPYBIT_TRANSFORM = 4, - /* blurs the copied bitmap. The amount of blurring cannot be changed - * at this time. */ - COPYBIT_BLUR = 5 -}; - -/* values for copybit_set_parameter(COPYBIT_TRANSFORM) */ -enum { - /* flip source image horizontally */ - COPYBIT_TRANSFORM_FLIP_H = HAL_TRANSFORM_FLIP_H, - /* flip source image vertically */ - COPYBIT_TRANSFORM_FLIP_V = HAL_TRANSFORM_FLIP_V, - /* rotate source image 90 degres */ - COPYBIT_TRANSFORM_ROT_90 = HAL_TRANSFORM_ROT_90, - /* rotate source image 180 degres */ - COPYBIT_TRANSFORM_ROT_180 = HAL_TRANSFORM_ROT_180, - /* rotate source image 270 degres */ - COPYBIT_TRANSFORM_ROT_270 = HAL_TRANSFORM_ROT_270, -}; - -/* enable/disable value copybit_set_parameter */ -enum { - COPYBIT_DISABLE = 0, - COPYBIT_ENABLE = 1 -}; - -/* use get_static_info() to query static informations about the hardware */ -enum { - /* Maximum amount of minification supported by the hardware*/ - COPYBIT_MINIFICATION_LIMIT = 1, - /* Maximum amount of magnification supported by the hardware */ - COPYBIT_MAGNIFICATION_LIMIT = 2, - /* Number of fractional bits support by the scaling engine */ - COPYBIT_SCALING_FRAC_BITS = 3, - /* Supported rotation step in degres. */ - COPYBIT_ROTATION_STEP_DEG = 4, -}; - -/* Image structure */ -struct copybit_image_t { - /* width */ - uint32_t w; - /* height */ - uint32_t h; - /* format COPYBIT_FORMAT_xxx */ - int32_t format; - /* base of buffer with image */ - void *base; - /* handle to the image */ - native_handle_t* handle; -}; - -/* Rectangle */ -struct copybit_rect_t { - /* left */ - int l; - /* top */ - int t; - /* right */ - int r; - /* bottom */ - int b; -}; - -/* Color (components in range 0-255) */ -struct copybit_color_t { - /* Red */ - uint8_t r; - /* Green */ - uint8_t g; - /* Blue */ - uint8_t b; - /* Alpha */ - uint8_t a; -}; - -/* Region */ -struct copybit_region_t { - int (*next)(struct copybit_region_t const *region, struct copybit_rect_t *rect); -}; - -/** - * Every hardware module must have a data structure named HAL_MODULE_INFO_SYM - * and the fields of this data structure must begin with hw_module_t - * followed by module specific information. - */ -struct copybit_module_t { - struct hw_module_t common; -}; - -/** - * Every device data structure must begin with hw_device_t - * followed by module specific public methods and attributes. - */ -struct copybit_device_t { - struct hw_device_t common; - - /** - * Set a copybit parameter. - * - * @param dev from open - * @param name one for the COPYBIT_NAME_xxx - * @param value one of the COPYBIT_VALUE_xxx - * - * @return 0 if successful - */ - int (*set_parameter)(struct copybit_device_t *dev, int name, int value); - - /** - * Get a static copybit information. - * - * @param dev from open - * @param name one of the COPYBIT_STATIC_xxx - * - * @return value or -EINVAL if error - */ - int (*get)(struct copybit_device_t *dev, int name); - - /** - * Execute the bit blit copy operation - * - * @param dev from open - * @param dst is the destination image - * @param src is the source image - * @param region the clip region - * - * @return 0 if successful - */ - int (*blit)(struct copybit_device_t *dev, - struct copybit_image_t const *dst, - struct copybit_image_t const *src, - struct copybit_region_t const *region); - - /** - * Execute the stretch bit blit copy operation - * - * @param dev from open - * @param dst is the destination image - * @param src is the source image - * @param dst_rect is the destination rectangle - * @param src_rect is the source rectangle - * @param region the clip region - * - * @return 0 if successful - */ - int (*stretch)(struct copybit_device_t *dev, - struct copybit_image_t const *dst, - struct copybit_image_t const *src, - struct copybit_rect_t const *dst_rect, - struct copybit_rect_t const *src_rect, - struct copybit_region_t const *region); - - /** - * Execute the fill bit blit operation - * - * @param dev from open - * @param dst is the destination image - * @param rect is the destination rectangle - * @param color is the fill color - * @param region the clip region - */ - int (*fill)(struct copybit_device_t *dev, - struct copybit_image_t *dst, - struct copybit_rect_t *rect, - struct copybit_color_t *color, - struct copybit_region_t *region); -}; - - -/** convenience API for opening and closing a device */ - -static inline int copybit_open(const struct hw_module_t* module, - struct copybit_device_t** device) { - return module->methods->open(module, - COPYBIT_HARDWARE_COPYBIT0, (struct hw_device_t**)device); -} - -static inline int copybit_close(struct copybit_device_t* device) { - return device->common.close(&device->common); -} - - -__END_DECLS - -#endif // ANDROID_COPYBIT_INTERFACE_H |