1 /* GIMP - The GNU Image Manipulation Program 2 * Copyright (C) 1995 Spencer Kimball and Peter Mattis 3 * 4 * gimp-layer-modes.h 5 * Copyright (C) 2017 Michael Natterer <mitch@gimp.org> 6 * Øyvind Kolås <pippin@gimp.org> 7 * 8 * This program is free software: you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation; either version 3 of the License, or 11 * (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program. If not, see <https://www.gnu.org/licenses/>. 20 */ 21 22 #ifndef __GIMP_LAYER_MODES_H__ 23 #define __GIMP_LAYER_MODES_H__ 24 25 26 void gimp_layer_modes_init (void); 27 28 gboolean gimp_layer_mode_is_legacy (GimpLayerMode mode); 29 30 gboolean gimp_layer_mode_is_blend_space_mutable (GimpLayerMode mode); 31 gboolean gimp_layer_mode_is_composite_space_mutable (GimpLayerMode mode); 32 gboolean gimp_layer_mode_is_composite_mode_mutable (GimpLayerMode mode); 33 34 gboolean gimp_layer_mode_is_subtractive (GimpLayerMode mode); 35 gboolean gimp_layer_mode_is_alpha_only (GimpLayerMode mode); 36 gboolean gimp_layer_mode_is_trivial (GimpLayerMode mode); 37 38 GimpLayerColorSpace gimp_layer_mode_get_blend_space (GimpLayerMode mode); 39 GimpLayerColorSpace gimp_layer_mode_get_composite_space (GimpLayerMode mode); 40 GimpLayerCompositeMode gimp_layer_mode_get_composite_mode (GimpLayerMode mode); 41 GimpLayerCompositeMode gimp_layer_mode_get_paint_composite_mode (GimpLayerMode mode); 42 43 const gchar * gimp_layer_mode_get_operation (GimpLayerMode mode); 44 45 GimpLayerModeFunc gimp_layer_mode_get_function (GimpLayerMode mode); 46 GimpLayerModeBlendFunc gimp_layer_mode_get_blend_function (GimpLayerMode mode); 47 48 GimpLayerModeContext gimp_layer_mode_get_context (GimpLayerMode mode); 49 50 GimpLayerMode * gimp_layer_mode_get_context_array (GimpLayerMode mode, 51 GimpLayerModeContext context, 52 gint *n_modes); 53 54 GimpLayerModeGroup gimp_layer_mode_get_group (GimpLayerMode mode); 55 56 const GimpLayerMode * gimp_layer_mode_get_group_array (GimpLayerModeGroup group, 57 gint *n_modes); 58 59 gboolean gimp_layer_mode_get_for_group (GimpLayerMode old_mode, 60 GimpLayerModeGroup new_group, 61 GimpLayerMode *new_mode); 62 63 const Babl * gimp_layer_mode_get_format (GimpLayerMode mode, 64 GimpLayerColorSpace blend_space, 65 GimpLayerColorSpace composite_space, 66 GimpLayerCompositeMode composite_mode, 67 const Babl *preferred_format); 68 69 GimpLayerCompositeRegion gimp_layer_mode_get_included_region (GimpLayerMode mode, 70 GimpLayerCompositeMode composite_mode); 71 72 73 #endif /* __GIMP_LAYER_MODES_H__ */ 74