app: add gimp_babl_format_change_{component_type,linear}()
... which change a format's component-type/TRC, without otherwise affecting it.
This commit is contained in:
@ -1285,6 +1285,32 @@ gimp_babl_component_format (GimpImageBaseType base_type,
|
||||
g_return_val_if_reached (NULL);
|
||||
}
|
||||
|
||||
const Babl *
|
||||
gimp_babl_format_change_component_type (const Babl *format,
|
||||
GimpComponentType component)
|
||||
{
|
||||
g_return_val_if_fail (format != NULL, NULL);
|
||||
|
||||
return gimp_babl_format (gimp_babl_format_get_base_type (format),
|
||||
gimp_babl_precision (
|
||||
component,
|
||||
gimp_babl_format_get_linear (format)),
|
||||
babl_format_has_alpha (format));
|
||||
}
|
||||
|
||||
const Babl *
|
||||
gimp_babl_format_change_linear (const Babl *format,
|
||||
gboolean linear)
|
||||
{
|
||||
g_return_val_if_fail (format != NULL, NULL);
|
||||
|
||||
return gimp_babl_format (gimp_babl_format_get_base_type (format),
|
||||
gimp_babl_precision (
|
||||
gimp_babl_format_get_component_type (format),
|
||||
linear),
|
||||
babl_format_has_alpha (format));
|
||||
}
|
||||
|
||||
gchar **
|
||||
gimp_babl_print_pixel (const Babl *format,
|
||||
gpointer pixel)
|
||||
|
@ -22,36 +22,41 @@
|
||||
#define __GIMP_BABL_H__
|
||||
|
||||
|
||||
void gimp_babl_init (void);
|
||||
void gimp_babl_init_fishes (GimpInitStatusFunc status_callback);
|
||||
void gimp_babl_init (void);
|
||||
void gimp_babl_init_fishes (GimpInitStatusFunc status_callback);
|
||||
|
||||
const gchar * gimp_babl_format_get_description (const Babl *format);
|
||||
GimpColorProfile * gimp_babl_format_get_color_profile (const Babl *format);
|
||||
const gchar * gimp_babl_format_get_description (const Babl *format);
|
||||
GimpColorProfile * gimp_babl_format_get_color_profile (const Babl *format);
|
||||
|
||||
GimpImageBaseType gimp_babl_format_get_base_type (const Babl *format);
|
||||
GimpComponentType gimp_babl_format_get_component_type (const Babl *format);
|
||||
GimpPrecision gimp_babl_format_get_precision (const Babl *format);
|
||||
gboolean gimp_babl_format_get_linear (const Babl *format);
|
||||
GimpImageBaseType gimp_babl_format_get_base_type (const Babl *format);
|
||||
GimpComponentType gimp_babl_format_get_component_type (const Babl *format);
|
||||
GimpPrecision gimp_babl_format_get_precision (const Babl *format);
|
||||
gboolean gimp_babl_format_get_linear (const Babl *format);
|
||||
|
||||
GimpComponentType gimp_babl_component_type (GimpPrecision precision);
|
||||
gboolean gimp_babl_linear (GimpPrecision precision);
|
||||
GimpPrecision gimp_babl_precision (GimpComponentType component,
|
||||
gboolean linear);
|
||||
GimpComponentType gimp_babl_component_type (GimpPrecision precision);
|
||||
gboolean gimp_babl_linear (GimpPrecision precision);
|
||||
GimpPrecision gimp_babl_precision (GimpComponentType component,
|
||||
gboolean linear);
|
||||
|
||||
gboolean gimp_babl_is_valid (GimpImageBaseType base_type,
|
||||
GimpPrecision precision);
|
||||
GimpComponentType gimp_babl_is_bounded (GimpPrecision precision);
|
||||
gboolean gimp_babl_is_valid (GimpImageBaseType base_type,
|
||||
GimpPrecision precision);
|
||||
GimpComponentType gimp_babl_is_bounded (GimpPrecision precision);
|
||||
|
||||
const Babl * gimp_babl_format (GimpImageBaseType base_type,
|
||||
GimpPrecision precision,
|
||||
gboolean with_alpha);
|
||||
const Babl * gimp_babl_mask_format (GimpPrecision precision);
|
||||
const Babl * gimp_babl_component_format (GimpImageBaseType base_type,
|
||||
GimpPrecision precision,
|
||||
gint index);
|
||||
const Babl * gimp_babl_format (GimpImageBaseType base_type,
|
||||
GimpPrecision precision,
|
||||
gboolean with_alpha);
|
||||
const Babl * gimp_babl_mask_format (GimpPrecision precision);
|
||||
const Babl * gimp_babl_component_format (GimpImageBaseType base_type,
|
||||
GimpPrecision precision,
|
||||
gint index);
|
||||
|
||||
gchar ** gimp_babl_print_pixel (const Babl *format,
|
||||
gpointer pixel);
|
||||
const Babl * gimp_babl_format_change_component_type (const Babl *format,
|
||||
GimpComponentType component);
|
||||
const Babl * gimp_babl_format_change_linear (const Babl *format,
|
||||
gboolean linear);
|
||||
|
||||
gchar ** gimp_babl_print_pixel (const Babl *format,
|
||||
gpointer pixel);
|
||||
|
||||
|
||||
#endif /* __GIMP_BABL_H__ */
|
||||
|
Reference in New Issue
Block a user