1 /** 2 * @file lv_draw_mask.h 3 * 4 */ 5 6 #ifndef LV_DRAW_MASK_H 7 #define LV_DRAW_MASK_H 8 9 #ifdef __cplusplus 10 extern "C" { 11 #endif 12 13 /********************* 14 * INCLUDES 15 *********************/ 16 #include "../misc/lv_color.h" 17 #include "../misc/lv_area.h" 18 #include "../misc/lv_style.h" 19 20 /********************* 21 * DEFINES 22 *********************/ 23 24 /********************** 25 * GLOBAL PROTOTYPES 26 **********************/ 27 28 /** 29 * Initialize a rectangle mask draw descriptor. 30 * @param dsc pointer to a draw descriptor 31 */ 32 void /* LV_ATTRIBUTE_FAST_MEM */ lv_draw_mask_rect_dsc_init(lv_draw_mask_rect_dsc_t * dsc); 33 34 /** 35 * Try to get a rectangle mask draw descriptor from a draw task. 36 * @param task draw task 37 * @return the task's draw descriptor or NULL if the task is not of type LV_DRAW_TASK_TYPE_MASK_RECTANGLE 38 */ 39 lv_draw_mask_rect_dsc_t * lv_draw_task_get_mask_rect_dsc(lv_draw_task_t * task); 40 41 /** 42 * Create a draw task to mask a rectangle from the buffer 43 * @param layer pointer to a layer 44 * @param dsc pointer to a draw descriptor 45 */ 46 void lv_draw_mask_rect(lv_layer_t * layer, const lv_draw_mask_rect_dsc_t * dsc); 47 48 /********************** 49 * MACROS 50 **********************/ 51 52 #ifdef __cplusplus 53 } /*extern "C"*/ 54 #endif 55 56 #endif /*LV_DRAW_MASK_H*/ 57