Lines Matching refs:layer

34 static bool is_independent(lv_layer_t * layer, lv_draw_task_t * t_check);
91 lv_draw_task_t * lv_draw_add_task(lv_layer_t * layer, const lv_area_t * coords) in lv_draw_add_task() argument
98 new_task->clip_area = layer->_clip_area; in lv_draw_add_task()
100 new_task->matrix = layer->matrix; in lv_draw_add_task()
105 if(layer->draw_task_head == NULL) { in lv_draw_add_task()
106 layer->draw_task_head = new_task; in lv_draw_add_task()
109 lv_draw_task_t * tail = layer->draw_task_head; in lv_draw_add_task()
119 void lv_draw_finalize_task_creation(lv_layer_t * layer, lv_draw_task_t * t) in lv_draw_finalize_task_creation() argument
123 base_dsc->layer = layer; in lv_draw_finalize_task_creation()
205 lv_layer_t * layer = disp->layer_head; in lv_draw_dispatch() local
206 while(layer) { in lv_draw_dispatch()
207 if(lv_draw_dispatch_layer(disp, layer)) in lv_draw_dispatch()
209 layer = layer->next; in lv_draw_dispatch()
220 bool lv_draw_dispatch_layer(lv_display_t * disp, lv_layer_t * layer) in lv_draw_dispatch_layer() argument
225 lv_draw_task_t * t = layer->draw_task_head; in lv_draw_dispatch_layer()
234 layer->draw_task_head = t_next; in lv_draw_dispatch_layer()
245 if(layer->parent && layer->all_tasks_added && layer->draw_task_head == NULL) { in lv_draw_dispatch_layer()
247 lv_draw_task_t * t_src = layer->parent->draw_task_head; in lv_draw_dispatch_layer()
251 if(draw_dsc->src == layer) { in lv_draw_dispatch_layer()
268 int32_t taken_cnt = u->dispatch_cb(u, layer); in lv_draw_dispatch_layer()
308 lv_draw_task_t * lv_draw_get_next_available_task(lv_layer_t * layer, lv_draw_task_t * t_prev, uint8… in lv_draw_get_next_available_task() argument
321 lv_draw_task_t * t = layer->draw_task_head; in lv_draw_get_next_available_task()
341 if(layer->draw_task_head) { in lv_draw_get_next_available_task()
344 lv_draw_task_t * t = layer->draw_task_head; in lv_draw_get_next_available_task()
353 lv_draw_task_t * t = t_prev ? t_prev->next : layer->draw_task_head; in lv_draw_get_next_available_task()
358 is_independent(layer, t)) { in lv_draw_get_next_available_task()
390 void lv_layer_init(lv_layer_t * layer) in lv_layer_init() argument
392 LV_ASSERT_NULL(layer); in lv_layer_init()
393 lv_memzero(layer, sizeof(lv_layer_t)); in lv_layer_init()
394 lv_layer_reset(layer); in lv_layer_init()
397 void lv_layer_reset(lv_layer_t * layer) in lv_layer_reset() argument
399 LV_ASSERT_NULL(layer); in lv_layer_reset()
401 lv_matrix_identity(&layer->matrix); in lv_layer_reset()
403 layer->opa = LV_OPA_COVER; in lv_layer_reset()
427 void lv_draw_layer_init(lv_layer_t * layer, lv_layer_t * parent_layer, lv_color_format_t color_form… in lv_draw_layer_init() argument
431 lv_layer_init(layer); in lv_draw_layer_init()
434 layer->parent = parent_layer; in lv_draw_layer_init()
435 layer->_clip_area = *area; in lv_draw_layer_init()
436 layer->buf_area = *area; in lv_draw_layer_init()
437 layer->phy_clip_area = *area; in lv_draw_layer_init()
438 layer->color_format = color_format; in lv_draw_layer_init()
440 if(disp->layer_init) disp->layer_init(disp, layer); in lv_draw_layer_init()
445 tail->next = layer; in lv_draw_layer_init()
448 disp->layer_head = layer; in lv_draw_layer_init()
455 void * lv_draw_layer_alloc_buf(lv_layer_t * layer) in lv_draw_layer_alloc_buf() argument
459 if(layer->draw_buf != NULL) { in lv_draw_layer_alloc_buf()
461 return layer->draw_buf->data; in lv_draw_layer_alloc_buf()
465 int32_t w = lv_area_get_width(&layer->buf_area); in lv_draw_layer_alloc_buf()
466 int32_t h = lv_area_get_height(&layer->buf_area); in lv_draw_layer_alloc_buf()
467 uint32_t layer_size_byte = h * lv_draw_buf_width_to_stride(w, layer->color_format); in lv_draw_layer_alloc_buf()
478 layer->draw_buf = lv_draw_buf_create(w, h, layer->color_format, 0); in lv_draw_layer_alloc_buf()
480 if(layer->draw_buf == NULL) { in lv_draw_layer_alloc_buf()
489 if(lv_color_format_has_alpha(layer->color_format)) { in lv_draw_layer_alloc_buf()
490 lv_draw_buf_clear(layer->draw_buf, NULL); in lv_draw_layer_alloc_buf()
494 return layer->draw_buf->data; in lv_draw_layer_alloc_buf()
497 void * lv_draw_layer_go_to_xy(lv_layer_t * layer, int32_t x, int32_t y) in lv_draw_layer_go_to_xy() argument
499 return lv_draw_buf_goto_xy(layer->draw_buf, x, y); in lv_draw_layer_go_to_xy()
527 static bool is_independent(lv_layer_t * layer, lv_draw_task_t * t_check) in is_independent() argument
530 lv_draw_task_t * t = layer->draw_task_head; in is_independent()