Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
dt_drawlayer_worker_t Struct Reference

Drawlayer worker global state shared with drawlayer module. More...

+ Collaboration diagram for dt_drawlayer_worker_t:

Data Fields

dt_iop_module_tself
 
gboolean * painting
 
gboolean * finish_commit_pending
 
guint * stroke_sample_count
 
uint32_t * current_stroke_batch
 
dt_pthread_mutex_t worker_mutex
 
pthread_cond_t worker_cond
 
drawlayer_rt_worker_t workers [DRAWLAYER_RT_WORKER_COUNT]
 
guint finish_commit_source_id
 
GArray * backend_history
 
GArray * stroke_raw_inputs
 
dt_drawlayer_paint_stroke_tstroke
 
dt_drawlayer_damaged_rect_tbackend_path
 
gint64 live_publish_ts
 
uint32_t live_publish_serial
 
dt_drawlayer_damaged_rect_t live_publish_damage
 
pthread_t fullres_thread
 
GQueue * finished_stroke_queue
 
dt_drawlayer_worker_state_t fullres_state
 
gboolean fullres_stop
 
gboolean finished_stroke_queued
 
dt_drawlayer_worker_finished_stroke_cb finished_stroke_cb
 

Detailed Description

Drawlayer worker global state shared with drawlayer module.

Field Documentation

◆ backend_history

GArray* dt_drawlayer_worker_t::backend_history

Emitted dab history owned by worker.

Referenced by _rt_destroy_state(), _rt_init_state(), _stroke_begin(), _stroke_clear(), and _stroke_create().

◆ backend_path

dt_drawlayer_damaged_rect_t* dt_drawlayer_worker_t::backend_path

Worker-owned backend damage accumulator.

Referenced by _reset_backend_path(), _rt_destroy_state(), and _rt_init_state().

◆ current_stroke_batch

uint32_t* dt_drawlayer_worker_t::current_stroke_batch

External stroke-batch counter mirror.

Referenced by _enqueue_stroke_end(), and _rt_init_state().

◆ finish_commit_pending

◆ finish_commit_source_id

guint dt_drawlayer_worker_t::finish_commit_source_id

Pending idle callback id (0 if none).

Referenced by _async_commit_idle(), _cancel_async_commit(), and _schedule_async_commit_if_ready_locked().

◆ finished_stroke_cb

dt_drawlayer_worker_finished_stroke_cb dt_drawlayer_worker_t::finished_stroke_cb

Replay callback owned by drawlayer.

Referenced by _drawlayer_fullres_worker_main(), _enqueue_finished_stroke(), and _rt_init_state().

◆ finished_stroke_queue

GQueue* dt_drawlayer_worker_t::finished_stroke_queue

◆ finished_stroke_queued

gboolean dt_drawlayer_worker_t::finished_stroke_queued

Current preserved stroke already handed off.

Referenced by _enqueue_finished_stroke(), _stroke_begin(), _stroke_clear(), and dt_drawlayer_worker_finished_stroke_queued().

◆ fullres_state

◆ fullres_stop

gboolean dt_drawlayer_worker_t::fullres_stop

◆ fullres_thread

pthread_t dt_drawlayer_worker_t::fullres_thread

Deferred full-resolution replay worker.

Referenced by _start_fullres_worker(), and _stop_worker().

◆ live_publish_damage

dt_drawlayer_damaged_rect_t dt_drawlayer_worker_t::live_publish_damage

Worker-owned accumulated publish damage.

Referenced by _process_backend_dab(), _publish_backend_progress(), _rasterize_pending_dab_batch(), and _reset_live_publish().

◆ live_publish_serial

uint32_t dt_drawlayer_worker_t::live_publish_serial

Monotonic live publish serial.

Referenced by _publish_backend_progress(), and _reset_live_publish().

◆ live_publish_ts

gint64 dt_drawlayer_worker_t::live_publish_ts

◆ painting

gboolean* dt_drawlayer_worker_t::painting

External painting-state mirror.

Referenced by _rt_init_state(), and _workers_ready_for_commit_locked().

◆ self

◆ stroke

◆ stroke_raw_inputs

GArray* dt_drawlayer_worker_t::stroke_raw_inputs

◆ stroke_sample_count

guint* dt_drawlayer_worker_t::stroke_sample_count

External per-stroke sample counter mirror.

Referenced by _enqueue_input(), and _rt_init_state().

◆ worker_cond

◆ worker_mutex

◆ workers

drawlayer_rt_worker_t dt_drawlayer_worker_t::workers[DRAWLAYER_RT_WORKER_COUNT]

Worker slots.

Referenced by _backend_worker(), and _backend_worker_const().


The documentation for this struct was generated from the following file: