Graphics framework for GR-PEACH. When you use this program, we judge you have agreed to the following contents. https://developer.mbed.org/teams/Renesas/wiki/About-LICENSE

Dependents:   ImageZoomInout_Sample ImageRotaion_Sample ImageScroll_Sample GR-PEACH_LCD_4_3inch_Save_to_USB ... more

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers RGA_Port_typedef.h Source File

RGA_Port_typedef.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002 * DISCLAIMER
00003 * This software is supplied by Renesas Electronics Corporation and is only
00004 * intended for use with Renesas products. No other uses are authorized. This
00005 * software is owned by Renesas Electronics Corporation and is protected under
00006 * all applicable laws, including copyright laws.
00007 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIES REGARDING
00008 * THIS SOFTWARE, WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT
00009 * LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE
00010 * AND NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.
00011 * TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY LAW, NEITHER RENESAS
00012 * ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE
00013 * FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR
00014 * ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR ITS AFFILIATES HAVE
00015 * BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
00016 * Renesas reserves the right, without notice, to make changes to this software
00017 * and to discontinue the availability of this software. By using this software,
00018 * you agree to the additional terms and conditions found by accessing the
00019 * following link:
00020 * http://www.renesas.com/disclaimer
00021 * Copyright (C) 2013 - 2014 Renesas Electronics Corporation. All rights reserved.
00022 *******************************************************************************/
00023 /**
00024 * @file  RGA_Port_typedef.h
00025 * @brief   $Module: RGA $ $PublicVersion: 1.20 $ (=RGA_VERSION)
00026 * $Rev: $
00027 * $Date::                           $
00028 */
00029 
00030 #ifndef  RGA_PORT_TYPEDEF_H
00031 #define  RGA_PORT_TYPEDEF_H
00032 
00033 
00034 /******************************************************************************
00035 Includes   <System Includes> , "Project Includes"
00036 ******************************************************************************/
00037 #include  "r_ospl_typedef.h"
00038 #include  "clib_drivers.h "  /* ceil_8 */
00039 #include  "RGA_Port_typedef.h "
00040 
00041 #ifdef __cplusplus
00042 extern "C" {
00043 #endif /* __cplusplus */
00044 
00045 
00046 /******************************************************************************
00047 Typedef definitions
00048 ******************************************************************************/
00049 
00050 /**
00051 * @struct  uint16_not_aligned_t
00052 * @brief  uint16_not_aligned_t
00053 */
00054 #pragma pack (push,1)
00055 /* uint16_not_aligned_t* variable raises warning, when it was passed to uint16_t* argument. */
00056 typedef struct _uint16_not_aligned_t {
00057     uint8_t  byte[2];
00058 } uint16_not_aligned_t;
00059 #pragma pack (pop)
00060 
00061 
00062 /**
00063 * @struct  uint32_not_aligned_t
00064 * @brief  uint32_not_aligned_t
00065 */
00066 #pragma pack (push,1)
00067 /* uint32_not_aligned_t* variable raises warning, when it was passed to uint32_t* argument. */
00068 typedef struct _uint32_not_aligned_t {
00069     uint8_t  byte[4];
00070 } uint32_not_aligned_t;
00071 #pragma pack (pop)
00072 
00073 
00074 /**
00075 * @struct  BITMAPFILEHEADER
00076 * @brief  BITMAPFILEHEADER
00077 */
00078 #pragma pack (push,1)
00079 typedef struct tagBITMAPFILEHEADER {
00080     uint16_t  bfType;
00081     uint32_t  bfSize;
00082     uint16_t  bfReserved1;
00083     uint16_t  bfReserved2;
00084     uint32_t  bfOffBits;
00085 } BITMAPFILEHEADER;
00086 #pragma pack (pop)
00087 
00088 
00089 /**
00090 * @struct  BITMAPINFOHEADER
00091 * @brief  BITMAPINFOHEADER
00092 */
00093 #pragma pack (push,1)
00094 typedef struct tagBITMAPINFOHEADER {
00095     uint32_t  biSize;
00096     int32_t   biWidth;
00097     int32_t   biHeight;
00098     uint16_t  biPlanes;
00099     uint16_t  biBitCount;
00100     uint32_t  biCompression;
00101     uint32_t  biSizeImage;
00102     int32_t   biXPelsPerMeter;
00103     int32_t   biYPelsPerMeter;
00104     uint32_t  biClrUsed;
00105     uint32_t  biClrImportant;
00106 } BITMAPINFOHEADER;
00107 #pragma pack (pop)
00108 
00109 
00110 /**
00111 * @def  BI_BITFIELDS
00112 * @brief  BI_BITFIELDS
00113 */
00114 enum { BI_BITFIELDS = 3 };
00115 
00116 
00117 /**
00118 * @struct  vram_ex_stack_t
00119 * @brief  vram_ex_stack_t
00120 */
00121 typedef struct _vram_ex_stack_t  vram_ex_stack_t;
00122 struct _vram_ex_stack_t {
00123     uint8_t  *Start;
00124     uint8_t  *Over;
00125     uint8_t  *StackPointer;
00126 };
00127 
00128 
00129 /******************************************************************************
00130 Macro definitions
00131 ******************************************************************************/
00132 
00133 #ifdef  RGAH_VERSION
00134 #define  RGA_FRAME_BUFFER_ADDRESS_ALIGNMENT   32  /* byte */
00135 #define  RGA_SOURCE_IMAGE_STRIDE_ALIGNMENT    32  /* byte */
00136 #define  RGA_DESTINATION_STRIDE_ALIGNMENT     32  /* byte */
00137 #define  RGA_JPEG_ADDRESS_ALIGNMENT            8  /* byte */
00138 #define  RGA_JPEG_MAX_WIDTH_ALIGNMENT         16  /* pixel. Max of width_of_MCU */
00139 #define  RGA_JPEG_MAX_HEIGHT_ALIGNMENT        16  /* pixel. Max of height_of_MCU */
00140 #define  RGA_VDC5_BUFFER_ADDRESS_ALIGNMENT    64  /* byte */
00141 #define  RGA_WORK_BUFFER_MAX_DISPLAY_LIST    184  /* Constant value */
00142 #define  RGA_WORK_BUFFER_STRIDE               64  /* Constant value. This is not width of frame buffer */
00143 #define  RGA_WORK_BUFFER_ADDRESS_ALIGNMENT    64  /* byte */
00144 #define  RGA_WORK_BUFFER_HEIGHT_ALIGNMENT      8  /* pixel */
00145 #define  RGA_WORK_BUFFER_B_ADDRESS_ALIGNMENT  32  /* byte */
00146 /* RGA_WORK_BUFFER_B_ADDRESS_ALIGNMENT : RGA_RGAH_initBmp_ForSourceImage( colorBuffer ) */
00147 #endif
00148 #ifdef  RGAS_VERSION
00149 #define  RGA_FRAME_BUFFER_ADDRESS_ALIGNMENT    4  /* byte */
00150 #define  RGA_SOURCE_IMAGE_STRIDE_ALIGNMENT     4  /* byte */
00151 #define  RGA_DESTINATION_STRIDE_ALIGNMENT      4  /* byte */
00152 #define  RGA_JPEG_ADDRESS_ALIGNMENT            4  /* byte */
00153 #define  RGA_JPEG_MAX_WIDTH_ALIGNMENT         16  /* pixel. Max of width_of_MCU */
00154 #define  RGA_JPEG_MAX_HEIGHT_ALIGNMENT        16  /* pixel. Max of height_of_MCU */
00155 #define  RGA_WORK_BUFFER_ADDRESS_ALIGNMENT     4  /* byte */
00156 #define  RGA_WORK_BUFFER_B_ADDRESS_ALIGNMENT   4  /* byte */
00157 #endif
00158 #define  RGA_VDC5_BUFFER_ADDRESS_ALIGNMENT    64  /* byte */
00159 
00160 #define  RGA_MAX_WORK_SIZE_FOR_LIB_PNG_DEFAULT   0x40000 /* byte */ /* "work_size_for_libPNG" */
00161 
00162 #define  RGA_WORK_BUFFER_DMAC_LM_WIDTH_BYTE    4  /* byte */
00163 #define  RGA_WORK_BUFFER_DMAC_LM_HEIGHT_BYTE  32  /* byte */
00164 
00165 /**
00166 * @def  R_RGA_DEFAULT_CLEAR_COLOR
00167 * @brief  R_RGA_DEFAULT_CLEAR_COLOR
00168 * @par Parameters
00169 *    None
00170 * @return  None.
00171 */
00172 #define  R_RGA_DEFAULT_CLEAR_COLOR  R_RGA_Get_R8G8B8A8( 255, 255, 255, 255 )
00173 
00174 
00175 /******************************************************************************
00176 Variable Externs
00177 ******************************************************************************/
00178 
00179 /******************************************************************************
00180 Functions Prototypes
00181 ******************************************************************************/
00182 /* in RGA_Port_typedef.h */
00183 
00184 
00185 #ifdef __cplusplus
00186 }  /* extern "C" */
00187 #endif /* __cplusplus */
00188 
00189 #endif  /* RGA_PORT_TYPEDEF_H */
00190 
00191 
00192