GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: gx_display_driver_24xrgb_rotated_setup.c Lines: 34 34 100.0 %
Date: 2026-03-06 19:21:09 Branches: 0 0 - %

Line Branch Exec Source
1
2
/***************************************************************************
3
 * Copyright (c) 2024 Microsoft Corporation
4
 * Copyright (c) 2026-present Eclipse ThreadX contributors
5
 *
6
 * This program and the accompanying materials are made available under the
7
 * terms of the MIT License which is available at
8
 * https://opensource.org/licenses/MIT.
9
 *
10
 * SPDX-License-Identifier: MIT
11
 **************************************************************************/
12
13
14
/**************************************************************************/
15
/**************************************************************************/
16
/**                                                                       */
17
/** GUIX Component                                                        */
18
/**                                                                       */
19
/**   Display Management (Display)                                        */
20
/**                                                                       */
21
/**************************************************************************/
22
#define GX_SOURCE_CODE
23
24
#include "gx_api.h"
25
#include "gx_display.h"
26
27
/**************************************************************************/
28
/*                                                                        */
29
/*  FUNCTION                                               RELEASE        */
30
/*                                                                        */
31
/*    _gx_display_driver_24xrgb_rotated_setup             PORTABLE C      */
32
/*                                                           6.1.4        */
33
/*  AUTHOR                                                                */
34
/*                                                                        */
35
/*    Kenneth Maxwell, Microsoft Corporation                              */
36
/*                                                                        */
37
/*  DESCRIPTION                                                           */
38
/*                                                                        */
39
/*    Generic rotated 32-bit XRGB color format display driver setup       */
40
/*    routine.                                                            */
41
/*                                                                        */
42
/*  INPUT                                                                 */
43
/*                                                                        */
44
/*    display                               The display control block     */
45
/*    aux_data                              Driver-defined auxiliary data */
46
/*    toggle_function                       Driver-defined screen toggle  */
47
/*                                            function                    */
48
/*                                                                        */
49
/*  OUTPUT                                                                */
50
/*                                                                        */
51
/*    None                                                                */
52
/*                                                                        */
53
/*  CALLS                                                                 */
54
/*                                                                        */
55
/*    None                                                                */
56
/*                                                                        */
57
/*  CALLED BY                                                             */
58
/*                                                                        */
59
/*    GUIX Internal Code                                                  */
60
/*                                                                        */
61
/**************************************************************************/
62
32
VOID _gx_display_driver_24xrgb_rotated_setup(GX_DISPLAY *display, VOID *aux_data,
63
                                             VOID (*toggle_function)(struct GX_CANVAS_STRUCT *canvas,
64
                                                                     GX_RECTANGLE *dirty_area))
65
{
66
32
    _gx_display_driver_24xrgb_setup(display, aux_data, toggle_function);
67
68
#if defined(GX_MOUSE_SUPPORT)
69
    display -> gx_display_mouse_capture = GX_NULL;
70
    display -> gx_display_mouse_restore = GX_NULL;
71
    display -> gx_display_mouse_capture = GX_NULL;
72
    display -> gx_display_mouse_restore = GX_NULL;
73
    display -> gx_display_mouse_draw = GX_NULL;
74
    display -> gx_display_driver_drawing_initiate = GX_NULL;
75
    display -> gx_display_driver_drawing_complete = GX_NULL;
76
    display -> gx_display_mouse_position_set = GX_NULL;
77
    display -> gx_display_mouse_enable = GX_NULL;
78
#endif
79
80
32
    display -> gx_display_rotation_angle                       = GX_SCREEN_ROTATION_CW;
81
32
    display -> gx_display_driver_canvas_copy                   = _gx_display_driver_32bpp_rotated_canvas_copy;
82
32
    display -> gx_display_driver_simple_line_draw              = _gx_display_driver_32bpp_rotated_simple_line_draw;
83
32
    display -> gx_display_driver_horizontal_line_draw          = _gx_display_driver_32bpp_rotated_horizontal_line_draw;
84
32
    display -> gx_display_driver_vertical_line_draw            = _gx_display_driver_32bpp_rotated_vertical_line_draw;
85
32
    display -> gx_display_driver_horizontal_pattern_line_draw  = _gx_display_driver_32bpp_rotated_horizontal_pattern_line_draw;
86
32
    display -> gx_display_driver_vertical_pattern_line_draw    = _gx_display_driver_32bpp_rotated_vertical_pattern_line_draw;
87
32
    display -> gx_display_driver_horizontal_pixelmap_line_draw = _gx_display_driver_32bpp_rotated_horizontal_pixelmap_line_draw;
88
32
    display -> gx_display_driver_pixel_write                   = _gx_display_driver_32bpp_rotated_pixel_write;
89
32
    display -> gx_display_driver_block_move                    = _gx_display_driver_32bpp_rotated_block_move;
90
91
32
    display -> gx_display_driver_pixelmap_draw                 = _gx_display_driver_32bpp_rotated_pixelmap_draw;
92
32
    display -> gx_display_driver_pixelmap_rotate               = _gx_display_driver_32bpp_rotated_pixelmap_rotate;
93
32
    display -> gx_display_driver_alphamap_draw                 = _gx_display_driver_generic_rotated_alphamap_draw;
94
32
    display -> gx_display_driver_polygon_fill                  = _gx_display_driver_generic_rotated_polygon_fill;
95
96
#if defined(GX_ARC_DRAWING_SUPPORT)
97
32
    display -> gx_display_driver_circle_fill                   = _gx_display_driver_generic_rotated_circle_fill;
98
32
    display -> gx_display_driver_pie_fill                      = _gx_display_driver_generic_rotated_pie_fill;
99
32
    display -> gx_display_driver_arc_fill                      = _gx_display_driver_generic_rotated_arc_fill;
100
32
    display -> gx_display_driver_ellipse_fill                  = _gx_display_driver_generic_rotated_ellipse_fill;
101
#endif
102
103
32
    display -> gx_display_driver_palette_set                   = GX_NULL;
104
32
    display -> gx_display_driver_buffer_toggle                 = toggle_function;
105
106
32
    display -> gx_display_driver_canvas_blend                  = _gx_display_driver_24xrgb_rotated_canvas_blend;
107
32
    display -> gx_display_driver_pixel_blend                   = _gx_display_driver_24xrgb_rotated_pixel_blend;
108
32
    display -> gx_display_driver_pixelmap_blend                = _gx_display_driver_32bpp_rotated_pixelmap_blend;
109
110
32
    display -> gx_display_driver_8bit_glyph_draw               = _gx_display_driver_generic_rotated_glyph_8bit_draw;
111
32
    display -> gx_display_driver_4bit_glyph_draw               = _gx_display_driver_generic_rotated_glyph_4bit_draw;
112
32
    display -> gx_display_driver_1bit_glyph_draw               = _gx_display_driver_32bpp_rotated_glyph_1bit_draw;
113
114
32
    display -> gx_display_driver_8bit_compressed_glyph_draw    = GX_NULL;
115
32
    display -> gx_display_driver_4bit_compressed_glyph_draw    = GX_NULL;
116
32
    display -> gx_display_driver_1bit_compressed_glyph_draw    = GX_NULL;
117
118
#if defined(GX_SOFTWARE_DECODER_SUPPORT)
119
32
    display -> gx_display_driver_jpeg_draw                     = _gx_display_driver_24xrgb_rotated_jpeg_draw;
120
32
    display -> gx_display_driver_png_draw                      = _gx_display_driver_24xrgb_rotated_png_draw;
121
#endif
122
32
}
123