1 /* 2 * Copyright 2019 NXP 3 * All rights reserved. 4 * 5 * SPDX-License-Identifier: BSD-3-Clause 6 */ 7 8 #ifndef _VGLITE_WINDOW_H_ 9 #define _VGLITE_WINDOW_H_ 10 11 #include "fsl_common.h" 12 #include "vg_lite.h" 13 #include "vglite_support.h" 14 #include "display_support.h" 15 #include "fsl_fbdev.h" 16 17 /******************************************************************************* 18 * Definitions 19 ******************************************************************************/ 20 21 #define APP_BUFFER_COUNT 2 22 23 typedef struct vg_lite_display 24 { 25 fbdev_t g_fbdev; 26 fbdev_fb_info_t g_fbInfo; 27 } vg_lite_display_t; 28 29 typedef struct vg_lite_window 30 { 31 vg_lite_display_t *display; 32 vg_lite_buffer_t buffers[APP_BUFFER_COUNT]; 33 int width; 34 int height; 35 int bufferCount; 36 int current; 37 } vg_lite_window_t; 38 39 /******************************************************************************* 40 * API 41 ******************************************************************************/ 42 #if defined(__cplusplus) 43 extern "C" { 44 #endif /* __cplusplus */ 45 46 vg_lite_error_t VGLITE_CreateDisplay(vg_lite_display_t *display); 47 48 vg_lite_error_t VGLITE_CreateWindow(vg_lite_display_t *display, vg_lite_window_t *window); 49 50 vg_lite_error_t VGLITE_DestoryWindow(void); 51 52 vg_lite_error_t VGLITE_DestroyDisplay(void); 53 54 vg_lite_buffer_t *VGLITE_GetRenderTarget(vg_lite_window_t *window); 55 56 void VGLITE_SwapBuffers(vg_lite_window_t *window); 57 58 #if defined(__cplusplus) 59 } 60 #endif /* __cplusplus */ 61 62 #endif /* _VGLITE_WINDOW_H_ */ 63