Ansel 0.0
A darktable fork - bloat + design vision
Loading...
Searching...
No Matches
dev_pixelpipe.h File Reference
#include <inttypes.h>
#include <stdint.h>
#include <glib.h>
+ Include dependency graph for dev_pixelpipe.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define dt_dev_pixelpipe_rebuild_all(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_rebuild_all_real, (dev))
 
#define dt_dev_pixelpipe_update_history_main(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_history_main_real, (dev))
 
#define dt_dev_pixelpipe_update_history_preview(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_history_preview_real, (dev))
 
#define dt_dev_pixelpipe_update_history_all(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_history_all_real, (dev))
 
#define dt_dev_pixelpipe_update_zoom_main(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_zoom_main_real, (dev))
 
#define dt_dev_pixelpipe_update_zoom_preview(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_zoom_preview_real, (dev))
 
#define dt_dev_pixelpipe_resync_history_all(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_resync_history_all_real, (dev))
 
#define dt_dev_pixelpipe_resync_history_main(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_resync_history_main_real, (dev))
 
#define dt_dev_pixelpipe_resync_history_preview(dev)   DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_resync_history_preview_real, (dev))
 

Functions

void dt_dev_pixelpipe_rebuild_all_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_update_history_main_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_update_history_preview_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_update_history_all_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_update_zoom_main_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_update_zoom_preview_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_resync_history_all_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_resync_history_main_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_resync_history_preview_real (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_reset_all (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_change_zoom_main (struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_get_roi_out (struct dt_dev_pixelpipe_t *pipe, struct dt_develop_t *dev, const int width_in, const int height_in, int *width, int *height)
 
void dt_dev_pixelpipe_get_roi_in (struct dt_dev_pixelpipe_t *pipe, struct dt_develop_t *dev, const struct dt_iop_roi_t roi_out)
 
gboolean dt_dev_pixelpipe_activemodule_disables_currentmodule (struct dt_develop_t *dev, struct dt_iop_module_t *current_module)
 
void dt_dev_pixelpipe_change (struct dt_dev_pixelpipe_t *pipe, struct dt_develop_t *dev)
 
void dt_dev_pixelpipe_sync_virtual (struct dt_develop_t *dev, dt_dev_pixelpipe_change_t flag)
 
uint64_t dt_dev_pixelpipe_node_hash (struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece, const struct dt_iop_roi_t, const int pos)
 
const struct dt_dev_pixelpipe_iop_tdt_dev_pixelpipe_get_module_piece (const struct dt_dev_pixelpipe_t *pipe, const struct dt_iop_module_t *module)
 Return the enabled piece owned by module in pipe.
 
const struct dt_dev_pixelpipe_iop_tdt_dev_pixelpipe_get_prev_enabled_piece (const struct dt_dev_pixelpipe_t *pipe, const struct dt_dev_pixelpipe_iop_t *piece)
 Return the closest enabled piece located immediately before piece in pipe.
 
void dt_pixelpipe_get_global_hash (struct dt_dev_pixelpipe_t *pipe, struct dt_develop_t *dev)
 
gboolean dt_dev_pixelpipe_is_backbufer_valid (struct dt_dev_pixelpipe_t *pipe, struct dt_develop_t *dev)
 
gboolean dt_dev_pixelpipe_is_pipeline_valid (struct dt_dev_pixelpipe_t *pipe, struct dt_develop_t *dev)
 

Macro Definition Documentation

◆ dt_dev_pixelpipe_rebuild_all

#define dt_dev_pixelpipe_rebuild_all (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_rebuild_all_real, (dev))

◆ dt_dev_pixelpipe_resync_history_all

#define dt_dev_pixelpipe_resync_history_all (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_resync_history_all_real, (dev))

◆ dt_dev_pixelpipe_resync_history_main

#define dt_dev_pixelpipe_resync_history_main (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_resync_history_main_real, (dev))

◆ dt_dev_pixelpipe_resync_history_preview

#define dt_dev_pixelpipe_resync_history_preview (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_resync_history_preview_real, (dev))

◆ dt_dev_pixelpipe_update_history_all

#define dt_dev_pixelpipe_update_history_all (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_history_all_real, (dev))

◆ dt_dev_pixelpipe_update_history_main

#define dt_dev_pixelpipe_update_history_main (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_history_main_real, (dev))

◆ dt_dev_pixelpipe_update_history_preview

#define dt_dev_pixelpipe_update_history_preview (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_history_preview_real, (dev))

◆ dt_dev_pixelpipe_update_zoom_main

#define dt_dev_pixelpipe_update_zoom_main (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_zoom_main_real, (dev))

◆ dt_dev_pixelpipe_update_zoom_preview

#define dt_dev_pixelpipe_update_zoom_preview (   dev)    DT_DEBUG_TRACE_WRAPPER(DT_DEBUG_DEV, dt_dev_pixelpipe_update_zoom_preview_real, (dev))

Function Documentation

◆ dt_dev_pixelpipe_activemodule_disables_currentmodule()

◆ dt_dev_pixelpipe_change()

◆ dt_dev_pixelpipe_change_zoom_main()

◆ dt_dev_pixelpipe_get_module_piece()

const struct dt_dev_pixelpipe_iop_t * dt_dev_pixelpipe_get_module_piece ( const struct dt_dev_pixelpipe_t pipe,
const struct dt_iop_module_t module 
)

Return the enabled piece owned by module in pipe.

GUI-side cache readers must resolve the current live piece from the current pipe graph every time they sample. Piece pointers are not stable across history resyncs or pipe rebuilds, so callers should never persist them.

Parameters
pipeCurrent pipe graph.
moduleModule instance to look up.
Returns
The enabled piece matching module, or NULL if none exists in the current pipe graph.

◆ dt_dev_pixelpipe_get_prev_enabled_piece()

const struct dt_dev_pixelpipe_iop_t * dt_dev_pixelpipe_get_prev_enabled_piece ( const struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece 
)

Return the closest enabled piece located immediately before piece in pipe.

Cache readers that need the input buffer of one module must reopen the previous enabled module output, not simply the previous list node, because disabled pieces keep their place in pipe->nodes while not producing any cacheline. This utility keeps that rule centralized at the pixelpipe level.

Parameters
pipeCurrent pipe graph.
pieceReference piece inside pipe.
Returns
The previous enabled piece, or NULL if piece is the first enabled node or if either input is invalid.

◆ dt_dev_pixelpipe_get_roi_in()

◆ dt_dev_pixelpipe_get_roi_out()

◆ dt_dev_pixelpipe_is_backbufer_valid()

◆ dt_dev_pixelpipe_is_pipeline_valid()

gboolean dt_dev_pixelpipe_is_pipeline_valid ( struct dt_dev_pixelpipe_t pipe,
struct dt_develop_t dev 
)

◆ dt_dev_pixelpipe_node_hash()

uint64_t dt_dev_pixelpipe_node_hash ( struct dt_dev_pixelpipe_t pipe,
const struct dt_dev_pixelpipe_iop_t piece,
const struct dt_iop_roi_t  ,
const int  pos 
)

◆ dt_dev_pixelpipe_rebuild_all_real()

◆ dt_dev_pixelpipe_reset_all()

◆ dt_dev_pixelpipe_resync_history_all_real()

void dt_dev_pixelpipe_resync_history_all_real ( struct dt_develop_t dev)

◆ dt_dev_pixelpipe_resync_history_main_real()

void dt_dev_pixelpipe_resync_history_main_real ( struct dt_develop_t dev)

◆ dt_dev_pixelpipe_resync_history_preview_real()

void dt_dev_pixelpipe_resync_history_preview_real ( struct dt_develop_t dev)

◆ dt_dev_pixelpipe_sync_virtual()

void dt_dev_pixelpipe_sync_virtual ( struct dt_develop_t dev,
dt_dev_pixelpipe_change_t  flag 
)

References _sync_virtual_pipe(), and flag.

Referenced by gui_post_expose(), and gui_post_expose().

◆ dt_dev_pixelpipe_update_history_all_real()

void dt_dev_pixelpipe_update_history_all_real ( struct dt_develop_t dev)

◆ dt_dev_pixelpipe_update_history_main_real()

void dt_dev_pixelpipe_update_history_main_real ( struct dt_develop_t dev)

◆ dt_dev_pixelpipe_update_history_preview_real()

void dt_dev_pixelpipe_update_history_preview_real ( struct dt_develop_t dev)

◆ dt_dev_pixelpipe_update_zoom_main_real()

◆ dt_dev_pixelpipe_update_zoom_preview_real()

void dt_dev_pixelpipe_update_zoom_preview_real ( struct dt_develop_t dev)

◆ dt_pixelpipe_get_global_hash()