1 /** 2 * @file lv_vglite_matrix.h 3 * 4 */ 5 6 /** 7 * Copyright 2023 NXP 8 * 9 * SPDX-License-Identifier: MIT 10 */ 11 12 #ifndef LV_VGLITE_MATRIX_H 13 #define LV_VGLITE_MATRIX_H 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 /********************* 20 * INCLUDES 21 *********************/ 22 #include "../../../lv_conf_internal.h" 23 24 #if LV_USE_DRAW_VGLITE 25 26 #include "../../lv_draw_image.h" 27 #include "../../lv_draw.h" 28 29 #include "vg_lite.h" 30 31 /********************* 32 * DEFINES 33 *********************/ 34 35 /********************** 36 * TYPEDEFS 37 **********************/ 38 39 /********************** 40 * STATIC PROTOTYPES 41 **********************/ 42 43 /********************** 44 * GLOBAL PROTOTYPES 45 **********************/ 46 47 vg_lite_matrix_t * vglite_get_matrix(void); 48 49 /** 50 * Creates matrix that translates to origin of given destination area. 51 * 52 * @param[in] dest_area Area with relative coordinates of destination buffer 53 * 54 */ 55 void vglite_set_translation_matrix(const lv_area_t * dest_area); 56 57 /** 58 * Creates matrix that translates to origin of given destination area with transformation (scale or rotate). 59 * 60 * @param[in] dest_area Area with relative coordinates of destination buffer 61 * @param[in] dsc Image descriptor 62 * 63 */ 64 void vglite_set_transformation_matrix(const lv_area_t * dest_area, const lv_draw_image_dsc_t * dsc); 65 66 /********************** 67 * MACROS 68 **********************/ 69 70 /********************** 71 * STATIC FUNCTIONS 72 **********************/ 73 74 #endif /*LV_USE_DRAW_VGLITE*/ 75 76 #ifdef __cplusplus 77 } /*extern "C"*/ 78 #endif 79 80 #endif /*LV_VGLITE_MATRIX_H*/ 81