lv_draw_sw_mask_private.h

Typedefs

typedef lv_draw_sw_mask_radius_circle_dsc_t lv_draw_sw_mask_radius_circle_dsc_arr_t[4]

Functions

void lv_draw_sw_mask_cleanup(void)

Called by LVGL the rendering of a screen is ready to clean up the temporal (cache) data of the masks

struct lv_draw_sw_mask_radius_circle_dsc_t

Public Members

uint8_t *buf
lv_opa_t *cir_opa

Opacity of values on the circumference of an 1/4 circle

uint16_t *x_start_on_y

The x coordinate of the circle for each y value

uint16_t *opa_start_on_y

The index of cir_opa for each y value

int32_t life

How many times the entry way used

uint32_t used_cnt

Like a semaphore to count the referencing masks

int32_t radius

The radius of the entry

struct _lv_draw_sw_mask_common_dsc_t
struct _lv_draw_sw_mask_line_param_t

Public Members

lv_draw_sw_mask_common_dsc_t dsc

The first element must be the common descriptor

lv_point_t p1
lv_point_t p2
lv_draw_sw_mask_line_side_t side
struct _lv_draw_sw_mask_line_param_t cfg
lv_point_t origo

A point of the line

int32_t xy_steep

X / (1024*Y) steepness (X is 0..1023 range). What is the change of X in 1024 Y?

int32_t yx_steep

Y / (1024*X) steepness (Y is 0..1023 range). What is the change of Y in 1024 X?

int32_t steep

Helper which stores yx_steep for flat lines and xy_steep for steep (non flat) lines

int32_t spx

Steepness in 1 px in 0..255 range. Used only by flat lines.

uint8_t flat

1: It's a flat line? (Near to horizontal)

uint8_t inv

Invert the mask. The default is: Keep the left part. It is used to select left/right/top/bottom

struct _lv_draw_sw_mask_angle_param_t

Public Members

lv_draw_sw_mask_common_dsc_t dsc

The first element must be the common descriptor

lv_point_t vertex_p
int32_t start_angle
int32_t end_angle
struct _lv_draw_sw_mask_angle_param_t cfg
lv_draw_sw_mask_line_param_t start_line
lv_draw_sw_mask_line_param_t end_line
uint16_t delta_deg
struct _lv_draw_sw_mask_radius_param_t

Public Members

lv_draw_sw_mask_common_dsc_t dsc

The first element must be the common descriptor

lv_area_t rect
int32_t radius
uint8_t outer

Invert the mask. 0: Keep the pixels inside.

struct _lv_draw_sw_mask_radius_param_t cfg
lv_draw_sw_mask_radius_circle_dsc_t *circle
struct _lv_draw_sw_mask_fade_param_t

Public Members

lv_draw_sw_mask_common_dsc_t dsc

The first element must be the common descriptor

lv_area_t coords
int32_t y_top
int32_t y_bottom
lv_opa_t opa_top
lv_opa_t opa_bottom
struct _lv_draw_sw_mask_fade_param_t cfg
struct _lv_draw_sw_mask_map_param_t

Public Members

lv_draw_sw_mask_common_dsc_t dsc

The first element must be the common descriptor

lv_area_t coords
const lv_opa_t *map
struct _lv_draw_sw_mask_map_param_t cfg