30#ifndef __ARM_2D_HELPER_SHAPE_H__
31#define __ARM_2D_HELPER_SHAPE_H__
41#if __GLCD_CFG_COLOUR_DEPTH__ == 8
42# define COLOUR_INT uint8_t
43#elif __GLCD_CFG_COLOUR_DEPTH__ == 16
44# define COLOUR_INT uint16_t
45#elif __GLCD_CFG_COLOUR_DEPTH__ == 32
46# define COLOUR_INT uint32_t
48# error Unsupported colour depth!
54#define draw_round_corner_box( __target_tile_ptr, \
60 __draw_round_corner_box( \
61 (__target_tile_ptr), \
66 (((const arm_2d_tile_t *)&c_tileWhiteDotMask),##__VA_ARGS__))
68#define __draw_round_corner_image2( __source_tile_ptr, \
74 __draw_round_corner_image( \
75 (__source_tile_ptr), \
76 (__target_tile_ptr), \
80 ((const arm_2d_tile_t *)(__circle_mask_addr)))
82#define __draw_round_corner_image1( __source_tile_ptr, \
87 __draw_round_corner_image( \
88 (__source_tile_ptr), \
89 (__target_tile_ptr), \
93 ((const arm_2d_tile_t *)&c_tileWhiteDotMask))
95#define __draw_round_corner_image0( __source_tile_ptr, \
99 __draw_round_corner_image( \
100 (__source_tile_ptr), \
101 (__target_tile_ptr), \
105 ((const arm_2d_tile_t *)&c_tileWhiteDotMask))
107#define draw_round_corner_image(__source_tile_ptr, \
112 ARM_CONNECT2( __draw_round_corner_image, \
113 __ARM_VA_NUM_ARGS(__VA_ARGS__))( \
114 (__source_tile_ptr), \
115 (__target_tile_ptr), \
117 (__is_new_frame),##__VA_ARGS__)
119#define draw_round_corner_border(__target_tile_ptr, \
120 __target_region_ptr, \
123 __draw_round_corner_border( (__target_tile_ptr), \
124 (__target_region_ptr), \
129#define draw_round_corner_border_with_circle_mask(__target_tile_ptr, \
130 __target_region_ptr, \
134 __draw_round_corner_border( \
135 (__target_tile_ptr), \
136 (__target_region_ptr), \
139 (const arm_2d_tile_t *)(__circle_mask_ptr))
153 uint8_t chBottomLeft;
154 uint8_t chBottomRight;
183void __draw_round_corner_image( const
arm_2d_tile_t *ptSource,
192void __draw_round_corner_border(const
arm_2d_tile_t *ptTarget,
204 bool bIsReflectionOnTop);