Lines Matching refs:p

55 …                                                                 lv_draw_sw_mask_line_param_t * p);
59 … lv_draw_sw_mask_line_param_t * p);
110 void lv_draw_sw_mask_free_param(void * p) in lv_draw_sw_mask_free_param() argument
113 lv_draw_sw_mask_common_dsc_t * pdsc = p; in lv_draw_sw_mask_free_param()
115 lv_draw_sw_mask_radius_param_t * radius_p = (lv_draw_sw_mask_radius_param_t *) p; in lv_draw_sw_mask_free_param()
384 … lv_draw_sw_mask_line_param_t * p) in lv_draw_mask_line() argument
387 abs_y -= p->origo.y; in lv_draw_mask_line()
388 abs_x -= p->origo.x; in lv_draw_mask_line()
391 if(p->steep == 0) { in lv_draw_mask_line()
393 if(p->flat) { in lv_draw_mask_line()
395 if(p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_LEFT || in lv_draw_mask_line()
396p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_RIGHT) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_line()
397 …else if(p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_TOP && abs_y < 0) return LV_DRAW_SW_MASK_RES_FULL… in lv_draw_mask_line()
398 …else if(p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_BOTTOM && abs_y > 0) return LV_DRAW_SW_MASK_RES_F… in lv_draw_mask_line()
406 if(p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_TOP || in lv_draw_mask_line()
407p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_BOTTOM) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_line()
408 …else if(p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_RIGHT && abs_x > 0) return LV_DRAW_SW_MASK_RES_FU… in lv_draw_mask_line()
409 else if(p->cfg.side == LV_DRAW_SW_MASK_LINE_SIDE_LEFT) { in lv_draw_mask_line()
432 if(p->flat) { in lv_draw_mask_line()
433 res = line_mask_flat(mask_buf, abs_x, abs_y, len, p); in lv_draw_mask_line()
436 res = line_mask_steep(mask_buf, abs_x, abs_y, len, p); in lv_draw_mask_line()
445 lv_draw_sw_mask_line_param_t * p) in line_mask_flat() argument
449 y_at_x = (int32_t)((int32_t)p->yx_steep * abs_x) >> 10; in line_mask_flat()
451 if(p->yx_steep > 0) { in line_mask_flat()
453 if(p->inv) { in line_mask_flat()
463 if(p->inv) { in line_mask_flat()
474 y_at_x = (int32_t)((int32_t)p->yx_steep * (abs_x + len)) >> 10; in line_mask_flat()
475 if(p->yx_steep > 0) { in line_mask_flat()
477 if(p->inv) { in line_mask_flat()
487 if(p->inv) { in line_mask_flat()
497 if(p->yx_steep > 0) xe = ((abs_y * 256) * p->xy_steep) >> 10; in line_mask_flat()
498 else xe = (((abs_y + 1) * 256) * p->xy_steep) >> 10; in line_mask_flat()
505 else px_h = 255 - (((255 - xef) * p->spx) >> 8); in line_mask_flat()
512 if(p->inv) m = 255 - m; in line_mask_flat()
518 while(px_h > p->spx) { in line_mask_flat()
520 m = px_h - (p->spx >> 1); in line_mask_flat()
521 if(p->inv) m = 255 - m; in line_mask_flat()
524 px_h -= p->spx; in line_mask_flat()
530 int32_t x_inters = (px_h * p->xy_steep) >> 10; in line_mask_flat()
532 if(p->yx_steep < 0) m = 255 - m; in line_mask_flat()
533 if(p->inv) m = 255 - m; in line_mask_flat()
537 if(p->inv) { in line_mask_flat()
562 lv_draw_sw_mask_line_param_t * p) in line_mask_steep() argument
568 x_at_y = (int32_t)((int32_t)p->xy_steep * abs_y) >> 10; in line_mask_steep()
569 if(p->xy_steep > 0) x_at_y++; in line_mask_steep()
571 if(p->inv) { in line_mask_steep()
581 x_at_y = (int32_t)((int32_t)p->xy_steep * (abs_y)) >> 10; in line_mask_steep()
583 if(p->inv) { in line_mask_steep()
592 int32_t xs = ((abs_y * 256) * p->xy_steep) >> 10; in line_mask_steep()
597 int32_t xe = (((abs_y + 1) * 256) * p->xy_steep) >> 10; in line_mask_steep()
604 if(xsi != xei && (p->xy_steep < 0 && xsf == 0)) { in line_mask_steep()
613 if(p->inv) m = 255 - m; in line_mask_steep()
618 if(p->inv) { in line_mask_steep()
635 if(p->xy_steep < 0) { in line_mask_steep()
636 y_inters = (xsf * (-p->yx_steep)) >> 10; in line_mask_steep()
639 if(p->inv) m = 255 - m; in line_mask_steep()
644 int32_t x_inters = ((255 - y_inters) * (-p->xy_steep)) >> 10; in line_mask_steep()
648 if(p->inv) m = 255 - m; in line_mask_steep()
654 if(p->inv) { in line_mask_steep()
668 y_inters = ((255 - xsf) * p->yx_steep) >> 10; in line_mask_steep()
671 if(p->inv) m = 255 - m; in line_mask_steep()
677 int32_t x_inters = ((255 - y_inters) * p->xy_steep) >> 10; in line_mask_steep()
680 if(p->inv) m = 255 - m; in line_mask_steep()
685 if(p->inv) { in line_mask_steep()
704 … lv_draw_sw_mask_angle_param_t * p) in lv_draw_mask_angle() argument
706 int32_t rel_y = abs_y - p->cfg.vertex_p.y; in lv_draw_mask_angle()
707 int32_t rel_x = abs_x - p->cfg.vertex_p.x; in lv_draw_mask_angle()
709 if(p->cfg.start_angle < 180 && p->cfg.end_angle < 180 && in lv_draw_mask_angle()
710 p->cfg.start_angle != 0 && p->cfg.end_angle != 0 && in lv_draw_mask_angle()
711 p->cfg.start_angle > p->cfg.end_angle) { in lv_draw_mask_angle()
713 if(abs_y < p->cfg.vertex_p.y) { in lv_draw_mask_angle()
718 int32_t end_angle_first = (rel_y * p->end_line.xy_steep) >> 10; in lv_draw_mask_angle()
719 int32_t start_angle_last = ((rel_y + 1) * p->start_line.xy_steep) >> 10; in lv_draw_mask_angle()
722 …if(p->cfg.start_angle > 270 && p->cfg.start_angle <= 359 && start_angle_last < 0) start_angle_last… in lv_draw_mask_angle()
723 …else if(p->cfg.start_angle > 0 && p->cfg.start_angle <= 90 && start_angle_last < 0) start_angle_la… in lv_draw_mask_angle()
724 …else if(p->cfg.start_angle > 90 && p->cfg.start_angle < 270 && start_angle_last > 0) start_angle_l… in lv_draw_mask_angle()
726 …if(p->cfg.end_angle > 270 && p->cfg.end_angle <= 359 && start_angle_last < 0) start_angle_last = 0; in lv_draw_mask_angle()
727 …else if(p->cfg.end_angle > 0 && p->cfg.end_angle <= 90 && start_angle_last < 0) start_angle_last… in lv_draw_mask_angle()
728 …else if(p->cfg.end_angle > 90 && p->cfg.end_angle < 270 && start_angle_last > 0) start_angle_last… in lv_draw_mask_angle()
738 res1 = lv_draw_mask_line(&mask_buf[0], abs_x, abs_y, tmp, &p->start_line); in lv_draw_mask_angle()
746 res2 = lv_draw_mask_line(&mask_buf[tmp], abs_x + tmp, abs_y, len - tmp, &p->end_line); in lv_draw_mask_angle()
753 …else if(p->cfg.start_angle > 180 && p->cfg.end_angle > 180 && p->cfg.start_angle > p->cfg.end_angl… in lv_draw_mask_angle()
755 if(abs_y > p->cfg.vertex_p.y) { in lv_draw_mask_angle()
760 int32_t end_angle_first = (rel_y * p->end_line.xy_steep) >> 10; in lv_draw_mask_angle()
761 int32_t start_angle_last = ((rel_y + 1) * p->start_line.xy_steep) >> 10; in lv_draw_mask_angle()
764 …if(p->cfg.start_angle > 270 && p->cfg.start_angle <= 359 && start_angle_last < 0) start_angle_last… in lv_draw_mask_angle()
765 …else if(p->cfg.start_angle > 0 && p->cfg.start_angle <= 90 && start_angle_last < 0) start_angle_la… in lv_draw_mask_angle()
766 …else if(p->cfg.start_angle > 90 && p->cfg.start_angle < 270 && start_angle_last > 0) start_angle_l… in lv_draw_mask_angle()
768 …if(p->cfg.end_angle > 270 && p->cfg.end_angle <= 359 && start_angle_last < 0) start_angle_last = 0; in lv_draw_mask_angle()
769 …else if(p->cfg.end_angle > 0 && p->cfg.end_angle <= 90 && start_angle_last < 0) start_angle_last… in lv_draw_mask_angle()
770 …else if(p->cfg.end_angle > 90 && p->cfg.end_angle < 270 && start_angle_last > 0) start_angle_last… in lv_draw_mask_angle()
780 …= lv_draw_mask_line(&mask_buf[0], abs_x, abs_y, tmp, (lv_draw_sw_mask_line_param_t *)&p->end_line); in lv_draw_mask_angle()
788 …ine(&mask_buf[tmp], abs_x + tmp, abs_y, len - tmp, (lv_draw_sw_mask_line_param_t *)&p->start_line); in lv_draw_mask_angle()
800 if(p->cfg.start_angle == 180) { in lv_draw_mask_angle()
801 if(abs_y < p->cfg.vertex_p.y) res1 = LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_angle()
804 else if(p->cfg.start_angle == 0) { in lv_draw_mask_angle()
805 if(abs_y < p->cfg.vertex_p.y) res1 = LV_DRAW_SW_MASK_RES_UNKNOWN; in lv_draw_mask_angle()
808 else if((p->cfg.start_angle < 180 && abs_y < p->cfg.vertex_p.y) || in lv_draw_mask_angle()
809 (p->cfg.start_angle > 180 && abs_y >= p->cfg.vertex_p.y)) { in lv_draw_mask_angle()
813 res1 = lv_draw_mask_line(mask_buf, abs_x, abs_y, len, &p->start_line); in lv_draw_mask_angle()
816 if(p->cfg.end_angle == 180) { in lv_draw_mask_angle()
817 if(abs_y < p->cfg.vertex_p.y) res2 = LV_DRAW_SW_MASK_RES_UNKNOWN; in lv_draw_mask_angle()
820 else if(p->cfg.end_angle == 0) { in lv_draw_mask_angle()
821 if(abs_y < p->cfg.vertex_p.y) res2 = LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_angle()
824 else if((p->cfg.end_angle < 180 && abs_y < p->cfg.vertex_p.y) || in lv_draw_mask_angle()
825 (p->cfg.end_angle > 180 && abs_y >= p->cfg.vertex_p.y)) { in lv_draw_mask_angle()
829 res2 = lv_draw_mask_line(mask_buf, abs_x, abs_y, len, &p->end_line); in lv_draw_mask_angle()
842 … lv_draw_sw_mask_radius_param_t * p) in lv_draw_mask_radius() argument
844 bool outer = p->cfg.outer; in lv_draw_mask_radius()
845 int32_t radius = p->cfg.radius; in lv_draw_mask_radius()
847 lv_area_copy(&rect, &p->cfg.rect); in lv_draw_mask_radius()
907 lv_opa_t * aa_opa = get_next_line(p->circle, cir_y, &aa_len, &x_start); in lv_draw_mask_radius()
952 … lv_draw_sw_mask_fade_param_t * p) in lv_draw_mask_fade() argument
954 if(abs_y < p->cfg.coords.y1) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_fade()
955 if(abs_y > p->cfg.coords.y2) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_fade()
956 if(abs_x + len < p->cfg.coords.x1) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_fade()
957 if(abs_x > p->cfg.coords.x2) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_fade()
959 if(abs_x + len > p->cfg.coords.x2) len -= abs_x + len - p->cfg.coords.x2 - 1; in lv_draw_mask_fade()
961 if(abs_x < p->cfg.coords.x1) { in lv_draw_mask_fade()
963 x_ofs = p->cfg.coords.x1 - abs_x; in lv_draw_mask_fade()
970 if(abs_y <= p->cfg.y_top) { in lv_draw_mask_fade()
972 mask_buf[i] = mask_mix(mask_buf[i], p->cfg.opa_top); in lv_draw_mask_fade()
976 else if(abs_y >= p->cfg.y_bottom) { in lv_draw_mask_fade()
978 mask_buf[i] = mask_mix(mask_buf[i], p->cfg.opa_bottom); in lv_draw_mask_fade()
984 int16_t opa_diff = p->cfg.opa_bottom - p->cfg.opa_top; in lv_draw_mask_fade()
985 int32_t y_diff = p->cfg.y_bottom - p->cfg.y_top + 1; in lv_draw_mask_fade()
986 lv_opa_t opa_act = LV_OPA_MIX2(abs_y - p->cfg.y_top, opa_diff) / y_diff; in lv_draw_mask_fade()
987 opa_act += p->cfg.opa_top; in lv_draw_mask_fade()
998 lv_draw_sw_mask_map_param_t * p) in lv_draw_mask_map() argument
1001 if(abs_y < p->cfg.coords.y1) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_map()
1002 if(abs_y > p->cfg.coords.y2) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_map()
1003 if(abs_x + len < p->cfg.coords.x1) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_map()
1004 if(abs_x > p->cfg.coords.x2) return LV_DRAW_SW_MASK_RES_FULL_COVER; in lv_draw_mask_map()
1007 const lv_opa_t * map_tmp = p->cfg.map; in lv_draw_mask_map()
1008 map_tmp += (abs_y - p->cfg.coords.y1) * lv_area_get_width(&p->cfg.coords); in lv_draw_mask_map()
1010 if(abs_x + len > p->cfg.coords.x2) len -= abs_x + len - p->cfg.coords.x2 - 1; in lv_draw_mask_map()
1012 if(abs_x < p->cfg.coords.x1) { in lv_draw_mask_map()
1014 x_ofs = p->cfg.coords.x1 - abs_x; in lv_draw_mask_map()
1019 map_tmp += (abs_x - p->cfg.coords.x1); in lv_draw_mask_map()