/* ColorTransformation.c generated by valac 0.40.4, the Vala compiler * generated from ColorTransformation.vala, do not modify */ /* Copyright 2016 Software Freedom Conservancy Inc. * * This software is licensed under the GNU LGPL (version 2.1 or later). * See the COPYING file in this distribution. */ #include #include #include #include #include #include #include #include #include #include #include #define TYPE_RGB_ANALYTIC_PIXEL (rgb_analytic_pixel_get_type ()) typedef struct _RGBAnalyticPixel RGBAnalyticPixel; #define TYPE_HSV_ANALYTIC_PIXEL (hsv_analytic_pixel_get_type ()) typedef struct _HSVAnalyticPixel HSVAnalyticPixel; #define TYPE_COMPOSITION_MODE (composition_mode_get_type ()) #define TYPE_PIXEL_FORMAT (pixel_format_get_type ()) #define TYPE_PIXEL_TRANSFORMATION_TYPE (pixel_transformation_type_get_type ()) #define TYPE_PIXEL_TRANSFORMATION_BUNDLE (pixel_transformation_bundle_get_type ()) #define PIXEL_TRANSFORMATION_BUNDLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PIXEL_TRANSFORMATION_BUNDLE, PixelTransformationBundle)) #define PIXEL_TRANSFORMATION_BUNDLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PIXEL_TRANSFORMATION_BUNDLE, PixelTransformationBundleClass)) #define IS_PIXEL_TRANSFORMATION_BUNDLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PIXEL_TRANSFORMATION_BUNDLE)) #define IS_PIXEL_TRANSFORMATION_BUNDLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PIXEL_TRANSFORMATION_BUNDLE)) #define PIXEL_TRANSFORMATION_BUNDLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PIXEL_TRANSFORMATION_BUNDLE, PixelTransformationBundleClass)) typedef struct _PixelTransformationBundle PixelTransformationBundle; typedef struct _PixelTransformationBundleClass PixelTransformationBundleClass; typedef struct _PixelTransformationBundlePrivate PixelTransformationBundlePrivate; #define TYPE_PIXEL_TRANSFORMATION (pixel_transformation_get_type ()) #define PIXEL_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PIXEL_TRANSFORMATION, PixelTransformation)) #define PIXEL_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PIXEL_TRANSFORMATION, PixelTransformationClass)) #define IS_PIXEL_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PIXEL_TRANSFORMATION)) #define IS_PIXEL_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PIXEL_TRANSFORMATION)) #define PIXEL_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PIXEL_TRANSFORMATION, PixelTransformationClass)) typedef struct _PixelTransformation PixelTransformation; typedef struct _PixelTransformationClass PixelTransformationClass; #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) #define _pixel_transformation_bundle_unref0(var) ((var == NULL) ? NULL : (var = (pixel_transformation_bundle_unref (var), NULL))) #define TYPE_HSV_TRANSFORMATION (hsv_transformation_get_type ()) #define HSV_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HSV_TRANSFORMATION, HSVTransformation)) #define HSV_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HSV_TRANSFORMATION, HSVTransformationClass)) #define IS_HSV_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HSV_TRANSFORMATION)) #define IS_HSV_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HSV_TRANSFORMATION)) #define HSV_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HSV_TRANSFORMATION, HSVTransformationClass)) typedef struct _HSVTransformation HSVTransformation; typedef struct _HSVTransformationClass HSVTransformationClass; #define TYPE_EXPANSION_TRANSFORMATION (expansion_transformation_get_type ()) #define EXPANSION_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformation)) #define EXPANSION_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformationClass)) #define IS_EXPANSION_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EXPANSION_TRANSFORMATION)) #define IS_EXPANSION_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EXPANSION_TRANSFORMATION)) #define EXPANSION_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformationClass)) typedef struct _ExpansionTransformation ExpansionTransformation; typedef struct _ExpansionTransformationClass ExpansionTransformationClass; #define _pixel_transformation_unref0(var) ((var == NULL) ? NULL : (var = (pixel_transformation_unref (var), NULL))) #define TYPE_SHADOW_DETAIL_TRANSFORMATION (shadow_detail_transformation_get_type ()) #define SHADOW_DETAIL_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformation)) #define SHADOW_DETAIL_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformationClass)) #define IS_SHADOW_DETAIL_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SHADOW_DETAIL_TRANSFORMATION)) #define IS_SHADOW_DETAIL_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SHADOW_DETAIL_TRANSFORMATION)) #define SHADOW_DETAIL_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformationClass)) typedef struct _ShadowDetailTransformation ShadowDetailTransformation; typedef struct _ShadowDetailTransformationClass ShadowDetailTransformationClass; #define TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION (highlight_detail_transformation_get_type ()) #define HIGHLIGHT_DETAIL_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformation)) #define HIGHLIGHT_DETAIL_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformationClass)) #define IS_HIGHLIGHT_DETAIL_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION)) #define IS_HIGHLIGHT_DETAIL_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION)) #define HIGHLIGHT_DETAIL_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformationClass)) typedef struct _HighlightDetailTransformation HighlightDetailTransformation; typedef struct _HighlightDetailTransformationClass HighlightDetailTransformationClass; #define TYPE_RGB_TRANSFORMATION (rgb_transformation_get_type ()) #define RGB_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RGB_TRANSFORMATION, RGBTransformation)) #define RGB_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RGB_TRANSFORMATION, RGBTransformationClass)) #define IS_RGB_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RGB_TRANSFORMATION)) #define IS_RGB_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RGB_TRANSFORMATION)) #define RGB_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RGB_TRANSFORMATION, RGBTransformationClass)) typedef struct _RGBTransformation RGBTransformation; typedef struct _RGBTransformationClass RGBTransformationClass; #define TYPE_TEMPERATURE_TRANSFORMATION (temperature_transformation_get_type ()) #define TEMPERATURE_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TEMPERATURE_TRANSFORMATION, TemperatureTransformation)) #define TEMPERATURE_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TEMPERATURE_TRANSFORMATION, TemperatureTransformationClass)) #define IS_TEMPERATURE_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TEMPERATURE_TRANSFORMATION)) #define IS_TEMPERATURE_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TEMPERATURE_TRANSFORMATION)) #define TEMPERATURE_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TEMPERATURE_TRANSFORMATION, TemperatureTransformationClass)) typedef struct _TemperatureTransformation TemperatureTransformation; typedef struct _TemperatureTransformationClass TemperatureTransformationClass; #define TYPE_TINT_TRANSFORMATION (tint_transformation_get_type ()) #define TINT_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TINT_TRANSFORMATION, TintTransformation)) #define TINT_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TINT_TRANSFORMATION, TintTransformationClass)) #define IS_TINT_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TINT_TRANSFORMATION)) #define IS_TINT_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TINT_TRANSFORMATION)) #define TINT_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TINT_TRANSFORMATION, TintTransformationClass)) typedef struct _TintTransformation TintTransformation; typedef struct _TintTransformationClass TintTransformationClass; #define TYPE_SATURATION_TRANSFORMATION (saturation_transformation_get_type ()) #define SATURATION_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_SATURATION_TRANSFORMATION, SaturationTransformation)) #define SATURATION_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_SATURATION_TRANSFORMATION, SaturationTransformationClass)) #define IS_SATURATION_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_SATURATION_TRANSFORMATION)) #define IS_SATURATION_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_SATURATION_TRANSFORMATION)) #define SATURATION_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_SATURATION_TRANSFORMATION, SaturationTransformationClass)) typedef struct _SaturationTransformation SaturationTransformation; typedef struct _SaturationTransformationClass SaturationTransformationClass; #define TYPE_EXPOSURE_TRANSFORMATION (exposure_transformation_get_type ()) #define EXPOSURE_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_EXPOSURE_TRANSFORMATION, ExposureTransformation)) #define EXPOSURE_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_EXPOSURE_TRANSFORMATION, ExposureTransformationClass)) #define IS_EXPOSURE_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_EXPOSURE_TRANSFORMATION)) #define IS_EXPOSURE_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_EXPOSURE_TRANSFORMATION)) #define EXPOSURE_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_EXPOSURE_TRANSFORMATION, ExposureTransformationClass)) typedef struct _ExposureTransformation ExposureTransformation; typedef struct _ExposureTransformationClass ExposureTransformationClass; #define TYPE_CONTRAST_TRANSFORMATION (contrast_transformation_get_type ()) #define CONTRAST_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CONTRAST_TRANSFORMATION, ContrastTransformation)) #define CONTRAST_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CONTRAST_TRANSFORMATION, ContrastTransformationClass)) #define IS_CONTRAST_TRANSFORMATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CONTRAST_TRANSFORMATION)) #define IS_CONTRAST_TRANSFORMATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CONTRAST_TRANSFORMATION)) #define CONTRAST_TRANSFORMATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CONTRAST_TRANSFORMATION, ContrastTransformationClass)) typedef struct _ContrastTransformation ContrastTransformation; typedef struct _ContrastTransformationClass ContrastTransformationClass; #define TYPE_KEY_VALUE_MAP (key_value_map_get_type ()) #define KEY_VALUE_MAP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_KEY_VALUE_MAP, KeyValueMap)) #define KEY_VALUE_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_KEY_VALUE_MAP, KeyValueMapClass)) #define IS_KEY_VALUE_MAP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_KEY_VALUE_MAP)) #define IS_KEY_VALUE_MAP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_KEY_VALUE_MAP)) #define KEY_VALUE_MAP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_KEY_VALUE_MAP, KeyValueMapClass)) typedef struct _KeyValueMap KeyValueMap; typedef struct _KeyValueMapClass KeyValueMapClass; #define _g_free0(var) (var = (g_free (var), NULL)) #define _key_value_map_unref0(var) ((var == NULL) ? NULL : (var = (key_value_map_unref (var), NULL))) #define TYPE_PIXEL_TRANSFORMER (pixel_transformer_get_type ()) #define PIXEL_TRANSFORMER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_PIXEL_TRANSFORMER, PixelTransformer)) #define PIXEL_TRANSFORMER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_PIXEL_TRANSFORMER, PixelTransformerClass)) #define IS_PIXEL_TRANSFORMER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_PIXEL_TRANSFORMER)) #define IS_PIXEL_TRANSFORMER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_PIXEL_TRANSFORMER)) #define PIXEL_TRANSFORMER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_PIXEL_TRANSFORMER, PixelTransformerClass)) typedef struct _PixelTransformer PixelTransformer; typedef struct _PixelTransformerClass PixelTransformerClass; #define _pixel_transformer_unref0(var) ((var == NULL) ? NULL : (var = (pixel_transformer_unref (var), NULL))) typedef struct _ParamSpecPixelTransformationBundle ParamSpecPixelTransformationBundle; typedef struct _PixelTransformationPrivate PixelTransformationPrivate; typedef struct _ParamSpecPixelTransformation ParamSpecPixelTransformation; typedef struct _RGBTransformationPrivate RGBTransformationPrivate; typedef struct _HSVTransformationPrivate HSVTransformationPrivate; typedef struct _TintTransformationPrivate TintTransformationPrivate; typedef struct _TemperatureTransformationPrivate TemperatureTransformationPrivate; typedef struct _SaturationTransformationPrivate SaturationTransformationPrivate; typedef struct _ExposureTransformationPrivate ExposureTransformationPrivate; typedef struct _ContrastTransformationPrivate ContrastTransformationPrivate; typedef struct _PixelTransformerPrivate PixelTransformerPrivate; typedef struct _Block1Data Block1Data; typedef struct _Block2Data Block2Data; #define _g_thread_unref0(var) ((var == NULL) ? NULL : (var = (g_thread_unref (var), NULL))) typedef struct _Block3Data Block3Data; typedef struct _Block4Data Block4Data; typedef struct _ParamSpecPixelTransformer ParamSpecPixelTransformer; #define TYPE_RGB_HISTOGRAM (rgb_histogram_get_type ()) #define RGB_HISTOGRAM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RGB_HISTOGRAM, RGBHistogram)) #define RGB_HISTOGRAM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RGB_HISTOGRAM, RGBHistogramClass)) #define IS_RGB_HISTOGRAM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RGB_HISTOGRAM)) #define IS_RGB_HISTOGRAM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RGB_HISTOGRAM)) #define RGB_HISTOGRAM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RGB_HISTOGRAM, RGBHistogramClass)) typedef struct _RGBHistogram RGBHistogram; typedef struct _RGBHistogramClass RGBHistogramClass; typedef struct _RGBHistogramPrivate RGBHistogramPrivate; typedef struct _ParamSpecRGBHistogram ParamSpecRGBHistogram; #define TYPE_INTENSITY_HISTOGRAM (intensity_histogram_get_type ()) #define INTENSITY_HISTOGRAM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_INTENSITY_HISTOGRAM, IntensityHistogram)) #define INTENSITY_HISTOGRAM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_INTENSITY_HISTOGRAM, IntensityHistogramClass)) #define IS_INTENSITY_HISTOGRAM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_INTENSITY_HISTOGRAM)) #define IS_INTENSITY_HISTOGRAM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_INTENSITY_HISTOGRAM)) #define INTENSITY_HISTOGRAM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_INTENSITY_HISTOGRAM, IntensityHistogramClass)) typedef struct _IntensityHistogram IntensityHistogram; typedef struct _IntensityHistogramClass IntensityHistogramClass; typedef struct _IntensityHistogramPrivate IntensityHistogramPrivate; typedef struct _ParamSpecIntensityHistogram ParamSpecIntensityHistogram; typedef struct _ExpansionTransformationPrivate ExpansionTransformationPrivate; typedef struct _ShadowDetailTransformationPrivate ShadowDetailTransformationPrivate; #define TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION (hermite_gamma_approximation_function_get_type ()) #define HERMITE_GAMMA_APPROXIMATION_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION, HermiteGammaApproximationFunction)) #define HERMITE_GAMMA_APPROXIMATION_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION, HermiteGammaApproximationFunctionClass)) #define IS_HERMITE_GAMMA_APPROXIMATION_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION)) #define IS_HERMITE_GAMMA_APPROXIMATION_FUNCTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION)) #define HERMITE_GAMMA_APPROXIMATION_FUNCTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION, HermiteGammaApproximationFunctionClass)) typedef struct _HermiteGammaApproximationFunction HermiteGammaApproximationFunction; typedef struct _HermiteGammaApproximationFunctionClass HermiteGammaApproximationFunctionClass; #define _hermite_gamma_approximation_function_unref0(var) ((var == NULL) ? NULL : (var = (hermite_gamma_approximation_function_unref (var), NULL))) typedef struct _HermiteGammaApproximationFunctionPrivate HermiteGammaApproximationFunctionPrivate; typedef struct _ParamSpecHermiteGammaApproximationFunction ParamSpecHermiteGammaApproximationFunction; typedef struct _HighlightDetailTransformationPrivate HighlightDetailTransformationPrivate; #define _intensity_histogram_unref0(var) ((var == NULL) ? NULL : (var = (intensity_histogram_unref (var), NULL))) #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); #define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; } #define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; } #define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg); struct _RGBAnalyticPixel { gfloat red; gfloat green; gfloat blue; }; struct _HSVAnalyticPixel { gfloat hue; gfloat saturation; gfloat light_value; }; typedef enum { COMPOSITION_MODE_NONE, COMPOSITION_MODE_RGB_MATRIX, COMPOSITION_MODE_HSV_LOOKUP } CompositionMode; typedef enum { PIXEL_FORMAT_RGB, PIXEL_FORMAT_HSV } PixelFormat; typedef enum { PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION, PIXEL_TRANSFORMATION_TYPE_SHADOWS, PIXEL_TRANSFORMATION_TYPE_HIGHLIGHTS, PIXEL_TRANSFORMATION_TYPE_TEMPERATURE, PIXEL_TRANSFORMATION_TYPE_TINT, PIXEL_TRANSFORMATION_TYPE_SATURATION, PIXEL_TRANSFORMATION_TYPE_EXPOSURE, PIXEL_TRANSFORMATION_TYPE_CONTRAST } PixelTransformationType; struct _PixelTransformationBundle { GTypeInstance parent_instance; volatile int ref_count; PixelTransformationBundlePrivate * priv; }; struct _PixelTransformationBundleClass { GTypeClass parent_class; void (*finalize) (PixelTransformationBundle *self); }; struct _PixelTransformationBundlePrivate { GeeHashMap* map; }; struct _ParamSpecPixelTransformationBundle { GParamSpec parent_instance; }; struct _PixelTransformation { GTypeInstance parent_instance; volatile int ref_count; PixelTransformationPrivate * priv; }; struct _PixelTransformationClass { GTypeClass parent_class; void (*finalize) (PixelTransformation *self); CompositionMode (*get_composition_mode) (PixelTransformation* self); void (*compose_with) (PixelTransformation* self, PixelTransformation* other); gboolean (*is_identity) (PixelTransformation* self); void (*transform_pixel_hsv) (PixelTransformation* self, HSVAnalyticPixel* p, HSVAnalyticPixel* result); void (*transform_pixel_rgb) (PixelTransformation* self, RGBAnalyticPixel* p, RGBAnalyticPixel* result); gchar* (*to_string) (PixelTransformation* self); PixelTransformation* (*copy) (PixelTransformation* self); }; struct _PixelTransformationPrivate { PixelTransformationType type; PixelFormat preferred_format; }; struct _ParamSpecPixelTransformation { GParamSpec parent_instance; }; struct _RGBTransformation { PixelTransformation parent_instance; RGBTransformationPrivate * priv; gfloat* matrix_entries; gint matrix_entries_length1; gboolean identity; }; struct _RGBTransformationClass { PixelTransformationClass parent_class; }; struct _HSVTransformation { PixelTransformation parent_instance; HSVTransformationPrivate * priv; gfloat remap_table[256]; }; struct _HSVTransformationClass { PixelTransformationClass parent_class; }; struct _TintTransformation { RGBTransformation parent_instance; TintTransformationPrivate * priv; }; struct _TintTransformationClass { RGBTransformationClass parent_class; }; struct _TintTransformationPrivate { gfloat parameter; }; struct _TemperatureTransformation { RGBTransformation parent_instance; TemperatureTransformationPrivate * priv; }; struct _TemperatureTransformationClass { RGBTransformationClass parent_class; }; struct _TemperatureTransformationPrivate { gfloat parameter; }; struct _SaturationTransformation { RGBTransformation parent_instance; SaturationTransformationPrivate * priv; }; struct _SaturationTransformationClass { RGBTransformationClass parent_class; }; struct _SaturationTransformationPrivate { gfloat parameter; }; struct _ExposureTransformation { RGBTransformation parent_instance; ExposureTransformationPrivate * priv; }; struct _ExposureTransformationClass { RGBTransformationClass parent_class; }; struct _ExposureTransformationPrivate { gfloat parameter; }; struct _ContrastTransformation { RGBTransformation parent_instance; ContrastTransformationPrivate * priv; }; struct _ContrastTransformationClass { RGBTransformationClass parent_class; }; struct _ContrastTransformationPrivate { gfloat parameter; }; struct _PixelTransformer { GTypeInstance parent_instance; volatile int ref_count; PixelTransformerPrivate * priv; PixelTransformation** optimized_transformations; gint optimized_transformations_length1; gint optimized_slots_used; }; struct _PixelTransformerClass { GTypeClass parent_class; void (*finalize) (PixelTransformer *self); }; struct _PixelTransformerPrivate { GeeArrayList* transformations; }; struct _Block1Data { int _ref_count_; PixelTransformer* self; gint dest_width; gint dest_num_channels; gint dest_rowstride; guchar* dest_pixels; gint dest_pixels_length1; gint _dest_pixels_size_; gfloat* cache; gint cache_length1; gint _cache_size_; }; struct _Block2Data { int _ref_count_; Block1Data * _data1_; guint row; guint slice_height; }; struct _Block3Data { int _ref_count_; PixelTransformer* self; gint n_channels; gint rowstride; gint rowbytes; guchar* source_pixels; gint source_pixels_length1; gint _source_pixels_size_; guchar* dest_pixels; gint dest_pixels_length1; gint _dest_pixels_size_; GCancellable* cancellable; }; struct _Block4Data { int _ref_count_; Block3Data * _data3_; guint row; guint slice_height; }; struct _ParamSpecPixelTransformer { GParamSpec parent_instance; }; struct _RGBHistogram { GTypeInstance parent_instance; volatile int ref_count; RGBHistogramPrivate * priv; }; struct _RGBHistogramClass { GTypeClass parent_class; void (*finalize) (RGBHistogram *self); }; struct _RGBHistogramPrivate { gint* red_counts; gint red_counts_length1; gint _red_counts_size_; gint* green_counts; gint green_counts_length1; gint _green_counts_size_; gint* blue_counts; gint blue_counts_length1; gint _blue_counts_size_; gint* qualitative_red_counts; gint qualitative_red_counts_length1; gint _qualitative_red_counts_size_; gint* qualitative_green_counts; gint qualitative_green_counts_length1; gint _qualitative_green_counts_size_; gint* qualitative_blue_counts; gint qualitative_blue_counts_length1; gint _qualitative_blue_counts_size_; GdkPixbuf* graphic; }; struct _ParamSpecRGBHistogram { GParamSpec parent_instance; }; struct _IntensityHistogram { GTypeInstance parent_instance; volatile int ref_count; IntensityHistogramPrivate * priv; }; struct _IntensityHistogramClass { GTypeClass parent_class; void (*finalize) (IntensityHistogram *self); }; struct _IntensityHistogramPrivate { gint* counts; gint counts_length1; gint _counts_size_; gfloat* probabilities; gint probabilities_length1; gint _probabilities_size_; gfloat* cumulative_probabilities; gint cumulative_probabilities_length1; gint _cumulative_probabilities_size_; }; struct _ParamSpecIntensityHistogram { GParamSpec parent_instance; }; struct _ExpansionTransformation { HSVTransformation parent_instance; ExpansionTransformationPrivate * priv; }; struct _ExpansionTransformationClass { HSVTransformationClass parent_class; }; struct _ExpansionTransformationPrivate { gint low_kink; gint high_kink; }; struct _ShadowDetailTransformation { HSVTransformation parent_instance; ShadowDetailTransformationPrivate * priv; }; struct _ShadowDetailTransformationClass { HSVTransformationClass parent_class; }; struct _ShadowDetailTransformationPrivate { gfloat intensity; }; struct _HermiteGammaApproximationFunction { GTypeInstance parent_instance; volatile int ref_count; HermiteGammaApproximationFunctionPrivate * priv; }; struct _HermiteGammaApproximationFunctionClass { GTypeClass parent_class; void (*finalize) (HermiteGammaApproximationFunction *self); }; struct _HermiteGammaApproximationFunctionPrivate { gfloat x_scale; gfloat nonzero_interval_upper; }; struct _ParamSpecHermiteGammaApproximationFunction { GParamSpec parent_instance; }; struct _HighlightDetailTransformation { HSVTransformation parent_instance; HighlightDetailTransformationPrivate * priv; }; struct _HighlightDetailTransformationClass { HSVTransformationClass parent_class; }; struct _HighlightDetailTransformationPrivate { gfloat intensity; }; static gpointer pixel_transformation_bundle_parent_class = NULL; static PixelTransformationBundle* pixel_transformation_bundle_copied_color_adjustments; static PixelTransformationBundle* pixel_transformation_bundle_copied_color_adjustments = NULL; static gpointer pixel_transformation_parent_class = NULL; static gpointer rgb_transformation_parent_class = NULL; static gpointer hsv_transformation_parent_class = NULL; static gpointer tint_transformation_parent_class = NULL; static gpointer temperature_transformation_parent_class = NULL; static gpointer saturation_transformation_parent_class = NULL; static gpointer exposure_transformation_parent_class = NULL; static gpointer contrast_transformation_parent_class = NULL; static gpointer pixel_transformer_parent_class = NULL; static gpointer rgb_histogram_parent_class = NULL; static gpointer intensity_histogram_parent_class = NULL; static gpointer expansion_transformation_parent_class = NULL; static gpointer shadow_detail_transformation_parent_class = NULL; static gpointer hermite_gamma_approximation_function_parent_class = NULL; static gpointer highlight_detail_transformation_parent_class = NULL; GType rgb_analytic_pixel_get_type (void) G_GNUC_CONST; RGBAnalyticPixel* rgb_analytic_pixel_dup (const RGBAnalyticPixel* self); void rgb_analytic_pixel_free (RGBAnalyticPixel* self); #define RGB_ANALYTIC_PIXEL_INV_255 (1.0f / 255.0f) void rgb_analytic_pixel_init (RGBAnalyticPixel *self); void rgb_analytic_pixel_init_from_components (RGBAnalyticPixel *self, gfloat red, gfloat green, gfloat blue); void rgb_analytic_pixel_init_from_quantized_components (RGBAnalyticPixel *self, guchar red_quantized, guchar green_quantized, guchar blue_quantized); GType hsv_analytic_pixel_get_type (void) G_GNUC_CONST; HSVAnalyticPixel* hsv_analytic_pixel_dup (const HSVAnalyticPixel* self); void hsv_analytic_pixel_free (HSVAnalyticPixel* self); void rgb_analytic_pixel_init_from_hsv (RGBAnalyticPixel *self, HSVAnalyticPixel* hsv_pixel); void hsv_analytic_pixel_to_rgb (HSVAnalyticPixel *self, RGBAnalyticPixel* result); guchar rgb_analytic_pixel_quantized_red (RGBAnalyticPixel *self); guchar rgb_analytic_pixel_quantized_green (RGBAnalyticPixel *self); guchar rgb_analytic_pixel_quantized_blue (RGBAnalyticPixel *self); gboolean rgb_analytic_pixel_equals (RGBAnalyticPixel *self, RGBAnalyticPixel* rhs); guint rgb_analytic_pixel_hash_code (RGBAnalyticPixel *self); void rgb_analytic_pixel_to_hsv (RGBAnalyticPixel *self, HSVAnalyticPixel* result); void hsv_analytic_pixel_init_from_rgb (HSVAnalyticPixel *self, RGBAnalyticPixel* p); #define HSV_ANALYTIC_PIXEL_INV_255 (1.0f / 255.0f) void hsv_analytic_pixel_init (HSVAnalyticPixel *self); void hsv_analytic_pixel_init_from_components (HSVAnalyticPixel *self, gfloat hue, gfloat saturation, gfloat light_value); void hsv_analytic_pixel_init_from_quantized_components (HSVAnalyticPixel *self, guchar hue_quantized, guchar saturation_quantized, guchar light_value_quantized); gboolean hsv_analytic_pixel_equals (HSVAnalyticPixel *self, HSVAnalyticPixel* rhs); guint hsv_analytic_pixel_hash_code (HSVAnalyticPixel *self); GType composition_mode_get_type (void) G_GNUC_CONST; GType pixel_format_get_type (void) G_GNUC_CONST; GType pixel_transformation_type_get_type (void) G_GNUC_CONST; gpointer pixel_transformation_bundle_ref (gpointer instance); void pixel_transformation_bundle_unref (gpointer instance); GParamSpec* param_spec_pixel_transformation_bundle (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_pixel_transformation_bundle (GValue* value, gpointer v_object); void value_take_pixel_transformation_bundle (GValue* value, gpointer v_object); gpointer value_get_pixel_transformation_bundle (const GValue* value); GType pixel_transformation_bundle_get_type (void) G_GNUC_CONST; gpointer pixel_transformation_ref (gpointer instance); void pixel_transformation_unref (gpointer instance); GParamSpec* param_spec_pixel_transformation (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_pixel_transformation (GValue* value, gpointer v_object); void value_take_pixel_transformation (GValue* value, gpointer v_object); gpointer value_get_pixel_transformation (const GValue* value); GType pixel_transformation_get_type (void) G_GNUC_CONST; #define PIXEL_TRANSFORMATION_BUNDLE_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_PIXEL_TRANSFORMATION_BUNDLE, PixelTransformationBundlePrivate)) PixelTransformationBundle* pixel_transformation_bundle_new (void); PixelTransformationBundle* pixel_transformation_bundle_construct (GType object_type); PixelTransformationBundle* pixel_transformation_bundle_get_copied_color_adjustments (void); void pixel_transformation_bundle_set_copied_color_adjustments (PixelTransformationBundle* adjustments); gboolean pixel_transformation_bundle_has_copied_color_adjustments (void); void pixel_transformation_bundle_set (PixelTransformationBundle* self, PixelTransformation* transformation); PixelTransformationType pixel_transformation_get_transformation_type (PixelTransformation* self); void pixel_transformation_bundle_set_to_identity (PixelTransformationBundle* self); ExpansionTransformation* expansion_transformation_new_from_extrema (gint black_point, gint white_point); ExpansionTransformation* expansion_transformation_construct_from_extrema (GType object_type, gint black_point, gint white_point); GType hsv_transformation_get_type (void) G_GNUC_CONST; GType expansion_transformation_get_type (void) G_GNUC_CONST; ShadowDetailTransformation* shadow_detail_transformation_new (gfloat user_intensity); ShadowDetailTransformation* shadow_detail_transformation_construct (GType object_type, gfloat user_intensity); GType shadow_detail_transformation_get_type (void) G_GNUC_CONST; HighlightDetailTransformation* highlight_detail_transformation_new (gfloat user_intensity); HighlightDetailTransformation* highlight_detail_transformation_construct (GType object_type, gfloat user_intensity); GType highlight_detail_transformation_get_type (void) G_GNUC_CONST; TemperatureTransformation* temperature_transformation_new (gfloat client_parameter); TemperatureTransformation* temperature_transformation_construct (GType object_type, gfloat client_parameter); GType rgb_transformation_get_type (void) G_GNUC_CONST; GType temperature_transformation_get_type (void) G_GNUC_CONST; TintTransformation* tint_transformation_new (gfloat client_param); TintTransformation* tint_transformation_construct (GType object_type, gfloat client_param); GType tint_transformation_get_type (void) G_GNUC_CONST; SaturationTransformation* saturation_transformation_new (gfloat client_parameter); SaturationTransformation* saturation_transformation_construct (GType object_type, gfloat client_parameter); GType saturation_transformation_get_type (void) G_GNUC_CONST; ExposureTransformation* exposure_transformation_new (gfloat client_parameter); ExposureTransformation* exposure_transformation_construct (GType object_type, gfloat client_parameter); GType exposure_transformation_get_type (void) G_GNUC_CONST; ContrastTransformation* contrast_transformation_new (gfloat client_parameter); ContrastTransformation* contrast_transformation_construct (GType object_type, gfloat client_parameter); GType contrast_transformation_get_type (void) G_GNUC_CONST; gpointer key_value_map_ref (gpointer instance); void key_value_map_unref (gpointer instance); GParamSpec* param_spec_key_value_map (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_key_value_map (GValue* value, gpointer v_object); void value_take_key_value_map (GValue* value, gpointer v_object); gpointer value_get_key_value_map (const GValue* value); GType key_value_map_get_type (void) G_GNUC_CONST; void pixel_transformation_bundle_load (PixelTransformationBundle* self, KeyValueMap* store); gchar* key_value_map_get_string (KeyValueMap* self, const gchar* key, const gchar* def); ExpansionTransformation* expansion_transformation_new_from_string (const gchar* encoded_transformation); ExpansionTransformation* expansion_transformation_construct_from_string (GType object_type, const gchar* encoded_transformation); gfloat key_value_map_get_float (KeyValueMap* self, const gchar* key, gfloat def); KeyValueMap* pixel_transformation_bundle_save (PixelTransformationBundle* self, const gchar* group); KeyValueMap* key_value_map_new (const gchar* group); KeyValueMap* key_value_map_construct (GType object_type, const gchar* group); PixelTransformation* pixel_transformation_bundle_get_transformation (PixelTransformationBundle* self, PixelTransformationType type); void key_value_map_set_string (KeyValueMap* self, const gchar* key, const gchar* value); gchar* pixel_transformation_to_string (PixelTransformation* self); void key_value_map_set_float (KeyValueMap* self, const gchar* key, gfloat value); gfloat shadow_detail_transformation_get_parameter (ShadowDetailTransformation* self); gfloat highlight_detail_transformation_get_parameter (HighlightDetailTransformation* self); gfloat temperature_transformation_get_parameter (TemperatureTransformation* self); gfloat tint_transformation_get_parameter (TintTransformation* self); gfloat saturation_transformation_get_parameter (SaturationTransformation* self); gfloat exposure_transformation_get_parameter (ExposureTransformation* self); gfloat contrast_transformation_get_parameter (ContrastTransformation* self); gint pixel_transformation_bundle_get_count (PixelTransformationBundle* self); GeeIterable* pixel_transformation_bundle_get_transformations (PixelTransformationBundle* self); gboolean pixel_transformation_bundle_is_identity (PixelTransformationBundle* self); gboolean pixel_transformation_is_identity (PixelTransformation* self); gpointer pixel_transformer_ref (gpointer instance); void pixel_transformer_unref (gpointer instance); GParamSpec* param_spec_pixel_transformer (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_pixel_transformer (GValue* value, gpointer v_object); void value_take_pixel_transformer (GValue* value, gpointer v_object); gpointer value_get_pixel_transformer (const GValue* value); GType pixel_transformer_get_type (void) G_GNUC_CONST; PixelTransformer* pixel_transformation_bundle_generate_transformer (PixelTransformationBundle* self); PixelTransformer* pixel_transformer_new (void); PixelTransformer* pixel_transformer_construct (GType object_type); void pixel_transformer_attach_transformation (PixelTransformer* self, PixelTransformation* trans); PixelTransformationBundle* pixel_transformation_bundle_copy (PixelTransformationBundle* self); static void pixel_transformation_bundle_finalize (PixelTransformationBundle * obj); #define PIXEL_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_PIXEL_TRANSFORMATION, PixelTransformationPrivate)) PixelTransformation* pixel_transformation_construct (GType object_type, PixelTransformationType type, PixelFormat preferred_format); PixelFormat pixel_transformation_get_preferred_format (PixelTransformation* self); CompositionMode pixel_transformation_get_composition_mode (PixelTransformation* self); static CompositionMode pixel_transformation_real_get_composition_mode (PixelTransformation* self); void pixel_transformation_compose_with (PixelTransformation* self, PixelTransformation* other); static void pixel_transformation_real_compose_with (PixelTransformation* self, PixelTransformation* other); static gboolean pixel_transformation_real_is_identity (PixelTransformation* self); void pixel_transformation_transform_pixel_hsv (PixelTransformation* self, HSVAnalyticPixel* p, HSVAnalyticPixel* result); static void pixel_transformation_real_transform_pixel_hsv (PixelTransformation* self, HSVAnalyticPixel* p, HSVAnalyticPixel* result); void pixel_transformation_transform_pixel_rgb (PixelTransformation* self, RGBAnalyticPixel* p, RGBAnalyticPixel* result); static void pixel_transformation_real_transform_pixel_rgb (PixelTransformation* self, RGBAnalyticPixel* p, RGBAnalyticPixel* result); static gchar* pixel_transformation_real_to_string (PixelTransformation* self); PixelTransformation* pixel_transformation_copy (PixelTransformation* self); static PixelTransformation* pixel_transformation_real_copy (PixelTransformation* self); static void pixel_transformation_finalize (PixelTransformation * obj); #define RGB_TRANSFORMATION_MATRIX_SIZE 16 RGBTransformation* rgb_transformation_new (PixelTransformationType type); RGBTransformation* rgb_transformation_construct (GType object_type, PixelTransformationType type); static CompositionMode rgb_transformation_real_get_composition_mode (PixelTransformation* base); static void rgb_transformation_real_compose_with (PixelTransformation* base, PixelTransformation* other); static void rgb_transformation_real_transform_pixel_hsv (PixelTransformation* base, HSVAnalyticPixel* p, HSVAnalyticPixel* result); static void rgb_transformation_real_transform_pixel_rgb (PixelTransformation* base, RGBAnalyticPixel* p, RGBAnalyticPixel* result); static gboolean rgb_transformation_real_is_identity (PixelTransformation* base); static PixelTransformation* rgb_transformation_real_copy (PixelTransformation* base); static void rgb_transformation_finalize (PixelTransformation * obj); HSVTransformation* hsv_transformation_construct (GType object_type, PixelTransformationType type); static CompositionMode hsv_transformation_real_get_composition_mode (PixelTransformation* base); static void hsv_transformation_real_transform_pixel_rgb (PixelTransformation* base, RGBAnalyticPixel* p, RGBAnalyticPixel* result); static void hsv_transformation_real_compose_with (PixelTransformation* base, PixelTransformation* other); static void hsv_transformation_real_transform_pixel_hsv (PixelTransformation* base, HSVAnalyticPixel* pixel, HSVAnalyticPixel* result); static void hsv_transformation_finalize (PixelTransformation * obj); #define TINT_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TINT_TRANSFORMATION, TintTransformationPrivate)) #define TINT_TRANSFORMATION_INTENSITY_FACTOR 0.25f #define TINT_TRANSFORMATION_MIN_PARAMETER (-16.0f) #define TINT_TRANSFORMATION_MAX_PARAMETER 16.0f static void tint_transformation_finalize (PixelTransformation * obj); #define TEMPERATURE_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_TEMPERATURE_TRANSFORMATION, TemperatureTransformationPrivate)) #define TEMPERATURE_TRANSFORMATION_INTENSITY_FACTOR 0.33f #define TEMPERATURE_TRANSFORMATION_MIN_PARAMETER (-16.0f) #define TEMPERATURE_TRANSFORMATION_MAX_PARAMETER 16.0f static void temperature_transformation_finalize (PixelTransformation * obj); #define SATURATION_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SATURATION_TRANSFORMATION, SaturationTransformationPrivate)) #define SATURATION_TRANSFORMATION_MIN_PARAMETER (-16.0f) #define SATURATION_TRANSFORMATION_MAX_PARAMETER 16.0f static void saturation_transformation_finalize (PixelTransformation * obj); #define EXPOSURE_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_EXPOSURE_TRANSFORMATION, ExposureTransformationPrivate)) #define EXPOSURE_TRANSFORMATION_MIN_PARAMETER (-16.0f) #define EXPOSURE_TRANSFORMATION_MAX_PARAMETER 16.0f static void exposure_transformation_finalize (PixelTransformation * obj); #define CONTRAST_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CONTRAST_TRANSFORMATION, ContrastTransformationPrivate)) #define CONTRAST_TRANSFORMATION_MIN_PARAMETER (-16.0f) #define CONTRAST_TRANSFORMATION_MAX_PARAMETER 16.0f #define CONTRAST_TRANSFORMATION_MAX_CONTRAST_ADJUSTMENT 0.5f static void contrast_transformation_finalize (PixelTransformation * obj); #define PIXEL_TRANSFORMER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_PIXEL_TRANSFORMER, PixelTransformerPrivate)) PixelTransformer* pixel_transformer_copy (PixelTransformer* self); static void pixel_transformer_build_optimized_transformations (PixelTransformer* self); void pixel_transformer_apply_transformations (PixelTransformer* self, RGBAnalyticPixel* p, RGBAnalyticPixel* result); void pixel_transformer_detach_transformation (PixelTransformer* self, PixelTransformation* victim); void pixel_transformer_replace_transformation (PixelTransformer* self, PixelTransformation* old_trans, PixelTransformation* new_trans); void pixel_transformer_transform_pixbuf (PixelTransformer* self, GdkPixbuf* pixbuf, GCancellable* cancellable); void pixel_transformer_transform_to_other_pixbuf (PixelTransformer* self, GdkPixbuf* source, GdkPixbuf* dest, GCancellable* cancellable, gint jobs); void pixel_transformer_transform_from_fp (PixelTransformer* self, gfloat** fp_pixel_cache, int* fp_pixel_cache_length1, GdkPixbuf* dest); static Block1Data* block1_data_ref (Block1Data* _data1_); static void block1_data_unref (void * _userdata_); static Block2Data* block2_data_ref (Block2Data* _data2_); static void block2_data_unref (void * _userdata_); static void* _____lambda5_ (Block2Data* _data2_); static gpointer ______lambda5__gthread_func (gpointer self); static Block3Data* block3_data_ref (Block3Data* _data3_); static void block3_data_unref (void * _userdata_); static Block4Data* block4_data_ref (Block4Data* _data4_); static void block4_data_unref (void * _userdata_); static void* _____lambda4_ (Block4Data* _data4_); void pixel_transformer_apply_transformation (PixelTransformer* self, guint row, gint rowstride, gint rowbytes, gint n_channels, guchar* source_pixels, int source_pixels_length1, guchar* dest_pixels, int dest_pixels_length1); static gpointer ______lambda4__gthread_func (gpointer self); static void pixel_transformer_finalize (PixelTransformer * obj); gpointer rgb_histogram_ref (gpointer instance); void rgb_histogram_unref (gpointer instance); GParamSpec* param_spec_rgb_histogram (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_rgb_histogram (GValue* value, gpointer v_object); void value_take_rgb_histogram (GValue* value, gpointer v_object); gpointer value_get_rgb_histogram (const GValue* value); GType rgb_histogram_get_type (void) G_GNUC_CONST; #define RGB_HISTOGRAM_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_RGB_HISTOGRAM, RGBHistogramPrivate)) #define RGB_HISTOGRAM_MARKED_BACKGROUND ((guchar) 30) #define RGB_HISTOGRAM_MARKED_FOREGROUND ((guchar) 210) #define RGB_HISTOGRAM_UNMARKED_BACKGROUND ((guchar) 120) #define RGB_HISTOGRAM_GRAPHIC_WIDTH 256 #define RGB_HISTOGRAM_GRAPHIC_HEIGHT 100 RGBHistogram* rgb_histogram_new (GdkPixbuf* pixbuf); RGBHistogram* rgb_histogram_construct (GType object_type, GdkPixbuf* pixbuf); static gint rgb_histogram_correct_snap_to_quantization (RGBHistogram* self, gint* buckets, int buckets_length1, gint i); static gint rgb_histogram_correct_snap_from_quantization (RGBHistogram* self, gint* buckets, int buckets_length1, gint i); static void rgb_histogram_smooth_extrema (RGBHistogram* self, gint** count_data, int* count_data_length1); static void rgb_histogram_prepare_qualitative_counts (RGBHistogram* self); GdkPixbuf* rgb_histogram_get_graphic (RGBHistogram* self); static void rgb_histogram_finalize (RGBHistogram * obj); gpointer intensity_histogram_ref (gpointer instance); void intensity_histogram_unref (gpointer instance); GParamSpec* param_spec_intensity_histogram (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_intensity_histogram (GValue* value, gpointer v_object); void value_take_intensity_histogram (GValue* value, gpointer v_object); gpointer value_get_intensity_histogram (const GValue* value); GType intensity_histogram_get_type (void) G_GNUC_CONST; #define INTENSITY_HISTOGRAM_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_INTENSITY_HISTOGRAM, IntensityHistogramPrivate)) IntensityHistogram* intensity_histogram_new (GdkPixbuf* pixbuf); IntensityHistogram* intensity_histogram_construct (GType object_type, GdkPixbuf* pixbuf); gfloat intensity_histogram_get_cumulative_probability (IntensityHistogram* self, gint level); static void intensity_histogram_finalize (IntensityHistogram * obj); #define EXPANSION_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformationPrivate)) #define EXPANSION_TRANSFORMATION_LOW_DISCARD_MASS 0.02f #define EXPANSION_TRANSFORMATION_HIGH_DISCARD_MASS 0.02f ExpansionTransformation* expansion_transformation_new (IntensityHistogram* histogram); ExpansionTransformation* expansion_transformation_construct (GType object_type, IntensityHistogram* histogram); static void expansion_transformation_build_remap_table (ExpansionTransformation* self); static gchar* expansion_transformation_real_to_string (PixelTransformation* base); gint expansion_transformation_get_white_point (ExpansionTransformation* self); gint expansion_transformation_get_black_point (ExpansionTransformation* self); static gboolean expansion_transformation_real_is_identity (PixelTransformation* base); static PixelTransformation* expansion_transformation_real_copy (PixelTransformation* base); static void expansion_transformation_finalize (PixelTransformation * obj); #define SHADOW_DETAIL_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformationPrivate)) #define SHADOW_DETAIL_TRANSFORMATION_MAX_EFFECT_SHIFT 0.5f #define SHADOW_DETAIL_TRANSFORMATION_MIN_TONAL_WIDTH 0.1f #define SHADOW_DETAIL_TRANSFORMATION_MAX_TONAL_WIDTH 1.0f #define SHADOW_DETAIL_TRANSFORMATION_TONAL_WIDTH 1.0f #define SHADOW_DETAIL_TRANSFORMATION_MIN_PARAMETER 0.0f #define SHADOW_DETAIL_TRANSFORMATION_MAX_PARAMETER 32.0f gpointer hermite_gamma_approximation_function_ref (gpointer instance); void hermite_gamma_approximation_function_unref (gpointer instance); GParamSpec* param_spec_hermite_gamma_approximation_function (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags); void value_set_hermite_gamma_approximation_function (GValue* value, gpointer v_object); void value_take_hermite_gamma_approximation_function (GValue* value, gpointer v_object); gpointer value_get_hermite_gamma_approximation_function (const GValue* value); GType hermite_gamma_approximation_function_get_type (void) G_GNUC_CONST; HermiteGammaApproximationFunction* hermite_gamma_approximation_function_new (gfloat user_interval_upper); HermiteGammaApproximationFunction* hermite_gamma_approximation_function_construct (GType object_type, gfloat user_interval_upper); gfloat hermite_gamma_approximation_function_evaluate (HermiteGammaApproximationFunction* self, gfloat x); static PixelTransformation* shadow_detail_transformation_real_copy (PixelTransformation* base); static gboolean shadow_detail_transformation_real_is_identity (PixelTransformation* base); static void shadow_detail_transformation_finalize (PixelTransformation * obj); #define HERMITE_GAMMA_APPROXIMATION_FUNCTION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION, HermiteGammaApproximationFunctionPrivate)) static void hermite_gamma_approximation_function_finalize (HermiteGammaApproximationFunction * obj); #define HIGHLIGHT_DETAIL_TRANSFORMATION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformationPrivate)) #define HIGHLIGHT_DETAIL_TRANSFORMATION_MAX_EFFECT_SHIFT 0.5f #define HIGHLIGHT_DETAIL_TRANSFORMATION_MIN_TONAL_WIDTH 0.1f #define HIGHLIGHT_DETAIL_TRANSFORMATION_MAX_TONAL_WIDTH 1.0f #define HIGHLIGHT_DETAIL_TRANSFORMATION_TONAL_WIDTH 1.0f #define HIGHLIGHT_DETAIL_TRANSFORMATION_MIN_PARAMETER (-32.0f) #define HIGHLIGHT_DETAIL_TRANSFORMATION_MAX_PARAMETER 0.0f static PixelTransformation* highlight_detail_transformation_real_copy (PixelTransformation* base); static gboolean highlight_detail_transformation_real_is_identity (PixelTransformation* base); static void highlight_detail_transformation_finalize (PixelTransformation * obj); #define AUTO_ENHANCE_SHADOW_DETECT_MIN_INTENSITY 8 #define AUTO_ENHANCE_SHADOW_DETECT_MAX_INTENSITY 100 #define AUTO_ENHANCE_SHADOW_DETECT_INTENSITY_RANGE (AUTO_ENHANCE_SHADOW_DETECT_MAX_INTENSITY - AUTO_ENHANCE_SHADOW_DETECT_MIN_INTENSITY) #define AUTO_ENHANCE_SHADOW_MODE_HIGH_DISCARD_MASS 0.02f #define AUTO_ENHANCE_SHADOW_AGGRESSIVENESS_MUL 0.4f #define AUTO_ENHANCE_EMPIRICAL_DARK 30 PixelTransformationBundle* auto_enhance_create_auto_enhance_adjustments (GdkPixbuf* pixbuf); static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func); static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func); const gfloat rgb_lookup_table[256] = {0.0f / 255.0f, 1.0f / 255.0f, 2.0f / 255.0f, 3.0f / 255.0f, 4.0f / 255.0f, 5.0f / 255.0f, 6.0f / 255.0f, 7.0f / 255.0f, 8.0f / 255.0f, 9.0f / 255.0f, 10.0f / 255.0f, 11.0f / 255.0f, 12.0f / 255.0f, 13.0f / 255.0f, 14.0f / 255.0f, 15.0f / 255.0f, 16.0f / 255.0f, 17.0f / 255.0f, 18.0f / 255.0f, 19.0f / 255.0f, 20.0f / 255.0f, 21.0f / 255.0f, 22.0f / 255.0f, 23.0f / 255.0f, 24.0f / 255.0f, 25.0f / 255.0f, 26.0f / 255.0f, 27.0f / 255.0f, 28.0f / 255.0f, 29.0f / 255.0f, 30.0f / 255.0f, 31.0f / 255.0f, 32.0f / 255.0f, 33.0f / 255.0f, 34.0f / 255.0f, 35.0f / 255.0f, 36.0f / 255.0f, 37.0f / 255.0f, 38.0f / 255.0f, 39.0f / 255.0f, 40.0f / 255.0f, 41.0f / 255.0f, 42.0f / 255.0f, 43.0f / 255.0f, 44.0f / 255.0f, 45.0f / 255.0f, 46.0f / 255.0f, 47.0f / 255.0f, 48.0f / 255.0f, 49.0f / 255.0f, 50.0f / 255.0f, 51.0f / 255.0f, 52.0f / 255.0f, 53.0f / 255.0f, 54.0f / 255.0f, 55.0f / 255.0f, 56.0f / 255.0f, 57.0f / 255.0f, 58.0f / 255.0f, 59.0f / 255.0f, 60.0f / 255.0f, 61.0f / 255.0f, 62.0f / 255.0f, 63.0f / 255.0f, 64.0f / 255.0f, 65.0f / 255.0f, 66.0f / 255.0f, 67.0f / 255.0f, 68.0f / 255.0f, 69.0f / 255.0f, 70.0f / 255.0f, 71.0f / 255.0f, 72.0f / 255.0f, 73.0f / 255.0f, 74.0f / 255.0f, 75.0f / 255.0f, 76.0f / 255.0f, 77.0f / 255.0f, 78.0f / 255.0f, 79.0f / 255.0f, 80.0f / 255.0f, 81.0f / 255.0f, 82.0f / 255.0f, 83.0f / 255.0f, 84.0f / 255.0f, 85.0f / 255.0f, 86.0f / 255.0f, 87.0f / 255.0f, 88.0f / 255.0f, 89.0f / 255.0f, 90.0f / 255.0f, 91.0f / 255.0f, 92.0f / 255.0f, 93.0f / 255.0f, 94.0f / 255.0f, 95.0f / 255.0f, 96.0f / 255.0f, 97.0f / 255.0f, 98.0f / 255.0f, 99.0f / 255.0f, 100.0f / 255.0f, 101.0f / 255.0f, 102.0f / 255.0f, 103.0f / 255.0f, 104.0f / 255.0f, 105.0f / 255.0f, 106.0f / 255.0f, 107.0f / 255.0f, 108.0f / 255.0f, 109.0f / 255.0f, 110.0f / 255.0f, 111.0f / 255.0f, 112.0f / 255.0f, 113.0f / 255.0f, 114.0f / 255.0f, 115.0f / 255.0f, 116.0f / 255.0f, 117.0f / 255.0f, 118.0f / 255.0f, 119.0f / 255.0f, 120.0f / 255.0f, 121.0f / 255.0f, 122.0f / 255.0f, 123.0f / 255.0f, 124.0f / 255.0f, 125.0f / 255.0f, 126.0f / 255.0f, 127.0f / 255.0f, 128.0f / 255.0f, 129.0f / 255.0f, 130.0f / 255.0f, 131.0f / 255.0f, 132.0f / 255.0f, 133.0f / 255.0f, 134.0f / 255.0f, 135.0f / 255.0f, 136.0f / 255.0f, 137.0f / 255.0f, 138.0f / 255.0f, 139.0f / 255.0f, 140.0f / 255.0f, 141.0f / 255.0f, 142.0f / 255.0f, 143.0f / 255.0f, 144.0f / 255.0f, 145.0f / 255.0f, 146.0f / 255.0f, 147.0f / 255.0f, 148.0f / 255.0f, 149.0f / 255.0f, 150.0f / 255.0f, 151.0f / 255.0f, 152.0f / 255.0f, 153.0f / 255.0f, 154.0f / 255.0f, 155.0f / 255.0f, 156.0f / 255.0f, 157.0f / 255.0f, 158.0f / 255.0f, 159.0f / 255.0f, 160.0f / 255.0f, 161.0f / 255.0f, 162.0f / 255.0f, 163.0f / 255.0f, 164.0f / 255.0f, 165.0f / 255.0f, 166.0f / 255.0f, 167.0f / 255.0f, 168.0f / 255.0f, 169.0f / 255.0f, 170.0f / 255.0f, 171.0f / 255.0f, 172.0f / 255.0f, 173.0f / 255.0f, 174.0f / 255.0f, 175.0f / 255.0f, 176.0f / 255.0f, 177.0f / 255.0f, 178.0f / 255.0f, 179.0f / 255.0f, 180.0f / 255.0f, 181.0f / 255.0f, 182.0f / 255.0f, 183.0f / 255.0f, 184.0f / 255.0f, 185.0f / 255.0f, 186.0f / 255.0f, 187.0f / 255.0f, 188.0f / 255.0f, 189.0f / 255.0f, 190.0f / 255.0f, 191.0f / 255.0f, 192.0f / 255.0f, 193.0f / 255.0f, 194.0f / 255.0f, 195.0f / 255.0f, 196.0f / 255.0f, 197.0f / 255.0f, 198.0f / 255.0f, 199.0f / 255.0f, 200.0f / 255.0f, 201.0f / 255.0f, 202.0f / 255.0f, 203.0f / 255.0f, 204.0f / 255.0f, 205.0f / 255.0f, 206.0f / 255.0f, 207.0f / 255.0f, 208.0f / 255.0f, 209.0f / 255.0f, 210.0f / 255.0f, 211.0f / 255.0f, 212.0f / 255.0f, 213.0f / 255.0f, 214.0f / 255.0f, 215.0f / 255.0f, 216.0f / 255.0f, 217.0f / 255.0f, 218.0f / 255.0f, 219.0f / 255.0f, 220.0f / 255.0f, 221.0f / 255.0f, 222.0f / 255.0f, 223.0f / 255.0f, 224.0f / 255.0f, 225.0f / 255.0f, 226.0f / 255.0f, 227.0f / 255.0f, 228.0f / 255.0f, 229.0f / 255.0f, 230.0f / 255.0f, 231.0f / 255.0f, 232.0f / 255.0f, 233.0f / 255.0f, 234.0f / 255.0f, 235.0f / 255.0f, 236.0f / 255.0f, 237.0f / 255.0f, 238.0f / 255.0f, 239.0f / 255.0f, 240.0f / 255.0f, 241.0f / 255.0f, 242.0f / 255.0f, 243.0f / 255.0f, 244.0f / 255.0f, 245.0f / 255.0f, 246.0f / 255.0f, 247.0f / 255.0f, 248.0f / 255.0f, 249.0f / 255.0f, 250.0f / 255.0f, 251.0f / 255.0f, 252.0f / 255.0f, 253.0f / 255.0f, 254.0f / 255.0f, 255.0f / 255.0f}; void rgb_analytic_pixel_init (RGBAnalyticPixel *self) { #line 14 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (RGBAnalyticPixel)); #line 15 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).red = 0.0f; #line 16 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).green = 0.0f; #line 17 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).blue = 0.0f; #line 1069 "ColorTransformation.c" } void rgb_analytic_pixel_init_from_components (RGBAnalyticPixel *self, gfloat red, gfloat green, gfloat blue) { #line 20 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (RGBAnalyticPixel)); #line 22 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).red = CLAMP (red, 0.0f, 1.0f); #line 23 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).green = CLAMP (green, 0.0f, 1.0f); #line 24 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).blue = CLAMP (blue, 0.0f, 1.0f); #line 1087 "ColorTransformation.c" } void rgb_analytic_pixel_init_from_quantized_components (RGBAnalyticPixel *self, guchar red_quantized, guchar green_quantized, guchar blue_quantized) { gfloat _tmp0_; gfloat _tmp1_; gfloat _tmp2_; #line 27 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (RGBAnalyticPixel)); #line 29 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = rgb_lookup_table[red_quantized]; #line 29 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).red = _tmp0_; #line 30 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = rgb_lookup_table[green_quantized]; #line 30 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).green = _tmp1_; #line 31 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = rgb_lookup_table[blue_quantized]; #line 31 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).blue = _tmp2_; #line 1114 "ColorTransformation.c" } void rgb_analytic_pixel_init_from_hsv (RGBAnalyticPixel *self, HSVAnalyticPixel* hsv_pixel) { RGBAnalyticPixel from_hsv = {0}; RGBAnalyticPixel _tmp0_ = {0}; RGBAnalyticPixel _tmp1_; gfloat _tmp2_; RGBAnalyticPixel _tmp3_; gfloat _tmp4_; RGBAnalyticPixel _tmp5_; gfloat _tmp6_; #line 34 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (RGBAnalyticPixel)); #line 35 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_analytic_pixel_to_rgb (hsv_pixel, &_tmp0_); #line 35 "/home/jens/Source/shotwell/src/ColorTransformation.vala" from_hsv = _tmp0_; #line 36 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = from_hsv; #line 36 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_.red; #line 36 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).red = _tmp2_; #line 37 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = from_hsv; #line 37 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp3_.green; #line 37 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).green = _tmp4_; #line 38 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = from_hsv; #line 38 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _tmp5_.blue; #line 38 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).blue = _tmp6_; #line 1154 "ColorTransformation.c" } guchar rgb_analytic_pixel_quantized_red (RGBAnalyticPixel *self) { guchar result = '\0'; gfloat _tmp0_; #line 42 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = (*self).red; #line 42 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = (guchar) (_tmp0_ * 255.0f); #line 42 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1169 "ColorTransformation.c" } guchar rgb_analytic_pixel_quantized_green (RGBAnalyticPixel *self) { guchar result = '\0'; gfloat _tmp0_; #line 46 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = (*self).green; #line 46 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = (guchar) (_tmp0_ * 255.0f); #line 46 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1184 "ColorTransformation.c" } guchar rgb_analytic_pixel_quantized_blue (RGBAnalyticPixel *self) { guchar result = '\0'; gfloat _tmp0_; #line 50 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = (*self).blue; #line 50 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = (guchar) (_tmp0_ * 255.0f); #line 50 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1199 "ColorTransformation.c" } gboolean rgb_analytic_pixel_equals (RGBAnalyticPixel *self, RGBAnalyticPixel* rhs) { gboolean result = FALSE; gboolean _tmp0_ = FALSE; gboolean _tmp1_ = FALSE; gfloat _tmp2_; gfloat _tmp3_; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = (*self).red; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = (*rhs).red; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp2_ == _tmp3_) { #line 1218 "ColorTransformation.c" gfloat _tmp4_; gfloat _tmp5_; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = (*self).green; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = (*rhs).green; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp4_ == _tmp5_; #line 1227 "ColorTransformation.c" } else { #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 1231 "ColorTransformation.c" } #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp1_) { #line 1235 "ColorTransformation.c" gfloat _tmp6_; gfloat _tmp7_; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = (*self).blue; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = (*rhs).blue; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _tmp6_ == _tmp7_; #line 1244 "ColorTransformation.c" } else { #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 1248 "ColorTransformation.c" } #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 54 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1254 "ColorTransformation.c" } guint rgb_analytic_pixel_hash_code (RGBAnalyticPixel *self) { guint result = 0U; gfloat _tmp0_; gfloat _tmp1_; gfloat _tmp2_; #line 58 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = (*self).red; #line 58 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = (*self).green; #line 58 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = (*self).blue; #line 58 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = ((((guint) (_tmp0_ * 255.0f)) << 16) + (((guint) (_tmp1_ * 255.0f)) << 8)) + ((guint) (_tmp2_ * 255.0f)); #line 58 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1275 "ColorTransformation.c" } void rgb_analytic_pixel_to_hsv (RGBAnalyticPixel *self, HSVAnalyticPixel* result) { HSVAnalyticPixel _tmp0_ = {0}; #line 63 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_analytic_pixel_init_from_rgb (&_tmp0_, &(*self)); #line 63 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *result = _tmp0_; #line 63 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 1290 "ColorTransformation.c" } RGBAnalyticPixel* rgb_analytic_pixel_dup (const RGBAnalyticPixel* self) { RGBAnalyticPixel* dup; #line 7 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dup = g_new0 (RGBAnalyticPixel, 1); #line 7 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memcpy (dup, self, sizeof (RGBAnalyticPixel)); #line 7 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return dup; #line 1304 "ColorTransformation.c" } void rgb_analytic_pixel_free (RGBAnalyticPixel* self) { #line 7 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_free (self); #line 1313 "ColorTransformation.c" } GType rgb_analytic_pixel_get_type (void) { static volatile gsize rgb_analytic_pixel_type_id__volatile = 0; if (g_once_init_enter (&rgb_analytic_pixel_type_id__volatile)) { GType rgb_analytic_pixel_type_id; rgb_analytic_pixel_type_id = g_boxed_type_register_static ("RGBAnalyticPixel", (GBoxedCopyFunc) rgb_analytic_pixel_dup, (GBoxedFreeFunc) rgb_analytic_pixel_free); g_once_init_leave (&rgb_analytic_pixel_type_id__volatile, rgb_analytic_pixel_type_id); } return rgb_analytic_pixel_type_id__volatile; } void hsv_analytic_pixel_init (HSVAnalyticPixel *self) { #line 74 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (HSVAnalyticPixel)); #line 75 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).hue = 0.0f; #line 76 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).saturation = 0.0f; #line 77 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).light_value = 0.0f; #line 1341 "ColorTransformation.c" } void hsv_analytic_pixel_init_from_components (HSVAnalyticPixel *self, gfloat hue, gfloat saturation, gfloat light_value) { #line 80 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (HSVAnalyticPixel)); #line 82 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).hue = CLAMP (hue, 0.0f, 1.0f); #line 83 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).saturation = CLAMP (saturation, 0.0f, 1.0f); #line 84 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).light_value = CLAMP (light_value, 0.0f, 1.0f); #line 1359 "ColorTransformation.c" } void hsv_analytic_pixel_init_from_quantized_components (HSVAnalyticPixel *self, guchar hue_quantized, guchar saturation_quantized, guchar light_value_quantized) { gfloat _tmp0_; gfloat _tmp1_; gfloat _tmp2_; #line 87 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memset (self, 0, sizeof (HSVAnalyticPixel)); #line 89 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = rgb_lookup_table[hue_quantized]; #line 89 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).hue = _tmp0_; #line 90 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = rgb_lookup_table[saturation_quantized]; #line 90 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).saturation = _tmp1_; #line 91 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = rgb_lookup_table[light_value_quantized]; #line 91 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*self).light_value = _tmp2_; #line 1386 "ColorTransformation.c" } gboolean hsv_analytic_pixel_equals (HSVAnalyticPixel *self, HSVAnalyticPixel* rhs) { gboolean result = FALSE; gboolean _tmp0_ = FALSE; gboolean _tmp1_ = FALSE; gfloat _tmp2_; HSVAnalyticPixel _tmp3_; gfloat _tmp4_; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = (*self).hue; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = *rhs; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp3_.hue; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp2_ == _tmp4_) { #line 1408 "ColorTransformation.c" gfloat _tmp5_; HSVAnalyticPixel _tmp6_; gfloat _tmp7_; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = (*self).saturation; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = *rhs; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _tmp6_.saturation; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp5_ == _tmp7_; #line 1420 "ColorTransformation.c" } else { #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 1424 "ColorTransformation.c" } #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp1_) { #line 1428 "ColorTransformation.c" gfloat _tmp8_; HSVAnalyticPixel _tmp9_; gfloat _tmp10_; #line 100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = (*self).light_value; #line 100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = *rhs; #line 100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp9_.light_value; #line 100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _tmp8_ == _tmp10_; #line 1440 "ColorTransformation.c" } else { #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 1444 "ColorTransformation.c" } #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 99 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1450 "ColorTransformation.c" } guint hsv_analytic_pixel_hash_code (HSVAnalyticPixel *self) { guint result = 0U; gfloat _tmp0_; gfloat _tmp1_; gfloat _tmp2_; #line 104 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = (*self).hue; #line 104 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = (*self).saturation; #line 104 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = (*self).light_value; #line 104 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = ((((guint) (_tmp0_ * 255.0f)) << 16) + (((guint) (_tmp1_ * 255.0f)) << 8)) + ((guint) (_tmp2_ * 255.0f)); #line 104 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1471 "ColorTransformation.c" } HSVAnalyticPixel* hsv_analytic_pixel_dup (const HSVAnalyticPixel* self) { HSVAnalyticPixel* dup; #line 67 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dup = g_new0 (HSVAnalyticPixel, 1); #line 67 "/home/jens/Source/shotwell/src/ColorTransformation.vala" memcpy (dup, self, sizeof (HSVAnalyticPixel)); #line 67 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return dup; #line 1485 "ColorTransformation.c" } void hsv_analytic_pixel_free (HSVAnalyticPixel* self) { #line 67 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_free (self); #line 1494 "ColorTransformation.c" } GType hsv_analytic_pixel_get_type (void) { static volatile gsize hsv_analytic_pixel_type_id__volatile = 0; if (g_once_init_enter (&hsv_analytic_pixel_type_id__volatile)) { GType hsv_analytic_pixel_type_id; hsv_analytic_pixel_type_id = g_boxed_type_register_static ("HSVAnalyticPixel", (GBoxedCopyFunc) hsv_analytic_pixel_dup, (GBoxedFreeFunc) hsv_analytic_pixel_free); g_once_init_leave (&hsv_analytic_pixel_type_id__volatile, hsv_analytic_pixel_type_id); } return hsv_analytic_pixel_type_id__volatile; } GType composition_mode_get_type (void) { static volatile gsize composition_mode_type_id__volatile = 0; if (g_once_init_enter (&composition_mode_type_id__volatile)) { static const GEnumValue values[] = {{COMPOSITION_MODE_NONE, "COMPOSITION_MODE_NONE", "none"}, {COMPOSITION_MODE_RGB_MATRIX, "COMPOSITION_MODE_RGB_MATRIX", "rgb-matrix"}, {COMPOSITION_MODE_HSV_LOOKUP, "COMPOSITION_MODE_HSV_LOOKUP", "hsv-lookup"}, {0, NULL, NULL}}; GType composition_mode_type_id; composition_mode_type_id = g_enum_register_static ("CompositionMode", values); g_once_init_leave (&composition_mode_type_id__volatile, composition_mode_type_id); } return composition_mode_type_id__volatile; } GType pixel_format_get_type (void) { static volatile gsize pixel_format_type_id__volatile = 0; if (g_once_init_enter (&pixel_format_type_id__volatile)) { static const GEnumValue values[] = {{PIXEL_FORMAT_RGB, "PIXEL_FORMAT_RGB", "rgb"}, {PIXEL_FORMAT_HSV, "PIXEL_FORMAT_HSV", "hsv"}, {0, NULL, NULL}}; GType pixel_format_type_id; pixel_format_type_id = g_enum_register_static ("PixelFormat", values); g_once_init_leave (&pixel_format_type_id__volatile, pixel_format_type_id); } return pixel_format_type_id__volatile; } GType pixel_transformation_type_get_type (void) { static volatile gsize pixel_transformation_type_type_id__volatile = 0; if (g_once_init_enter (&pixel_transformation_type_type_id__volatile)) { static const GEnumValue values[] = {{PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION, "PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION", "tone-expansion"}, {PIXEL_TRANSFORMATION_TYPE_SHADOWS, "PIXEL_TRANSFORMATION_TYPE_SHADOWS", "shadows"}, {PIXEL_TRANSFORMATION_TYPE_HIGHLIGHTS, "PIXEL_TRANSFORMATION_TYPE_HIGHLIGHTS", "highlights"}, {PIXEL_TRANSFORMATION_TYPE_TEMPERATURE, "PIXEL_TRANSFORMATION_TYPE_TEMPERATURE", "temperature"}, {PIXEL_TRANSFORMATION_TYPE_TINT, "PIXEL_TRANSFORMATION_TYPE_TINT", "tint"}, {PIXEL_TRANSFORMATION_TYPE_SATURATION, "PIXEL_TRANSFORMATION_TYPE_SATURATION", "saturation"}, {PIXEL_TRANSFORMATION_TYPE_EXPOSURE, "PIXEL_TRANSFORMATION_TYPE_EXPOSURE", "exposure"}, {PIXEL_TRANSFORMATION_TYPE_CONTRAST, "PIXEL_TRANSFORMATION_TYPE_CONTRAST", "contrast"}, {0, NULL, NULL}}; GType pixel_transformation_type_type_id; pixel_transformation_type_type_id = g_enum_register_static ("PixelTransformationType", values); g_once_init_leave (&pixel_transformation_type_type_id__volatile, pixel_transformation_type_type_id); } return pixel_transformation_type_type_id__volatile; } PixelTransformationBundle* pixel_transformation_bundle_construct (GType object_type) { PixelTransformationBundle* self = NULL; #line 137 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (PixelTransformationBundle*) g_type_create_instance (object_type); #line 137 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 1561 "ColorTransformation.c" } PixelTransformationBundle* pixel_transformation_bundle_new (void) { #line 137 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return pixel_transformation_bundle_construct (TYPE_PIXEL_TRANSFORMATION_BUNDLE); #line 1570 "ColorTransformation.c" } static gpointer _pixel_transformation_bundle_ref0 (gpointer self) { #line 141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self ? pixel_transformation_bundle_ref (self) : NULL; #line 1579 "ColorTransformation.c" } PixelTransformationBundle* pixel_transformation_bundle_get_copied_color_adjustments (void) { PixelTransformationBundle* result = NULL; PixelTransformationBundle* _tmp0_; PixelTransformationBundle* _tmp1_; #line 141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformation_bundle_copied_color_adjustments; #line 141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _pixel_transformation_bundle_ref0 (_tmp0_); #line 141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp1_; #line 141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1597 "ColorTransformation.c" } void pixel_transformation_bundle_set_copied_color_adjustments (PixelTransformationBundle* adjustments) { PixelTransformationBundle* _tmp0_; #line 145 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _pixel_transformation_bundle_ref0 (adjustments); #line 145 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_bundle_unref0 (pixel_transformation_bundle_copied_color_adjustments); #line 145 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_copied_color_adjustments = _tmp0_; #line 1611 "ColorTransformation.c" } gboolean pixel_transformation_bundle_has_copied_color_adjustments (void) { gboolean result = FALSE; PixelTransformationBundle* _tmp0_; #line 149 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformation_bundle_copied_color_adjustments; #line 149 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_ != NULL; #line 149 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1626 "ColorTransformation.c" } void pixel_transformation_bundle_set (PixelTransformationBundle* self, PixelTransformation* transformation) { GeeHashMap* _tmp0_; #line 153 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->map; #line 153 "/home/jens/Source/shotwell/src/ColorTransformation.vala" gee_abstract_map_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), (gpointer) ((gintptr) ((gint) pixel_transformation_get_transformation_type (transformation))), transformation); #line 1639 "ColorTransformation.c" } void pixel_transformation_bundle_set_to_identity (PixelTransformationBundle* self) { ExpansionTransformation* _tmp0_; ExpansionTransformation* _tmp1_; ShadowDetailTransformation* _tmp2_; ShadowDetailTransformation* _tmp3_; HighlightDetailTransformation* _tmp4_; HighlightDetailTransformation* _tmp5_; TemperatureTransformation* _tmp6_; TemperatureTransformation* _tmp7_; TintTransformation* _tmp8_; TintTransformation* _tmp9_; SaturationTransformation* _tmp10_; SaturationTransformation* _tmp11_; ExposureTransformation* _tmp12_; ExposureTransformation* _tmp13_; ContrastTransformation* _tmp14_; ContrastTransformation* _tmp15_; #line 157 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = expansion_transformation_new_from_extrema (0, 255); #line 157 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp0_; #line 157 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 157 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp1_); #line 158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = shadow_detail_transformation_new (0.0f); #line 158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp2_; #line 158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp3_); #line 159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = highlight_detail_transformation_new (0.0f); #line 159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp4_; #line 159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp5_); #line 160 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = temperature_transformation_new (0.0f); #line 160 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _tmp6_; #line 160 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 160 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp7_); #line 161 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = tint_transformation_new (0.0f); #line 161 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp8_; #line 161 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 161 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp9_); #line 162 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = saturation_transformation_new (0.0f); #line 162 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = _tmp10_; #line 162 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 162 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp11_); #line 163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = exposure_transformation_new (0.0f); #line 163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = _tmp12_; #line 163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp13_); #line 164 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = contrast_transformation_new (0.0f); #line 164 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = _tmp14_; #line 164 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp15_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 164 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp15_); #line 1726 "ColorTransformation.c" } void pixel_transformation_bundle_load (PixelTransformationBundle* self, KeyValueMap* store) { gchar* expansion_params_encoded = NULL; gchar* _tmp0_; const gchar* _tmp1_; ShadowDetailTransformation* _tmp7_; ShadowDetailTransformation* _tmp8_; HighlightDetailTransformation* _tmp9_; HighlightDetailTransformation* _tmp10_; TemperatureTransformation* _tmp11_; TemperatureTransformation* _tmp12_; TintTransformation* _tmp13_; TintTransformation* _tmp14_; SaturationTransformation* _tmp15_; SaturationTransformation* _tmp16_; ExposureTransformation* _tmp17_; ExposureTransformation* _tmp18_; ContrastTransformation* _tmp19_; ContrastTransformation* _tmp20_; #line 168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = key_value_map_get_string (store, "expansion", "-"); #line 168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" expansion_params_encoded = _tmp0_; #line 169 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = expansion_params_encoded; #line 169 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_strcmp0 (_tmp1_, "-") == 0) { #line 1759 "ColorTransformation.c" ExpansionTransformation* _tmp2_; ExpansionTransformation* _tmp3_; #line 170 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = expansion_transformation_new_from_extrema (0, 255); #line 170 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp2_; #line 170 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 170 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp3_); #line 1770 "ColorTransformation.c" } else { const gchar* _tmp4_; ExpansionTransformation* _tmp5_; ExpansionTransformation* _tmp6_; #line 172 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = expansion_params_encoded; #line 172 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = expansion_transformation_new_from_string (_tmp4_); #line 172 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _tmp5_; #line 172 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 172 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp6_); #line 1785 "ColorTransformation.c" } #line 174 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = shadow_detail_transformation_new (key_value_map_get_float (store, "shadows", 0.0f)); #line 174 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _tmp7_; #line 174 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 174 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp8_); #line 175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = highlight_detail_transformation_new (key_value_map_get_float (store, "highlights", 0.0f)); #line 175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp9_; #line 175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp10_); #line 176 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = temperature_transformation_new (key_value_map_get_float (store, "temperature", 0.0f)); #line 176 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = _tmp11_; #line 176 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp12_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 176 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp12_); #line 177 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = tint_transformation_new (key_value_map_get_float (store, "tint", 0.0f)); #line 177 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = _tmp13_; #line 177 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp14_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 177 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp14_); #line 178 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = saturation_transformation_new (key_value_map_get_float (store, "saturation", 0.0f)); #line 178 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = _tmp15_; #line 178 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp16_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 178 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp16_); #line 179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = exposure_transformation_new (key_value_map_get_float (store, "exposure", 0.0f)); #line 179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = _tmp17_; #line 179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp18_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp18_); #line 180 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = contrast_transformation_new (key_value_map_get_float (store, "contrast", 0.0f)); #line 180 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = _tmp19_; #line 180 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (self, G_TYPE_CHECK_INSTANCE_CAST (_tmp20_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 180 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp20_); #line 167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_free0 (expansion_params_encoded); #line 1845 "ColorTransformation.c" } KeyValueMap* pixel_transformation_bundle_save (PixelTransformationBundle* self, const gchar* group) { KeyValueMap* result = NULL; KeyValueMap* store = NULL; KeyValueMap* _tmp0_; ExpansionTransformation* new_expansion_trans = NULL; PixelTransformation* _tmp1_; gchar* _tmp2_; gchar* _tmp3_; ShadowDetailTransformation* new_shadows_trans = NULL; PixelTransformation* _tmp4_; HighlightDetailTransformation* new_highlight_trans = NULL; PixelTransformation* _tmp5_; TemperatureTransformation* new_temp_trans = NULL; PixelTransformation* _tmp6_; TintTransformation* new_tint_trans = NULL; PixelTransformation* _tmp7_; SaturationTransformation* new_sat_trans = NULL; PixelTransformation* _tmp8_; ExposureTransformation* new_exposure_trans = NULL; PixelTransformation* _tmp9_; ContrastTransformation* new_contrast_trans = NULL; PixelTransformation* _tmp10_; #line 184 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = key_value_map_new (group); #line 184 "/home/jens/Source/shotwell/src/ColorTransformation.vala" store = _tmp0_; #line 186 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION); #line 186 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_expansion_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformation); #line 188 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_expansion_trans != NULL, "new_expansion_trans != null"); #line 189 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = pixel_transformation_to_string (G_TYPE_CHECK_INSTANCE_CAST (new_expansion_trans, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 189 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp2_; #line 189 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_string (store, "expansion", _tmp3_); #line 189 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_free0 (_tmp3_); #line 191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_SHADOWS); #line 191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_shadows_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformation); #line 193 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_shadows_trans != NULL, "new_shadows_trans != null"); #line 194 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "shadows", shadow_detail_transformation_get_parameter (new_shadows_trans)); #line 196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_HIGHLIGHTS); #line 196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_highlight_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp5_, TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformation); #line 198 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_highlight_trans != NULL, "new_highlight_trans != null"); #line 199 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "highlights", highlight_detail_transformation_get_parameter (new_highlight_trans)); #line 201 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_TEMPERATURE); #line 201 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_temp_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, TYPE_TEMPERATURE_TRANSFORMATION, TemperatureTransformation); #line 203 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_temp_trans != NULL, "new_temp_trans != null"); #line 204 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "temperature", temperature_transformation_get_parameter (new_temp_trans)); #line 206 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_TINT); #line 206 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_tint_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, TYPE_TINT_TRANSFORMATION, TintTransformation); #line 208 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_tint_trans != NULL, "new_tint_trans != null"); #line 209 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "tint", tint_transformation_get_parameter (new_tint_trans)); #line 211 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_SATURATION); #line 211 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_sat_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp8_, TYPE_SATURATION_TRANSFORMATION, SaturationTransformation); #line 213 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_sat_trans != NULL, "new_sat_trans != null"); #line 214 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "saturation", saturation_transformation_get_parameter (new_sat_trans)); #line 216 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_EXPOSURE); #line 216 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_exposure_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, TYPE_EXPOSURE_TRANSFORMATION, ExposureTransformation); #line 218 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_exposure_trans != NULL, "new_exposure_trans != null"); #line 219 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "exposure", exposure_transformation_get_parameter (new_exposure_trans)); #line 221 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = pixel_transformation_bundle_get_transformation (self, PIXEL_TRANSFORMATION_TYPE_CONTRAST); #line 221 "/home/jens/Source/shotwell/src/ColorTransformation.vala" new_contrast_trans = G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, TYPE_CONTRAST_TRANSFORMATION, ContrastTransformation); #line 223 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (new_contrast_trans != NULL, "new_contrast_trans != null"); #line 224 "/home/jens/Source/shotwell/src/ColorTransformation.vala" key_value_map_set_float (store, "contrast", contrast_transformation_get_parameter (new_contrast_trans)); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = store; #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_contrast_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_exposure_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_sat_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_tint_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_temp_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_highlight_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_shadows_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (new_expansion_trans); #line 226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1968 "ColorTransformation.c" } gint pixel_transformation_bundle_get_count (PixelTransformationBundle* self) { gint result = 0; GeeHashMap* _tmp0_; gint _tmp1_; gint _tmp2_; #line 230 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->map; #line 230 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = gee_abstract_map_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap)); #line 230 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_; #line 230 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp2_; #line 230 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 1989 "ColorTransformation.c" } PixelTransformation* pixel_transformation_bundle_get_transformation (PixelTransformationBundle* self, PixelTransformationType type) { PixelTransformation* result = NULL; GeeHashMap* _tmp0_; gpointer _tmp1_; #line 234 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->map; #line 234 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = gee_abstract_map_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap), (gpointer) ((gintptr) ((gint) type))); #line 234 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = (PixelTransformation*) _tmp1_; #line 234 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2008 "ColorTransformation.c" } GeeIterable* pixel_transformation_bundle_get_transformations (PixelTransformationBundle* self) { GeeIterable* result = NULL; GeeHashMap* _tmp0_; GeeCollection* _tmp1_; GeeCollection* _tmp2_; #line 238 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->map; #line 238 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = gee_abstract_map_get_values (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_MAP, GeeAbstractMap)); #line 238 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_; #line 238 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, GEE_TYPE_ITERABLE, GeeIterable); #line 238 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2029 "ColorTransformation.c" } gboolean pixel_transformation_bundle_is_identity (PixelTransformationBundle* self) { gboolean result = FALSE; { GeeIterator* _adjustment_it = NULL; GeeIterable* _tmp0_; GeeIterable* _tmp1_; GeeIterator* _tmp2_; GeeIterator* _tmp3_; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformation_bundle_get_transformations (self); #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp0_; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = gee_iterable_iterator (_tmp1_); #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp2_; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_tmp1_); #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _adjustment_it = _tmp3_; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 2057 "ColorTransformation.c" GeeIterator* _tmp4_; PixelTransformation* adjustment = NULL; GeeIterator* _tmp5_; gpointer _tmp6_; PixelTransformation* _tmp7_; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _adjustment_it; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!gee_iterator_next (_tmp4_)) { #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 2069 "ColorTransformation.c" } #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _adjustment_it; #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = gee_iterator_get (_tmp5_); #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjustment = (PixelTransformation*) _tmp6_; #line 243 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = adjustment; #line 243 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!pixel_transformation_is_identity (_tmp7_)) { #line 244 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = FALSE; #line 244 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (adjustment); #line 244 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_adjustment_it); #line 244 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2089 "ColorTransformation.c" } #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (adjustment); #line 2093 "ColorTransformation.c" } #line 242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_adjustment_it); #line 2097 "ColorTransformation.c" } #line 247 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = TRUE; #line 247 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2103 "ColorTransformation.c" } PixelTransformer* pixel_transformation_bundle_generate_transformer (PixelTransformationBundle* self) { PixelTransformer* result = NULL; PixelTransformer* transformer = NULL; PixelTransformer* _tmp0_; #line 251 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformer_new (); #line 251 "/home/jens/Source/shotwell/src/ColorTransformation.vala" transformer = _tmp0_; #line 2117 "ColorTransformation.c" { GeeIterator* _transformation_it = NULL; GeeIterable* _tmp1_; GeeIterable* _tmp2_; GeeIterator* _tmp3_; GeeIterator* _tmp4_; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = pixel_transformation_bundle_get_transformations (self); #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = gee_iterable_iterator (_tmp2_); #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp3_; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_tmp2_); #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _transformation_it = _tmp4_; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 2138 "ColorTransformation.c" GeeIterator* _tmp5_; PixelTransformation* transformation = NULL; GeeIterator* _tmp6_; gpointer _tmp7_; PixelTransformer* _tmp8_; PixelTransformation* _tmp9_; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _transformation_it; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!gee_iterator_next (_tmp5_)) { #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 2151 "ColorTransformation.c" } #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _transformation_it; #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = gee_iterator_get (_tmp6_); #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" transformation = (PixelTransformation*) _tmp7_; #line 253 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = transformer; #line 253 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = transformation; #line 253 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_attach_transformation (_tmp8_, _tmp9_); #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (transformation); #line 2167 "ColorTransformation.c" } #line 252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_transformation_it); #line 2171 "ColorTransformation.c" } #line 255 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = transformer; #line 255 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2177 "ColorTransformation.c" } PixelTransformationBundle* pixel_transformation_bundle_copy (PixelTransformationBundle* self) { PixelTransformationBundle* result = NULL; PixelTransformationBundle* bundle = NULL; PixelTransformationBundle* _tmp0_; #line 259 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformation_bundle_new (); #line 259 "/home/jens/Source/shotwell/src/ColorTransformation.vala" bundle = _tmp0_; #line 2191 "ColorTransformation.c" { GeeIterator* _transformation_it = NULL; GeeIterable* _tmp1_; GeeIterable* _tmp2_; GeeIterator* _tmp3_; GeeIterator* _tmp4_; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = pixel_transformation_bundle_get_transformations (self); #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = gee_iterable_iterator (_tmp2_); #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp3_; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_tmp2_); #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _transformation_it = _tmp4_; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 2212 "ColorTransformation.c" GeeIterator* _tmp5_; PixelTransformation* transformation = NULL; GeeIterator* _tmp6_; gpointer _tmp7_; PixelTransformationBundle* _tmp8_; PixelTransformation* _tmp9_; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _transformation_it; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!gee_iterator_next (_tmp5_)) { #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 2225 "ColorTransformation.c" } #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _transformation_it; #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = gee_iterator_get (_tmp6_); #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" transformation = (PixelTransformation*) _tmp7_; #line 261 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = bundle; #line 261 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = transformation; #line 261 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp8_, _tmp9_); #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (transformation); #line 2241 "ColorTransformation.c" } #line 260 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_transformation_it); #line 2245 "ColorTransformation.c" } #line 263 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = bundle; #line 263 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2251 "ColorTransformation.c" } static void value_pixel_transformation_bundle_init (GValue* value) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2260 "ColorTransformation.c" } static void value_pixel_transformation_bundle_free_value (GValue* value) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (value->data[0].v_pointer) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_unref (value->data[0].v_pointer); #line 2271 "ColorTransformation.c" } } static void value_pixel_transformation_bundle_copy_value (const GValue* src_value, GValue* dest_value) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (src_value->data[0].v_pointer) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = pixel_transformation_bundle_ref (src_value->data[0].v_pointer); #line 2284 "ColorTransformation.c" } else { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = NULL; #line 2288 "ColorTransformation.c" } } static gpointer value_pixel_transformation_bundle_peek_pointer (const GValue* value) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 2298 "ColorTransformation.c" } static gchar* value_pixel_transformation_bundle_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (collect_values[0].v_pointer) { #line 2310 "ColorTransformation.c" PixelTransformationBundle * object; object = collect_values[0].v_pointer; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (object->parent_instance.g_class == NULL) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 2317 "ColorTransformation.c" } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 2321 "ColorTransformation.c" } #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = pixel_transformation_bundle_ref (object); #line 2325 "ColorTransformation.c" } else { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2329 "ColorTransformation.c" } #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 2333 "ColorTransformation.c" } static gchar* value_pixel_transformation_bundle_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { PixelTransformationBundle ** object_p; object_p = collect_values[0].v_pointer; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!object_p) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); #line 2349 "ColorTransformation.c" } #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!value->data[0].v_pointer) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = NULL; #line 2355 "ColorTransformation.c" } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = value->data[0].v_pointer; #line 2359 "ColorTransformation.c" } else { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = pixel_transformation_bundle_ref (value->data[0].v_pointer); #line 2363 "ColorTransformation.c" } #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 2367 "ColorTransformation.c" } GParamSpec* param_spec_pixel_transformation_bundle (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { ParamSpecPixelTransformationBundle* spec; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (g_type_is_a (object_type, TYPE_PIXEL_TRANSFORMATION_BUNDLE), NULL); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_PARAM_SPEC (spec)->value_type = object_type; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return G_PARAM_SPEC (spec); #line 2387 "ColorTransformation.c" } gpointer value_get_pixel_transformation_bundle (const GValue* value) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMATION_BUNDLE), NULL); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 2398 "ColorTransformation.c" } void value_set_pixel_transformation_bundle (GValue* value, gpointer v_object) { PixelTransformationBundle * old; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMATION_BUNDLE)); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PIXEL_TRANSFORMATION_BUNDLE)); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_ref (value->data[0].v_pointer); #line 2421 "ColorTransformation.c" } else { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2425 "ColorTransformation.c" } #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_unref (old); #line 2431 "ColorTransformation.c" } } void value_take_pixel_transformation_bundle (GValue* value, gpointer v_object) { PixelTransformationBundle * old; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMATION_BUNDLE)); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PIXEL_TRANSFORMATION_BUNDLE)); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 2453 "ColorTransformation.c" } else { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2457 "ColorTransformation.c" } #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_unref (old); #line 2463 "ColorTransformation.c" } } static void pixel_transformation_bundle_class_init (PixelTransformationBundleClass * klass) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_parent_class = g_type_class_peek_parent (klass); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationBundleClass *) klass)->finalize = pixel_transformation_bundle_finalize; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (PixelTransformationBundlePrivate)); #line 2477 "ColorTransformation.c" } static void pixel_transformation_bundle_instance_init (PixelTransformationBundle * self) { void* _tmp0_; GDestroyNotify _tmp1_; GeeHashDataFunc _tmp2_; void* _tmp3_; GDestroyNotify _tmp4_; GeeEqualDataFunc _tmp5_; GeeHashMap* _tmp6_; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = PIXEL_TRANSFORMATION_BUNDLE_GET_PRIVATE (self); #line 134 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = gee_functions_get_hash_func_for (G_TYPE_INT, &_tmp0_, &_tmp1_); #line 134 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = gee_functions_get_equal_func_for (G_TYPE_INT, &_tmp3_, &_tmp4_); #line 134 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = gee_hash_map_new (G_TYPE_INT, NULL, NULL, TYPE_PIXEL_TRANSFORMATION, (GBoxedCopyFunc) pixel_transformation_ref, (GDestroyNotify) pixel_transformation_unref, _tmp2_, _tmp0_, _tmp1_, _tmp5_, _tmp3_, _tmp4_, NULL, NULL, NULL); #line 134 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->map = _tmp6_; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->ref_count = 1; #line 2503 "ColorTransformation.c" } static void pixel_transformation_bundle_finalize (PixelTransformationBundle * obj) { PixelTransformationBundle * self; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PIXEL_TRANSFORMATION_BUNDLE, PixelTransformationBundle); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_signal_handlers_destroy (self); #line 134 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (self->priv->map); #line 2517 "ColorTransformation.c" } GType pixel_transformation_bundle_get_type (void) { static volatile gsize pixel_transformation_bundle_type_id__volatile = 0; if (g_once_init_enter (&pixel_transformation_bundle_type_id__volatile)) { static const GTypeValueTable g_define_type_value_table = { value_pixel_transformation_bundle_init, value_pixel_transformation_bundle_free_value, value_pixel_transformation_bundle_copy_value, value_pixel_transformation_bundle_peek_pointer, "p", value_pixel_transformation_bundle_collect_value, "p", value_pixel_transformation_bundle_lcopy_value }; static const GTypeInfo g_define_type_info = { sizeof (PixelTransformationBundleClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) pixel_transformation_bundle_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PixelTransformationBundle), 0, (GInstanceInitFunc) pixel_transformation_bundle_instance_init, &g_define_type_value_table }; static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; GType pixel_transformation_bundle_type_id; pixel_transformation_bundle_type_id = g_type_register_fundamental (g_type_fundamental_next (), "PixelTransformationBundle", &g_define_type_info, &g_define_type_fundamental_info, 0); g_once_init_leave (&pixel_transformation_bundle_type_id__volatile, pixel_transformation_bundle_type_id); } return pixel_transformation_bundle_type_id__volatile; } gpointer pixel_transformation_bundle_ref (gpointer instance) { PixelTransformationBundle * self; self = instance; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&self->ref_count); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return instance; #line 2546 "ColorTransformation.c" } void pixel_transformation_bundle_unref (gpointer instance) { PixelTransformationBundle * self; self = instance; #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&self->ref_count)) { #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_BUNDLE_GET_CLASS (self)->finalize (self); #line 131 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_free_instance ((GTypeInstance *) self); #line 2561 "ColorTransformation.c" } } PixelTransformation* pixel_transformation_construct (GType object_type, PixelTransformationType type, PixelFormat preferred_format) { PixelTransformation* self = NULL; #line 271 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (PixelTransformation*) g_type_create_instance (object_type); #line 273 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->type = type; #line 274 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->preferred_format = preferred_format; #line 271 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 2580 "ColorTransformation.c" } PixelTransformationType pixel_transformation_get_transformation_type (PixelTransformation* self) { PixelTransformationType result = 0; PixelTransformationType _tmp0_; #line 278 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->type; #line 278 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 278 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2595 "ColorTransformation.c" } PixelFormat pixel_transformation_get_preferred_format (PixelTransformation* self) { PixelFormat result = 0; PixelFormat _tmp0_; #line 282 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->preferred_format; #line 282 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 282 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2610 "ColorTransformation.c" } static CompositionMode pixel_transformation_real_get_composition_mode (PixelTransformation* self) { CompositionMode result = 0; #line 286 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = COMPOSITION_MODE_NONE; #line 286 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2622 "ColorTransformation.c" } CompositionMode pixel_transformation_get_composition_mode (PixelTransformation* self) { #line 285 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return PIXEL_TRANSFORMATION_GET_CLASS (self)->get_composition_mode (self); #line 2631 "ColorTransformation.c" } static void pixel_transformation_real_compose_with (PixelTransformation* self, PixelTransformation* other) { #line 290 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:290: %s", "PixelTransformation: compose_with( ): this type of pixel " "transformation doesn't support composition."); #line 2641 "ColorTransformation.c" } void pixel_transformation_compose_with (PixelTransformation* self, PixelTransformation* other) { #line 289 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_GET_CLASS (self)->compose_with (self, other); #line 2651 "ColorTransformation.c" } static gboolean pixel_transformation_real_is_identity (PixelTransformation* self) { gboolean result = FALSE; #line 295 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = TRUE; #line 295 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2663 "ColorTransformation.c" } gboolean pixel_transformation_is_identity (PixelTransformation* self) { #line 294 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return PIXEL_TRANSFORMATION_GET_CLASS (self)->is_identity (self); #line 2672 "ColorTransformation.c" } static void pixel_transformation_real_transform_pixel_hsv (PixelTransformation* self, HSVAnalyticPixel* p, HSVAnalyticPixel* result) { HSVAnalyticPixel _tmp0_; #line 299 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = *p; #line 299 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *result = _tmp0_; #line 299 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 2688 "ColorTransformation.c" } void pixel_transformation_transform_pixel_hsv (PixelTransformation* self, HSVAnalyticPixel* p, HSVAnalyticPixel* result) { #line 298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_GET_CLASS (self)->transform_pixel_hsv (self, p, result); #line 2699 "ColorTransformation.c" } static void pixel_transformation_real_transform_pixel_rgb (PixelTransformation* self, RGBAnalyticPixel* p, RGBAnalyticPixel* result) { RGBAnalyticPixel _tmp0_; #line 303 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = *p; #line 303 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *result = _tmp0_; #line 303 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 2715 "ColorTransformation.c" } void pixel_transformation_transform_pixel_rgb (PixelTransformation* self, RGBAnalyticPixel* p, RGBAnalyticPixel* result) { #line 302 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_GET_CLASS (self)->transform_pixel_rgb (self, p, result); #line 2726 "ColorTransformation.c" } static gchar* pixel_transformation_real_to_string (PixelTransformation* self) { gchar* result = NULL; gchar* _tmp0_; #line 307 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = g_strdup ("PixelTransformation"); #line 307 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 307 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 2741 "ColorTransformation.c" } gchar* pixel_transformation_to_string (PixelTransformation* self) { #line 306 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return PIXEL_TRANSFORMATION_GET_CLASS (self)->to_string (self); #line 2750 "ColorTransformation.c" } static PixelTransformation* pixel_transformation_real_copy (PixelTransformation* self) { #line 310 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_critical ("Type `%s' does not implement abstract method `pixel_transformation_copy'", g_type_name (G_TYPE_FROM_INSTANCE (self))); #line 310 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 2761 "ColorTransformation.c" } PixelTransformation* pixel_transformation_copy (PixelTransformation* self) { #line 310 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return PIXEL_TRANSFORMATION_GET_CLASS (self)->copy (self); #line 2770 "ColorTransformation.c" } static void value_pixel_transformation_init (GValue* value) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2779 "ColorTransformation.c" } static void value_pixel_transformation_free_value (GValue* value) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (value->data[0].v_pointer) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_unref (value->data[0].v_pointer); #line 2790 "ColorTransformation.c" } } static void value_pixel_transformation_copy_value (const GValue* src_value, GValue* dest_value) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (src_value->data[0].v_pointer) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = pixel_transformation_ref (src_value->data[0].v_pointer); #line 2803 "ColorTransformation.c" } else { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = NULL; #line 2807 "ColorTransformation.c" } } static gpointer value_pixel_transformation_peek_pointer (const GValue* value) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 2817 "ColorTransformation.c" } static gchar* value_pixel_transformation_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (collect_values[0].v_pointer) { #line 2829 "ColorTransformation.c" PixelTransformation * object; object = collect_values[0].v_pointer; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (object->parent_instance.g_class == NULL) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 2836 "ColorTransformation.c" } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 2840 "ColorTransformation.c" } #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = pixel_transformation_ref (object); #line 2844 "ColorTransformation.c" } else { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2848 "ColorTransformation.c" } #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 2852 "ColorTransformation.c" } static gchar* value_pixel_transformation_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { PixelTransformation ** object_p; object_p = collect_values[0].v_pointer; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!object_p) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); #line 2868 "ColorTransformation.c" } #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!value->data[0].v_pointer) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = NULL; #line 2874 "ColorTransformation.c" } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = value->data[0].v_pointer; #line 2878 "ColorTransformation.c" } else { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = pixel_transformation_ref (value->data[0].v_pointer); #line 2882 "ColorTransformation.c" } #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 2886 "ColorTransformation.c" } GParamSpec* param_spec_pixel_transformation (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { ParamSpecPixelTransformation* spec; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (g_type_is_a (object_type, TYPE_PIXEL_TRANSFORMATION), NULL); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_PARAM_SPEC (spec)->value_type = object_type; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return G_PARAM_SPEC (spec); #line 2906 "ColorTransformation.c" } gpointer value_get_pixel_transformation (const GValue* value) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMATION), NULL); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 2917 "ColorTransformation.c" } void value_set_pixel_transformation (GValue* value, gpointer v_object) { PixelTransformation * old; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMATION)); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PIXEL_TRANSFORMATION)); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_ref (value->data[0].v_pointer); #line 2940 "ColorTransformation.c" } else { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2944 "ColorTransformation.c" } #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_unref (old); #line 2950 "ColorTransformation.c" } } void value_take_pixel_transformation (GValue* value, gpointer v_object) { PixelTransformation * old; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMATION)); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PIXEL_TRANSFORMATION)); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 2972 "ColorTransformation.c" } else { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 2976 "ColorTransformation.c" } #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_unref (old); #line 2982 "ColorTransformation.c" } } static void pixel_transformation_class_init (PixelTransformationClass * klass) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_parent_class = g_type_class_peek_parent (klass); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = pixel_transformation_finalize; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (PixelTransformationPrivate)); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->get_composition_mode = (CompositionMode (*) (PixelTransformation *)) pixel_transformation_real_get_composition_mode; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->compose_with = (void (*) (PixelTransformation *, PixelTransformation*)) pixel_transformation_real_compose_with; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->is_identity = (gboolean (*) (PixelTransformation *)) pixel_transformation_real_is_identity; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->transform_pixel_hsv = (void (*) (PixelTransformation *, HSVAnalyticPixel*, HSVAnalyticPixel*)) pixel_transformation_real_transform_pixel_hsv; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->transform_pixel_rgb = (void (*) (PixelTransformation *, RGBAnalyticPixel*, RGBAnalyticPixel*)) pixel_transformation_real_transform_pixel_rgb; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->to_string = (gchar* (*) (PixelTransformation *)) pixel_transformation_real_to_string; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->copy = (PixelTransformation* (*) (PixelTransformation *)) pixel_transformation_real_copy; #line 3010 "ColorTransformation.c" } static void pixel_transformation_instance_init (PixelTransformation * self) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = PIXEL_TRANSFORMATION_GET_PRIVATE (self); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->ref_count = 1; #line 3021 "ColorTransformation.c" } static void pixel_transformation_finalize (PixelTransformation * obj) { PixelTransformation * self; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PIXEL_TRANSFORMATION, PixelTransformation); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_signal_handlers_destroy (self); #line 3033 "ColorTransformation.c" } GType pixel_transformation_get_type (void) { static volatile gsize pixel_transformation_type_id__volatile = 0; if (g_once_init_enter (&pixel_transformation_type_id__volatile)) { static const GTypeValueTable g_define_type_value_table = { value_pixel_transformation_init, value_pixel_transformation_free_value, value_pixel_transformation_copy_value, value_pixel_transformation_peek_pointer, "p", value_pixel_transformation_collect_value, "p", value_pixel_transformation_lcopy_value }; static const GTypeInfo g_define_type_info = { sizeof (PixelTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) pixel_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PixelTransformation), 0, (GInstanceInitFunc) pixel_transformation_instance_init, &g_define_type_value_table }; static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; GType pixel_transformation_type_id; pixel_transformation_type_id = g_type_register_fundamental (g_type_fundamental_next (), "PixelTransformation", &g_define_type_info, &g_define_type_fundamental_info, G_TYPE_FLAG_ABSTRACT); g_once_init_leave (&pixel_transformation_type_id__volatile, pixel_transformation_type_id); } return pixel_transformation_type_id__volatile; } gpointer pixel_transformation_ref (gpointer instance) { PixelTransformation * self; self = instance; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&self->ref_count); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return instance; #line 3062 "ColorTransformation.c" } void pixel_transformation_unref (gpointer instance) { PixelTransformation * self; self = instance; #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&self->ref_count)) { #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_GET_CLASS (self)->finalize (self); #line 267 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_free_instance ((GTypeInstance *) self); #line 3077 "ColorTransformation.c" } } RGBTransformation* rgb_transformation_construct (GType object_type, PixelTransformationType type) { RGBTransformation* self = NULL; gfloat* _tmp0_; #line 323 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (RGBTransformation*) pixel_transformation_construct (object_type, type, PIXEL_FORMAT_RGB); #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = g_new0 (gfloat, 16); #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[0] = 1.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[1] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[2] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[3] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[4] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[5] = 1.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[6] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[7] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[8] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[9] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[10] = 1.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[11] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[12] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[13] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[14] = 0.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_[15] = 1.0f; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->matrix_entries = (g_free (self->matrix_entries), NULL); #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->matrix_entries = _tmp0_; #line 329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->matrix_entries_length1 = 16; #line 322 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 3132 "ColorTransformation.c" } RGBTransformation* rgb_transformation_new (PixelTransformationType type) { #line 322 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return rgb_transformation_construct (TYPE_RGB_TRANSFORMATION, type); #line 3141 "ColorTransformation.c" } static CompositionMode rgb_transformation_real_get_composition_mode (PixelTransformation* base) { RGBTransformation * self; CompositionMode result = 0; #line 336 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_RGB_TRANSFORMATION, RGBTransformation); #line 337 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = COMPOSITION_MODE_RGB_MATRIX; #line 337 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 3156 "ColorTransformation.c" } static gpointer _pixel_transformation_ref0 (gpointer self) { #line 345 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self ? pixel_transformation_ref (self) : NULL; #line 3165 "ColorTransformation.c" } static void rgb_transformation_real_compose_with (PixelTransformation* base, PixelTransformation* other) { RGBTransformation * self; RGBTransformation* transform = NULL; RGBTransformation* _tmp0_; gfloat* result_matrix_entries = NULL; gfloat* _tmp1_; gint result_matrix_entries_length1; gint _result_matrix_entries_size_; gfloat* _tmp2_; gint _tmp2__length1; RGBTransformation* _tmp3_; gfloat* _tmp4_; gint _tmp4__length1; gfloat _tmp5_; gfloat* _tmp6_; gint _tmp6__length1; gfloat _tmp7_; RGBTransformation* _tmp8_; gfloat* _tmp9_; gint _tmp9__length1; gfloat _tmp10_; gfloat* _tmp11_; gint _tmp11__length1; gfloat _tmp12_; RGBTransformation* _tmp13_; gfloat* _tmp14_; gint _tmp14__length1; gfloat _tmp15_; gfloat* _tmp16_; gint _tmp16__length1; gfloat _tmp17_; RGBTransformation* _tmp18_; gfloat* _tmp19_; gint _tmp19__length1; gfloat _tmp20_; gfloat* _tmp21_; gint _tmp21__length1; gfloat _tmp22_; gfloat _tmp23_; gfloat* _tmp24_; gint _tmp24__length1; RGBTransformation* _tmp25_; gfloat* _tmp26_; gint _tmp26__length1; gfloat _tmp27_; gfloat* _tmp28_; gint _tmp28__length1; gfloat _tmp29_; RGBTransformation* _tmp30_; gfloat* _tmp31_; gint _tmp31__length1; gfloat _tmp32_; gfloat* _tmp33_; gint _tmp33__length1; gfloat _tmp34_; RGBTransformation* _tmp35_; gfloat* _tmp36_; gint _tmp36__length1; gfloat _tmp37_; gfloat* _tmp38_; gint _tmp38__length1; gfloat _tmp39_; RGBTransformation* _tmp40_; gfloat* _tmp41_; gint _tmp41__length1; gfloat _tmp42_; gfloat* _tmp43_; gint _tmp43__length1; gfloat _tmp44_; gfloat _tmp45_; gfloat* _tmp46_; gint _tmp46__length1; RGBTransformation* _tmp47_; gfloat* _tmp48_; gint _tmp48__length1; gfloat _tmp49_; gfloat* _tmp50_; gint _tmp50__length1; gfloat _tmp51_; RGBTransformation* _tmp52_; gfloat* _tmp53_; gint _tmp53__length1; gfloat _tmp54_; gfloat* _tmp55_; gint _tmp55__length1; gfloat _tmp56_; RGBTransformation* _tmp57_; gfloat* _tmp58_; gint _tmp58__length1; gfloat _tmp59_; gfloat* _tmp60_; gint _tmp60__length1; gfloat _tmp61_; RGBTransformation* _tmp62_; gfloat* _tmp63_; gint _tmp63__length1; gfloat _tmp64_; gfloat* _tmp65_; gint _tmp65__length1; gfloat _tmp66_; gfloat _tmp67_; gfloat* _tmp68_; gint _tmp68__length1; RGBTransformation* _tmp69_; gfloat* _tmp70_; gint _tmp70__length1; gfloat _tmp71_; gfloat* _tmp72_; gint _tmp72__length1; gfloat _tmp73_; RGBTransformation* _tmp74_; gfloat* _tmp75_; gint _tmp75__length1; gfloat _tmp76_; gfloat* _tmp77_; gint _tmp77__length1; gfloat _tmp78_; RGBTransformation* _tmp79_; gfloat* _tmp80_; gint _tmp80__length1; gfloat _tmp81_; gfloat* _tmp82_; gint _tmp82__length1; gfloat _tmp83_; RGBTransformation* _tmp84_; gfloat* _tmp85_; gint _tmp85__length1; gfloat _tmp86_; gfloat* _tmp87_; gint _tmp87__length1; gfloat _tmp88_; gfloat _tmp89_; gfloat* _tmp90_; gint _tmp90__length1; RGBTransformation* _tmp91_; gfloat* _tmp92_; gint _tmp92__length1; gfloat _tmp93_; gfloat* _tmp94_; gint _tmp94__length1; gfloat _tmp95_; RGBTransformation* _tmp96_; gfloat* _tmp97_; gint _tmp97__length1; gfloat _tmp98_; gfloat* _tmp99_; gint _tmp99__length1; gfloat _tmp100_; RGBTransformation* _tmp101_; gfloat* _tmp102_; gint _tmp102__length1; gfloat _tmp103_; gfloat* _tmp104_; gint _tmp104__length1; gfloat _tmp105_; RGBTransformation* _tmp106_; gfloat* _tmp107_; gint _tmp107__length1; gfloat _tmp108_; gfloat* _tmp109_; gint _tmp109__length1; gfloat _tmp110_; gfloat _tmp111_; gfloat* _tmp112_; gint _tmp112__length1; RGBTransformation* _tmp113_; gfloat* _tmp114_; gint _tmp114__length1; gfloat _tmp115_; gfloat* _tmp116_; gint _tmp116__length1; gfloat _tmp117_; RGBTransformation* _tmp118_; gfloat* _tmp119_; gint _tmp119__length1; gfloat _tmp120_; gfloat* _tmp121_; gint _tmp121__length1; gfloat _tmp122_; RGBTransformation* _tmp123_; gfloat* _tmp124_; gint _tmp124__length1; gfloat _tmp125_; gfloat* _tmp126_; gint _tmp126__length1; gfloat _tmp127_; RGBTransformation* _tmp128_; gfloat* _tmp129_; gint _tmp129__length1; gfloat _tmp130_; gfloat* _tmp131_; gint _tmp131__length1; gfloat _tmp132_; gfloat _tmp133_; gfloat* _tmp134_; gint _tmp134__length1; RGBTransformation* _tmp135_; gfloat* _tmp136_; gint _tmp136__length1; gfloat _tmp137_; gfloat* _tmp138_; gint _tmp138__length1; gfloat _tmp139_; RGBTransformation* _tmp140_; gfloat* _tmp141_; gint _tmp141__length1; gfloat _tmp142_; gfloat* _tmp143_; gint _tmp143__length1; gfloat _tmp144_; RGBTransformation* _tmp145_; gfloat* _tmp146_; gint _tmp146__length1; gfloat _tmp147_; gfloat* _tmp148_; gint _tmp148__length1; gfloat _tmp149_; RGBTransformation* _tmp150_; gfloat* _tmp151_; gint _tmp151__length1; gfloat _tmp152_; gfloat* _tmp153_; gint _tmp153__length1; gfloat _tmp154_; gfloat _tmp155_; gfloat* _tmp156_; gint _tmp156__length1; RGBTransformation* _tmp157_; gfloat* _tmp158_; gint _tmp158__length1; gfloat _tmp159_; gfloat* _tmp160_; gint _tmp160__length1; gfloat _tmp161_; RGBTransformation* _tmp162_; gfloat* _tmp163_; gint _tmp163__length1; gfloat _tmp164_; gfloat* _tmp165_; gint _tmp165__length1; gfloat _tmp166_; RGBTransformation* _tmp167_; gfloat* _tmp168_; gint _tmp168__length1; gfloat _tmp169_; gfloat* _tmp170_; gint _tmp170__length1; gfloat _tmp171_; RGBTransformation* _tmp172_; gfloat* _tmp173_; gint _tmp173__length1; gfloat _tmp174_; gfloat* _tmp175_; gint _tmp175__length1; gfloat _tmp176_; gfloat _tmp177_; gfloat* _tmp178_; gint _tmp178__length1; RGBTransformation* _tmp179_; gfloat* _tmp180_; gint _tmp180__length1; gfloat _tmp181_; gfloat* _tmp182_; gint _tmp182__length1; gfloat _tmp183_; RGBTransformation* _tmp184_; gfloat* _tmp185_; gint _tmp185__length1; gfloat _tmp186_; gfloat* _tmp187_; gint _tmp187__length1; gfloat _tmp188_; RGBTransformation* _tmp189_; gfloat* _tmp190_; gint _tmp190__length1; gfloat _tmp191_; gfloat* _tmp192_; gint _tmp192__length1; gfloat _tmp193_; RGBTransformation* _tmp194_; gfloat* _tmp195_; gint _tmp195__length1; gfloat _tmp196_; gfloat* _tmp197_; gint _tmp197__length1; gfloat _tmp198_; gfloat _tmp199_; gfloat* _tmp200_; gint _tmp200__length1; RGBTransformation* _tmp201_; gfloat* _tmp202_; gint _tmp202__length1; gfloat _tmp203_; gfloat* _tmp204_; gint _tmp204__length1; gfloat _tmp205_; RGBTransformation* _tmp206_; gfloat* _tmp207_; gint _tmp207__length1; gfloat _tmp208_; gfloat* _tmp209_; gint _tmp209__length1; gfloat _tmp210_; RGBTransformation* _tmp211_; gfloat* _tmp212_; gint _tmp212__length1; gfloat _tmp213_; gfloat* _tmp214_; gint _tmp214__length1; gfloat _tmp215_; RGBTransformation* _tmp216_; gfloat* _tmp217_; gint _tmp217__length1; gfloat _tmp218_; gfloat* _tmp219_; gint _tmp219__length1; gfloat _tmp220_; gfloat _tmp221_; gfloat* _tmp222_; gint _tmp222__length1; RGBTransformation* _tmp223_; gfloat* _tmp224_; gint _tmp224__length1; gfloat _tmp225_; gfloat* _tmp226_; gint _tmp226__length1; gfloat _tmp227_; RGBTransformation* _tmp228_; gfloat* _tmp229_; gint _tmp229__length1; gfloat _tmp230_; gfloat* _tmp231_; gint _tmp231__length1; gfloat _tmp232_; RGBTransformation* _tmp233_; gfloat* _tmp234_; gint _tmp234__length1; gfloat _tmp235_; gfloat* _tmp236_; gint _tmp236__length1; gfloat _tmp237_; RGBTransformation* _tmp238_; gfloat* _tmp239_; gint _tmp239__length1; gfloat _tmp240_; gfloat* _tmp241_; gint _tmp241__length1; gfloat _tmp242_; gfloat _tmp243_; gfloat* _tmp244_; gint _tmp244__length1; RGBTransformation* _tmp245_; gfloat* _tmp246_; gint _tmp246__length1; gfloat _tmp247_; gfloat* _tmp248_; gint _tmp248__length1; gfloat _tmp249_; RGBTransformation* _tmp250_; gfloat* _tmp251_; gint _tmp251__length1; gfloat _tmp252_; gfloat* _tmp253_; gint _tmp253__length1; gfloat _tmp254_; RGBTransformation* _tmp255_; gfloat* _tmp256_; gint _tmp256__length1; gfloat _tmp257_; gfloat* _tmp258_; gint _tmp258__length1; gfloat _tmp259_; RGBTransformation* _tmp260_; gfloat* _tmp261_; gint _tmp261__length1; gfloat _tmp262_; gfloat* _tmp263_; gint _tmp263__length1; gfloat _tmp264_; gfloat _tmp265_; gfloat* _tmp266_; gint _tmp266__length1; RGBTransformation* _tmp267_; gfloat* _tmp268_; gint _tmp268__length1; gfloat _tmp269_; gfloat* _tmp270_; gint _tmp270__length1; gfloat _tmp271_; RGBTransformation* _tmp272_; gfloat* _tmp273_; gint _tmp273__length1; gfloat _tmp274_; gfloat* _tmp275_; gint _tmp275__length1; gfloat _tmp276_; RGBTransformation* _tmp277_; gfloat* _tmp278_; gint _tmp278__length1; gfloat _tmp279_; gfloat* _tmp280_; gint _tmp280__length1; gfloat _tmp281_; RGBTransformation* _tmp282_; gfloat* _tmp283_; gint _tmp283__length1; gfloat _tmp284_; gfloat* _tmp285_; gint _tmp285__length1; gfloat _tmp286_; gfloat _tmp287_; gfloat* _tmp288_; gint _tmp288__length1; RGBTransformation* _tmp289_; gfloat* _tmp290_; gint _tmp290__length1; gfloat _tmp291_; gfloat* _tmp292_; gint _tmp292__length1; gfloat _tmp293_; RGBTransformation* _tmp294_; gfloat* _tmp295_; gint _tmp295__length1; gfloat _tmp296_; gfloat* _tmp297_; gint _tmp297__length1; gfloat _tmp298_; RGBTransformation* _tmp299_; gfloat* _tmp300_; gint _tmp300__length1; gfloat _tmp301_; gfloat* _tmp302_; gint _tmp302__length1; gfloat _tmp303_; RGBTransformation* _tmp304_; gfloat* _tmp305_; gint _tmp305__length1; gfloat _tmp306_; gfloat* _tmp307_; gint _tmp307__length1; gfloat _tmp308_; gfloat _tmp309_; gfloat* _tmp310_; gint _tmp310__length1; RGBTransformation* _tmp311_; gfloat* _tmp312_; gint _tmp312__length1; gfloat _tmp313_; gfloat* _tmp314_; gint _tmp314__length1; gfloat _tmp315_; RGBTransformation* _tmp316_; gfloat* _tmp317_; gint _tmp317__length1; gfloat _tmp318_; gfloat* _tmp319_; gint _tmp319__length1; gfloat _tmp320_; RGBTransformation* _tmp321_; gfloat* _tmp322_; gint _tmp322__length1; gfloat _tmp323_; gfloat* _tmp324_; gint _tmp324__length1; gfloat _tmp325_; RGBTransformation* _tmp326_; gfloat* _tmp327_; gint _tmp327__length1; gfloat _tmp328_; gfloat* _tmp329_; gint _tmp329__length1; gfloat _tmp330_; gfloat _tmp331_; gfloat* _tmp332_; gint _tmp332__length1; RGBTransformation* _tmp333_; gfloat* _tmp334_; gint _tmp334__length1; gfloat _tmp335_; gfloat* _tmp336_; gint _tmp336__length1; gfloat _tmp337_; RGBTransformation* _tmp338_; gfloat* _tmp339_; gint _tmp339__length1; gfloat _tmp340_; gfloat* _tmp341_; gint _tmp341__length1; gfloat _tmp342_; RGBTransformation* _tmp343_; gfloat* _tmp344_; gint _tmp344__length1; gfloat _tmp345_; gfloat* _tmp346_; gint _tmp346__length1; gfloat _tmp347_; RGBTransformation* _tmp348_; gfloat* _tmp349_; gint _tmp349__length1; gfloat _tmp350_; gfloat* _tmp351_; gint _tmp351__length1; gfloat _tmp352_; gfloat _tmp353_; gboolean _tmp363_ = FALSE; gboolean _tmp364_; #line 340 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_RGB_TRANSFORMATION, RGBTransformation); #line 341 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (pixel_transformation_get_composition_mode (other) != COMPOSITION_MODE_RGB_MATRIX) { #line 342 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:342: %s", "RGBTransformation: compose_with( ): 'other' transformation " "does not support RGB_MATRIX composition mode"); #line 3684 "ColorTransformation.c" } #line 345 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _pixel_transformation_ref0 (G_TYPE_CHECK_INSTANCE_CAST (other, TYPE_RGB_TRANSFORMATION, RGBTransformation)); #line 345 "/home/jens/Source/shotwell/src/ColorTransformation.vala" transform = _tmp0_; #line 347 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = g_new0 (gfloat, 16); #line 347 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result_matrix_entries = _tmp1_; #line 347 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result_matrix_entries_length1 = 16; #line 347 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _result_matrix_entries_size_ = result_matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = result_matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2__length1 = result_matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = transform; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp3_->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4__length1 = _tmp3_->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp4_[0]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = self->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6__length1 = self->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _tmp6_[0]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = transform; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp8_->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9__length1 = _tmp8_->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp9_[1]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = self->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11__length1 = self->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = _tmp11_[4]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = transform; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = _tmp13_->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14__length1 = _tmp13_->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = _tmp14_[2]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = self->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16__length1 = self->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = _tmp16_[8]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = transform; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = _tmp18_->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19__length1 = _tmp18_->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = _tmp19_[3]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = self->matrix_entries; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21__length1 = self->matrix_entries_length1; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = _tmp21_[12]; #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_[0] = (((_tmp5_ * _tmp7_) + (_tmp10_ * _tmp12_)) + (_tmp15_ * _tmp17_)) + (_tmp20_ * _tmp22_); #line 350 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = _tmp2_[0]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = result_matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24__length1 = result_matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = transform; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = _tmp25_->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26__length1 = _tmp25_->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = _tmp26_[0]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = self->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28__length1 = self->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = _tmp28_[1]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = transform; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = _tmp30_->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31__length1 = _tmp30_->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = _tmp31_[1]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = self->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33__length1 = self->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = _tmp33_[5]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = transform; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = _tmp35_->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36__length1 = _tmp35_->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = _tmp36_[2]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = self->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38__length1 = self->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = _tmp38_[9]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = transform; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = _tmp40_->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41__length1 = _tmp40_->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = _tmp41_[3]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = self->matrix_entries; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43__length1 = self->matrix_entries_length1; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = _tmp43_[13]; #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_[1] = (((_tmp27_ * _tmp29_) + (_tmp32_ * _tmp34_)) + (_tmp37_ * _tmp39_)) + (_tmp42_ * _tmp44_); #line 356 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp45_ = _tmp24_[1]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_ = result_matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46__length1 = result_matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47_ = transform; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48_ = _tmp47_->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48__length1 = _tmp47_->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp49_ = _tmp48_[0]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = self->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50__length1 = self->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = _tmp50_[2]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp52_ = transform; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_ = _tmp52_->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53__length1 = _tmp52_->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp54_ = _tmp53_[1]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp55_ = self->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp55__length1 = self->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp56_ = _tmp55_[6]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp57_ = transform; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58_ = _tmp57_->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58__length1 = _tmp57_->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp59_ = _tmp58_[2]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp60_ = self->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp60__length1 = self->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp61_ = _tmp60_[10]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp62_ = transform; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp63_ = _tmp62_->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp63__length1 = _tmp62_->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp64_ = _tmp63_[3]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp65_ = self->matrix_entries; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp65__length1 = self->matrix_entries_length1; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp66_ = _tmp65_[14]; #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_[2] = (((_tmp49_ * _tmp51_) + (_tmp54_ * _tmp56_)) + (_tmp59_ * _tmp61_)) + (_tmp64_ * _tmp66_); #line 362 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp67_ = _tmp46_[2]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp68_ = result_matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp68__length1 = result_matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp69_ = transform; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp70_ = _tmp69_->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp70__length1 = _tmp69_->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp71_ = _tmp70_[0]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp72_ = self->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp72__length1 = self->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp73_ = _tmp72_[3]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp74_ = transform; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp75_ = _tmp74_->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp75__length1 = _tmp74_->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp76_ = _tmp75_[1]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp77_ = self->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp77__length1 = self->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp78_ = _tmp77_[7]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp79_ = transform; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp80_ = _tmp79_->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp80__length1 = _tmp79_->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp81_ = _tmp80_[2]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp82_ = self->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp82__length1 = self->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp83_ = _tmp82_[11]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp84_ = transform; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp85_ = _tmp84_->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp85__length1 = _tmp84_->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp86_ = _tmp85_[3]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp87_ = self->matrix_entries; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp87__length1 = self->matrix_entries_length1; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp88_ = _tmp87_[15]; #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp68_[3] = (((_tmp71_ * _tmp73_) + (_tmp76_ * _tmp78_)) + (_tmp81_ * _tmp83_)) + (_tmp86_ * _tmp88_); #line 368 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp89_ = _tmp68_[3]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90_ = result_matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90__length1 = result_matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp91_ = transform; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp92_ = _tmp91_->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp92__length1 = _tmp91_->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp93_ = _tmp92_[4]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp94_ = self->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp94__length1 = self->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp95_ = _tmp94_[0]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp96_ = transform; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp97_ = _tmp96_->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp97__length1 = _tmp96_->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98_ = _tmp97_[5]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp99_ = self->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp99__length1 = self->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp100_ = _tmp99_[4]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp101_ = transform; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp102_ = _tmp101_->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp102__length1 = _tmp101_->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp103_ = _tmp102_[6]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp104_ = self->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp104__length1 = self->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp105_ = _tmp104_[8]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106_ = transform; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp107_ = _tmp106_->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp107__length1 = _tmp106_->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp108_ = _tmp107_[7]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp109_ = self->matrix_entries; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp109__length1 = self->matrix_entries_length1; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp110_ = _tmp109_[12]; #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90_[4] = (((_tmp93_ * _tmp95_) + (_tmp98_ * _tmp100_)) + (_tmp103_ * _tmp105_)) + (_tmp108_ * _tmp110_); #line 375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp111_ = _tmp90_[4]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp112_ = result_matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp112__length1 = result_matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp113_ = transform; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp114_ = _tmp113_->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp114__length1 = _tmp113_->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp115_ = _tmp114_[4]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp116_ = self->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp116__length1 = self->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp117_ = _tmp116_[1]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp118_ = transform; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp119_ = _tmp118_->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp119__length1 = _tmp118_->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp120_ = _tmp119_[5]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp121_ = self->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp121__length1 = self->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp122_ = _tmp121_[5]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp123_ = transform; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp124_ = _tmp123_->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp124__length1 = _tmp123_->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp125_ = _tmp124_[6]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp126_ = self->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp126__length1 = self->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp127_ = _tmp126_[9]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp128_ = transform; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp129_ = _tmp128_->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp129__length1 = _tmp128_->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp130_ = _tmp129_[7]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp131_ = self->matrix_entries; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp131__length1 = self->matrix_entries_length1; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp132_ = _tmp131_[13]; #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp112_[5] = (((_tmp115_ * _tmp117_) + (_tmp120_ * _tmp122_)) + (_tmp125_ * _tmp127_)) + (_tmp130_ * _tmp132_); #line 381 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp133_ = _tmp112_[5]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp134_ = result_matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp134__length1 = result_matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp135_ = transform; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp136_ = _tmp135_->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp136__length1 = _tmp135_->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp137_ = _tmp136_[4]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp138_ = self->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp138__length1 = self->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp139_ = _tmp138_[2]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp140_ = transform; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp141_ = _tmp140_->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp141__length1 = _tmp140_->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp142_ = _tmp141_[5]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp143_ = self->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp143__length1 = self->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp144_ = _tmp143_[6]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp145_ = transform; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp146_ = _tmp145_->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp146__length1 = _tmp145_->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp147_ = _tmp146_[6]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp148_ = self->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp148__length1 = self->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp149_ = _tmp148_[10]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp150_ = transform; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp151_ = _tmp150_->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp151__length1 = _tmp150_->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp152_ = _tmp151_[7]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp153_ = self->matrix_entries; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp153__length1 = self->matrix_entries_length1; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp154_ = _tmp153_[14]; #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp134_[6] = (((_tmp137_ * _tmp139_) + (_tmp142_ * _tmp144_)) + (_tmp147_ * _tmp149_)) + (_tmp152_ * _tmp154_); #line 387 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp155_ = _tmp134_[6]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp156_ = result_matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp156__length1 = result_matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp157_ = transform; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp158_ = _tmp157_->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp158__length1 = _tmp157_->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp159_ = _tmp158_[4]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp160_ = self->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp160__length1 = self->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp161_ = _tmp160_[3]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp162_ = transform; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp163_ = _tmp162_->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp163__length1 = _tmp162_->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp164_ = _tmp163_[5]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp165_ = self->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp165__length1 = self->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp166_ = _tmp165_[7]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp167_ = transform; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp168_ = _tmp167_->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp168__length1 = _tmp167_->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp169_ = _tmp168_[6]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp170_ = self->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp170__length1 = self->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp171_ = _tmp170_[11]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp172_ = transform; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp173_ = _tmp172_->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp173__length1 = _tmp172_->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp174_ = _tmp173_[7]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp175_ = self->matrix_entries; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp175__length1 = self->matrix_entries_length1; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp176_ = _tmp175_[15]; #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp156_[7] = (((_tmp159_ * _tmp161_) + (_tmp164_ * _tmp166_)) + (_tmp169_ * _tmp171_)) + (_tmp174_ * _tmp176_); #line 393 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp177_ = _tmp156_[7]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp178_ = result_matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp178__length1 = result_matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp179_ = transform; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp180_ = _tmp179_->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp180__length1 = _tmp179_->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp181_ = _tmp180_[8]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp182_ = self->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp182__length1 = self->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp183_ = _tmp182_[0]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp184_ = transform; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp185_ = _tmp184_->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp185__length1 = _tmp184_->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp186_ = _tmp185_[9]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp187_ = self->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp187__length1 = self->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp188_ = _tmp187_[4]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp189_ = transform; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp190_ = _tmp189_->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp190__length1 = _tmp189_->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp191_ = _tmp190_[10]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp192_ = self->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp192__length1 = self->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp193_ = _tmp192_[8]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp194_ = transform; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp195_ = _tmp194_->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp195__length1 = _tmp194_->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp196_ = _tmp195_[11]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp197_ = self->matrix_entries; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp197__length1 = self->matrix_entries_length1; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp198_ = _tmp197_[12]; #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp178_[8] = (((_tmp181_ * _tmp183_) + (_tmp186_ * _tmp188_)) + (_tmp191_ * _tmp193_)) + (_tmp196_ * _tmp198_); #line 400 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp199_ = _tmp178_[8]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp200_ = result_matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp200__length1 = result_matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp201_ = transform; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp202_ = _tmp201_->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp202__length1 = _tmp201_->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp203_ = _tmp202_[8]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp204_ = self->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp204__length1 = self->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp205_ = _tmp204_[1]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp206_ = transform; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp207_ = _tmp206_->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp207__length1 = _tmp206_->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp208_ = _tmp207_[9]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp209_ = self->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp209__length1 = self->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp210_ = _tmp209_[5]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp211_ = transform; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp212_ = _tmp211_->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp212__length1 = _tmp211_->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp213_ = _tmp212_[10]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp214_ = self->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp214__length1 = self->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp215_ = _tmp214_[9]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp216_ = transform; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp217_ = _tmp216_->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp217__length1 = _tmp216_->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp218_ = _tmp217_[11]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp219_ = self->matrix_entries; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp219__length1 = self->matrix_entries_length1; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp220_ = _tmp219_[13]; #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp200_[9] = (((_tmp203_ * _tmp205_) + (_tmp208_ * _tmp210_)) + (_tmp213_ * _tmp215_)) + (_tmp218_ * _tmp220_); #line 406 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp221_ = _tmp200_[9]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp222_ = result_matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp222__length1 = result_matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp223_ = transform; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp224_ = _tmp223_->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp224__length1 = _tmp223_->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp225_ = _tmp224_[8]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp226_ = self->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp226__length1 = self->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp227_ = _tmp226_[2]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp228_ = transform; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp229_ = _tmp228_->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp229__length1 = _tmp228_->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp230_ = _tmp229_[9]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp231_ = self->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp231__length1 = self->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp232_ = _tmp231_[6]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp233_ = transform; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp234_ = _tmp233_->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp234__length1 = _tmp233_->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp235_ = _tmp234_[10]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp236_ = self->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp236__length1 = self->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp237_ = _tmp236_[10]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp238_ = transform; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp239_ = _tmp238_->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp239__length1 = _tmp238_->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp240_ = _tmp239_[11]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp241_ = self->matrix_entries; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp241__length1 = self->matrix_entries_length1; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp242_ = _tmp241_[14]; #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp222_[10] = (((_tmp225_ * _tmp227_) + (_tmp230_ * _tmp232_)) + (_tmp235_ * _tmp237_)) + (_tmp240_ * _tmp242_); #line 412 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp243_ = _tmp222_[10]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp244_ = result_matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp244__length1 = result_matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp245_ = transform; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp246_ = _tmp245_->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp246__length1 = _tmp245_->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp247_ = _tmp246_[8]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp248_ = self->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp248__length1 = self->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp249_ = _tmp248_[3]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp250_ = transform; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp251_ = _tmp250_->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp251__length1 = _tmp250_->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp252_ = _tmp251_[9]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp253_ = self->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp253__length1 = self->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp254_ = _tmp253_[7]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp255_ = transform; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp256_ = _tmp255_->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp256__length1 = _tmp255_->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp257_ = _tmp256_[10]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp258_ = self->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp258__length1 = self->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp259_ = _tmp258_[11]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp260_ = transform; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp261_ = _tmp260_->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp261__length1 = _tmp260_->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp262_ = _tmp261_[11]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp263_ = self->matrix_entries; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp263__length1 = self->matrix_entries_length1; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp264_ = _tmp263_[15]; #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp244_[11] = (((_tmp247_ * _tmp249_) + (_tmp252_ * _tmp254_)) + (_tmp257_ * _tmp259_)) + (_tmp262_ * _tmp264_); #line 418 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp265_ = _tmp244_[11]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp266_ = result_matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp266__length1 = result_matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp267_ = transform; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp268_ = _tmp267_->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp268__length1 = _tmp267_->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp269_ = _tmp268_[12]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp270_ = self->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp270__length1 = self->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp271_ = _tmp270_[0]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp272_ = transform; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp273_ = _tmp272_->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp273__length1 = _tmp272_->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp274_ = _tmp273_[13]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp275_ = self->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp275__length1 = self->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp276_ = _tmp275_[4]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp277_ = transform; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp278_ = _tmp277_->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp278__length1 = _tmp277_->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp279_ = _tmp278_[14]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp280_ = self->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp280__length1 = self->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp281_ = _tmp280_[8]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp282_ = transform; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp283_ = _tmp282_->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp283__length1 = _tmp282_->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp284_ = _tmp283_[15]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp285_ = self->matrix_entries; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp285__length1 = self->matrix_entries_length1; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp286_ = _tmp285_[12]; #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp266_[12] = (((_tmp269_ * _tmp271_) + (_tmp274_ * _tmp276_)) + (_tmp279_ * _tmp281_)) + (_tmp284_ * _tmp286_); #line 425 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp287_ = _tmp266_[12]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp288_ = result_matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp288__length1 = result_matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp289_ = transform; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp290_ = _tmp289_->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp290__length1 = _tmp289_->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp291_ = _tmp290_[12]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp292_ = self->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp292__length1 = self->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp293_ = _tmp292_[1]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp294_ = transform; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp295_ = _tmp294_->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp295__length1 = _tmp294_->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp296_ = _tmp295_[13]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp297_ = self->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp297__length1 = self->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp298_ = _tmp297_[5]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp299_ = transform; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp300_ = _tmp299_->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp300__length1 = _tmp299_->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp301_ = _tmp300_[14]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp302_ = self->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp302__length1 = self->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp303_ = _tmp302_[9]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp304_ = transform; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp305_ = _tmp304_->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp305__length1 = _tmp304_->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp306_ = _tmp305_[15]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp307_ = self->matrix_entries; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp307__length1 = self->matrix_entries_length1; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp308_ = _tmp307_[13]; #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp288_[13] = (((_tmp291_ * _tmp293_) + (_tmp296_ * _tmp298_)) + (_tmp301_ * _tmp303_)) + (_tmp306_ * _tmp308_); #line 431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp309_ = _tmp288_[13]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp310_ = result_matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp310__length1 = result_matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp311_ = transform; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp312_ = _tmp311_->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp312__length1 = _tmp311_->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp313_ = _tmp312_[12]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp314_ = self->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp314__length1 = self->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp315_ = _tmp314_[2]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp316_ = transform; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp317_ = _tmp316_->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp317__length1 = _tmp316_->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp318_ = _tmp317_[13]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp319_ = self->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp319__length1 = self->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp320_ = _tmp319_[6]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp321_ = transform; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp322_ = _tmp321_->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp322__length1 = _tmp321_->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp323_ = _tmp322_[14]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp324_ = self->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp324__length1 = self->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp325_ = _tmp324_[10]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp326_ = transform; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp327_ = _tmp326_->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp327__length1 = _tmp326_->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp328_ = _tmp327_[15]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp329_ = self->matrix_entries; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp329__length1 = self->matrix_entries_length1; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp330_ = _tmp329_[14]; #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp310_[14] = (((_tmp313_ * _tmp315_) + (_tmp318_ * _tmp320_)) + (_tmp323_ * _tmp325_)) + (_tmp328_ * _tmp330_); #line 437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp331_ = _tmp310_[14]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp332_ = result_matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp332__length1 = result_matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp333_ = transform; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp334_ = _tmp333_->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp334__length1 = _tmp333_->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp335_ = _tmp334_[12]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp336_ = self->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp336__length1 = self->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp337_ = _tmp336_[3]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp338_ = transform; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp339_ = _tmp338_->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp339__length1 = _tmp338_->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp340_ = _tmp339_[13]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp341_ = self->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp341__length1 = self->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp342_ = _tmp341_[7]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp343_ = transform; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp344_ = _tmp343_->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp344__length1 = _tmp343_->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp345_ = _tmp344_[14]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp346_ = self->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp346__length1 = self->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp347_ = _tmp346_[11]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp348_ = transform; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp349_ = _tmp348_->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp349__length1 = _tmp348_->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp350_ = _tmp349_[15]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp351_ = self->matrix_entries; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp351__length1 = self->matrix_entries_length1; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp352_ = _tmp351_[15]; #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp332_[15] = (((_tmp335_ * _tmp337_) + (_tmp340_ * _tmp342_)) + (_tmp345_ * _tmp347_)) + (_tmp350_ * _tmp352_); #line 443 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp353_ = _tmp332_[15]; #line 4722 "ColorTransformation.c" { gint i = 0; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 4727 "ColorTransformation.c" { gboolean _tmp354_ = FALSE; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp354_ = TRUE; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 4734 "ColorTransformation.c" gint _tmp356_; gfloat* _tmp357_; gint _tmp357__length1; gint _tmp358_; gfloat* _tmp359_; gint _tmp359__length1; gint _tmp360_; gfloat _tmp361_; gfloat _tmp362_; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp354_) { #line 4746 "ColorTransformation.c" gint _tmp355_; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp355_ = i; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp355_ + 1; #line 4752 "ColorTransformation.c" } #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp354_ = FALSE; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp356_ = i; #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp356_ < RGB_TRANSFORMATION_MATRIX_SIZE)) { #line 449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 4762 "ColorTransformation.c" } #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp357_ = self->matrix_entries; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp357__length1 = self->matrix_entries_length1; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp358_ = i; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp359_ = result_matrix_entries; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp359__length1 = result_matrix_entries_length1; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp360_ = i; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp361_ = _tmp359_[_tmp360_]; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp357_[_tmp358_] = _tmp361_; #line 450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp362_ = _tmp357_[_tmp358_]; #line 4782 "ColorTransformation.c" } } } #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp364_ = self->identity; #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp364_) { #line 4790 "ColorTransformation.c" RGBTransformation* _tmp365_; gboolean _tmp366_; #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp365_ = transform; #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp366_ = _tmp365_->identity; #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp363_ = _tmp366_; #line 4799 "ColorTransformation.c" } else { #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp363_ = FALSE; #line 4803 "ColorTransformation.c" } #line 452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->identity = _tmp363_; #line 340 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result_matrix_entries = (g_free (result_matrix_entries), NULL); #line 340 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (transform); #line 4811 "ColorTransformation.c" } static void rgb_transformation_real_transform_pixel_hsv (PixelTransformation* base, HSVAnalyticPixel* p, HSVAnalyticPixel* result) { RGBTransformation * self; RGBAnalyticPixel _tmp0_ = {0}; RGBAnalyticPixel _tmp1_ = {0}; HSVAnalyticPixel _tmp2_ = {0}; #line 455 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_RGB_TRANSFORMATION, RGBTransformation); #line 456 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_analytic_pixel_to_rgb (p, &_tmp0_); #line 456 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_transform_pixel_rgb (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PIXEL_TRANSFORMATION, PixelTransformation), &_tmp0_, &_tmp1_); #line 456 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_analytic_pixel_to_hsv (&_tmp1_, &_tmp2_); #line 456 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *result = _tmp2_; #line 456 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 4836 "ColorTransformation.c" } static gboolean rgb_transformation_real_is_identity (PixelTransformation* base) { RGBTransformation * self; gboolean result = FALSE; gboolean _tmp0_; #line 461 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_RGB_TRANSFORMATION, RGBTransformation); #line 462 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->identity; #line 462 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 462 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 4854 "ColorTransformation.c" } static PixelTransformation* rgb_transformation_real_copy (PixelTransformation* base) { RGBTransformation * self; PixelTransformation* result = NULL; RGBTransformation* _result_ = NULL; RGBTransformation* _tmp0_; #line 465 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_RGB_TRANSFORMATION, RGBTransformation); #line 466 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = rgb_transformation_new (pixel_transformation_get_transformation_type (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PIXEL_TRANSFORMATION, PixelTransformation))); #line 466 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _result_ = _tmp0_; #line 4871 "ColorTransformation.c" { gint i = 0; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 4876 "ColorTransformation.c" { gboolean _tmp1_ = FALSE; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = TRUE; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 4883 "ColorTransformation.c" gint _tmp3_; RGBTransformation* _tmp4_; gfloat* _tmp5_; gint _tmp5__length1; gint _tmp6_; gfloat* _tmp7_; gint _tmp7__length1; gint _tmp8_; gfloat _tmp9_; gfloat _tmp10_; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp1_) { #line 4896 "ColorTransformation.c" gint _tmp2_; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = i; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp2_ + 1; #line 4902 "ColorTransformation.c" } #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = i; #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp3_ < RGB_TRANSFORMATION_MATRIX_SIZE)) { #line 468 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 4912 "ColorTransformation.c" } #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _result_; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp4_->matrix_entries; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5__length1 = _tmp4_->matrix_entries_length1; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = i; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = self->matrix_entries; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7__length1 = self->matrix_entries_length1; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = i; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp7_[_tmp8_]; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_[_tmp6_] = _tmp9_; #line 469 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp5_[_tmp6_]; #line 4934 "ColorTransformation.c" } } } #line 472 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_result_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation); #line 472 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 4942 "ColorTransformation.c" } static void rgb_transformation_class_init (RGBTransformationClass * klass) { #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_transformation_parent_class = g_type_class_peek_parent (klass); #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = rgb_transformation_finalize; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->get_composition_mode = (CompositionMode (*) (PixelTransformation *)) rgb_transformation_real_get_composition_mode; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->compose_with = (void (*) (PixelTransformation *, PixelTransformation*)) rgb_transformation_real_compose_with; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->transform_pixel_hsv = (void (*) (PixelTransformation *, HSVAnalyticPixel*, HSVAnalyticPixel*)) rgb_transformation_real_transform_pixel_hsv; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->transform_pixel_rgb = (void (*) (PixelTransformation *, RGBAnalyticPixel*, RGBAnalyticPixel*)) rgb_transformation_real_transform_pixel_rgb; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->is_identity = (gboolean (*) (PixelTransformation *)) rgb_transformation_real_is_identity; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->copy = (PixelTransformation* (*) (PixelTransformation *)) rgb_transformation_real_copy; #line 4965 "ColorTransformation.c" } static void rgb_transformation_instance_init (RGBTransformation * self) { #line 320 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->identity = TRUE; #line 4974 "ColorTransformation.c" } static void rgb_transformation_finalize (PixelTransformation * obj) { RGBTransformation * self; #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_RGB_TRANSFORMATION, RGBTransformation); #line 316 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->matrix_entries = (g_free (self->matrix_entries), NULL); #line 313 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (rgb_transformation_parent_class)->finalize (obj); #line 4988 "ColorTransformation.c" } GType rgb_transformation_get_type (void) { static volatile gsize rgb_transformation_type_id__volatile = 0; if (g_once_init_enter (&rgb_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (RGBTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rgb_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RGBTransformation), 0, (GInstanceInitFunc) rgb_transformation_instance_init, NULL }; GType rgb_transformation_type_id; rgb_transformation_type_id = g_type_register_static (TYPE_PIXEL_TRANSFORMATION, "RGBTransformation", &g_define_type_info, 0); g_once_init_leave (&rgb_transformation_type_id__volatile, rgb_transformation_type_id); } return rgb_transformation_type_id__volatile; } HSVTransformation* hsv_transformation_construct (GType object_type, PixelTransformationType type) { HSVTransformation* self = NULL; #line 480 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (HSVTransformation*) pixel_transformation_construct (object_type, type, PIXEL_FORMAT_HSV); #line 479 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 5015 "ColorTransformation.c" } static CompositionMode hsv_transformation_real_get_composition_mode (PixelTransformation* base) { HSVTransformation * self; CompositionMode result = 0; #line 483 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HSV_TRANSFORMATION, HSVTransformation); #line 484 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = COMPOSITION_MODE_HSV_LOOKUP; #line 484 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 5030 "ColorTransformation.c" } static void hsv_transformation_real_transform_pixel_rgb (PixelTransformation* base, RGBAnalyticPixel* p, RGBAnalyticPixel* result) { HSVTransformation * self; HSVAnalyticPixel _tmp0_ = {0}; HSVAnalyticPixel _tmp1_ = {0}; RGBAnalyticPixel _tmp2_ = {0}; #line 487 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HSV_TRANSFORMATION, HSVTransformation); #line 488 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_analytic_pixel_to_hsv (p, &_tmp0_); #line 488 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_transform_pixel_hsv (G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_PIXEL_TRANSFORMATION, PixelTransformation), &_tmp0_, &_tmp1_); #line 488 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_analytic_pixel_to_rgb (&_tmp1_, &_tmp2_); #line 488 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *result = _tmp2_; #line 488 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 5055 "ColorTransformation.c" } static void hsv_transformation_real_compose_with (PixelTransformation* base, PixelTransformation* other) { HSVTransformation * self; HSVTransformation* hsv_trans = NULL; HSVTransformation* _tmp0_; #line 491 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HSV_TRANSFORMATION, HSVTransformation); #line 492 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (pixel_transformation_get_composition_mode (other) != COMPOSITION_MODE_HSV_LOOKUP) { #line 493 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:493: HSVTransformation: compose_with(): wrong"); #line 5072 "ColorTransformation.c" } #line 496 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _pixel_transformation_ref0 (G_TYPE_CHECK_INSTANCE_CAST (other, TYPE_HSV_TRANSFORMATION, HSVTransformation)); #line 496 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_trans = _tmp0_; #line 5078 "ColorTransformation.c" { gint i = 0; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 5083 "ColorTransformation.c" { gboolean _tmp1_ = FALSE; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = TRUE; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 5090 "ColorTransformation.c" gint _tmp3_; gint idx = 0; gint _tmp4_; gfloat _tmp5_; gint _tmp6_; HSVTransformation* _tmp7_; gint _tmp8_; gfloat _tmp9_; gfloat _tmp10_; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp1_) { #line 5102 "ColorTransformation.c" gint _tmp2_; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = i; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp2_ + 1; #line 5108 "ColorTransformation.c" } #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = i; #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp3_ < 256)) { #line 500 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 5118 "ColorTransformation.c" } #line 501 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = i; #line 501 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = self->remap_table[_tmp4_]; #line 501 "/home/jens/Source/shotwell/src/ColorTransformation.vala" idx = (gint) (_tmp5_ * 255.0f); #line 502 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = i; #line 502 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = hsv_trans; #line 502 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = idx; #line 502 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp7_->remap_table[_tmp8_]; #line 502 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->remap_table[_tmp6_] = CLAMP (_tmp9_, 0.0f, 1.0f); #line 502 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = self->remap_table[_tmp6_]; #line 5138 "ColorTransformation.c" } } } #line 491 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (hsv_trans); #line 5144 "ColorTransformation.c" } static void hsv_transformation_real_transform_pixel_hsv (PixelTransformation* base, HSVAnalyticPixel* pixel, HSVAnalyticPixel* result) { HSVTransformation * self; gint remap_index = 0; HSVAnalyticPixel _tmp0_; gfloat _tmp1_; HSVAnalyticPixel _result_ = {0}; HSVAnalyticPixel _tmp2_; gfloat _tmp3_; HSVAnalyticPixel _tmp4_; gfloat _tmp5_; #line 506 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HSV_TRANSFORMATION, HSVTransformation); #line 507 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = *pixel; #line 507 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp0_.light_value; #line 507 "/home/jens/Source/shotwell/src/ColorTransformation.vala" remap_index = (gint) (_tmp1_ * 255.0f); #line 509 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = *pixel; #line 509 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _result_ = _tmp2_; #line 510 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = self->remap_table[remap_index]; #line 510 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _result_.light_value = _tmp3_; #line 512 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _result_; #line 512 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp4_.light_value; #line 512 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _result_.light_value = CLAMP (_tmp5_, 0.0f, 1.0f); #line 514 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *result = _result_; #line 514 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 5188 "ColorTransformation.c" } static void hsv_transformation_class_init (HSVTransformationClass * klass) { #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_transformation_parent_class = g_type_class_peek_parent (klass); #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = hsv_transformation_finalize; #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->get_composition_mode = (CompositionMode (*) (PixelTransformation *)) hsv_transformation_real_get_composition_mode; #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->transform_pixel_rgb = (void (*) (PixelTransformation *, RGBAnalyticPixel*, RGBAnalyticPixel*)) hsv_transformation_real_transform_pixel_rgb; #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->compose_with = (void (*) (PixelTransformation *, PixelTransformation*)) hsv_transformation_real_compose_with; #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->transform_pixel_hsv = (void (*) (PixelTransformation *, HSVAnalyticPixel*, HSVAnalyticPixel*)) hsv_transformation_real_transform_pixel_hsv; #line 5207 "ColorTransformation.c" } static void hsv_transformation_instance_init (HSVTransformation * self) { } static void hsv_transformation_finalize (PixelTransformation * obj) { HSVTransformation * self; #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HSV_TRANSFORMATION, HSVTransformation); #line 476 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (hsv_transformation_parent_class)->finalize (obj); #line 5225 "ColorTransformation.c" } GType hsv_transformation_get_type (void) { static volatile gsize hsv_transformation_type_id__volatile = 0; if (g_once_init_enter (&hsv_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (HSVTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) hsv_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HSVTransformation), 0, (GInstanceInitFunc) hsv_transformation_instance_init, NULL }; GType hsv_transformation_type_id; hsv_transformation_type_id = g_type_register_static (TYPE_PIXEL_TRANSFORMATION, "HSVTransformation", &g_define_type_info, G_TYPE_FLAG_ABSTRACT); g_once_init_leave (&hsv_transformation_type_id__volatile, hsv_transformation_type_id); } return hsv_transformation_type_id__volatile; } TintTransformation* tint_transformation_construct (GType object_type, gfloat client_param) { TintTransformation* self = NULL; gfloat _tmp0_; #line 527 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (TintTransformation*) rgb_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_TINT); #line 529 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->parameter = CLAMP (client_param, TINT_TRANSFORMATION_MIN_PARAMETER, TINT_TRANSFORMATION_MAX_PARAMETER); #line 531 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 531 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ != 0.0f) { #line 5257 "ColorTransformation.c" gfloat adjusted_param = 0.0F; gfloat _tmp1_; gfloat _tmp2_; gfloat* _tmp3_; gint _tmp3__length1; gfloat _tmp4_; gfloat _tmp5_; gfloat* _tmp6_; gint _tmp6__length1; gfloat _tmp7_; gfloat _tmp8_; gfloat* _tmp9_; gint _tmp9__length1; gfloat _tmp10_; gfloat _tmp11_; #line 532 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->parameter; #line 532 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = _tmp1_ / TINT_TRANSFORMATION_MAX_PARAMETER; #line 533 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = adjusted_param; #line 533 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = _tmp2_ * TINT_TRANSFORMATION_INTENSITY_FACTOR; #line 535 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 535 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 535 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = adjusted_param; #line 535 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_[11] -= _tmp4_ / 2; #line 535 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp3_[11]; #line 536 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 536 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 536 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = adjusted_param; #line 536 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_[7] += _tmp7_; #line 536 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _tmp6_[7]; #line 537 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 537 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 537 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = adjusted_param; #line 537 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_[3] -= _tmp10_ / 2; #line 537 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = _tmp9_[3]; #line 539 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->identity = FALSE; #line 5313 "ColorTransformation.c" } #line 526 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 5317 "ColorTransformation.c" } TintTransformation* tint_transformation_new (gfloat client_param) { #line 526 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return tint_transformation_construct (TYPE_TINT_TRANSFORMATION, client_param); #line 5326 "ColorTransformation.c" } gfloat tint_transformation_get_parameter (TintTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 544 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 544 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 544 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 5341 "ColorTransformation.c" } static void tint_transformation_class_init (TintTransformationClass * klass) { #line 519 "/home/jens/Source/shotwell/src/ColorTransformation.vala" tint_transformation_parent_class = g_type_class_peek_parent (klass); #line 519 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = tint_transformation_finalize; #line 519 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (TintTransformationPrivate)); #line 5354 "ColorTransformation.c" } static void tint_transformation_instance_init (TintTransformation * self) { #line 519 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = TINT_TRANSFORMATION_GET_PRIVATE (self); #line 5363 "ColorTransformation.c" } static void tint_transformation_finalize (PixelTransformation * obj) { TintTransformation * self; #line 519 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TINT_TRANSFORMATION, TintTransformation); #line 519 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (tint_transformation_parent_class)->finalize (obj); #line 5375 "ColorTransformation.c" } GType tint_transformation_get_type (void) { static volatile gsize tint_transformation_type_id__volatile = 0; if (g_once_init_enter (&tint_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (TintTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tint_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TintTransformation), 0, (GInstanceInitFunc) tint_transformation_instance_init, NULL }; GType tint_transformation_type_id; tint_transformation_type_id = g_type_register_static (TYPE_RGB_TRANSFORMATION, "TintTransformation", &g_define_type_info, 0); g_once_init_leave (&tint_transformation_type_id__volatile, tint_transformation_type_id); } return tint_transformation_type_id__volatile; } TemperatureTransformation* temperature_transformation_construct (GType object_type, gfloat client_parameter) { TemperatureTransformation* self = NULL; gfloat _tmp0_; #line 556 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (TemperatureTransformation*) rgb_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_TEMPERATURE); #line 558 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->parameter = CLAMP (client_parameter, TEMPERATURE_TRANSFORMATION_MIN_PARAMETER, TEMPERATURE_TRANSFORMATION_MAX_PARAMETER); #line 560 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 560 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ != 0.0f) { #line 5407 "ColorTransformation.c" gfloat adjusted_param = 0.0F; gfloat _tmp1_; gfloat _tmp2_; gfloat* _tmp3_; gint _tmp3__length1; gfloat _tmp4_; gfloat _tmp5_; gfloat* _tmp6_; gint _tmp6__length1; gfloat _tmp7_; gfloat _tmp8_; gfloat* _tmp9_; gint _tmp9__length1; gfloat _tmp10_; gfloat _tmp11_; #line 561 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->parameter; #line 561 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = _tmp1_ / TEMPERATURE_TRANSFORMATION_MAX_PARAMETER; #line 562 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = adjusted_param; #line 562 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = _tmp2_ * TEMPERATURE_TRANSFORMATION_INTENSITY_FACTOR; #line 564 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 564 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 564 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = adjusted_param; #line 564 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_[11] -= _tmp4_; #line 564 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp3_[11]; #line 565 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 565 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 565 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = adjusted_param; #line 565 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_[7] += _tmp7_ / 2; #line 565 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _tmp6_[7]; #line 566 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 566 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 566 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = adjusted_param; #line 566 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_[3] += _tmp10_ / 2; #line 566 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = _tmp9_[3]; #line 568 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->identity = FALSE; #line 5463 "ColorTransformation.c" } #line 555 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 5467 "ColorTransformation.c" } TemperatureTransformation* temperature_transformation_new (gfloat client_parameter) { #line 555 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return temperature_transformation_construct (TYPE_TEMPERATURE_TRANSFORMATION, client_parameter); #line 5476 "ColorTransformation.c" } gfloat temperature_transformation_get_parameter (TemperatureTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 573 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 573 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 573 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 5491 "ColorTransformation.c" } static void temperature_transformation_class_init (TemperatureTransformationClass * klass) { #line 548 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temperature_transformation_parent_class = g_type_class_peek_parent (klass); #line 548 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = temperature_transformation_finalize; #line 548 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (TemperatureTransformationPrivate)); #line 5504 "ColorTransformation.c" } static void temperature_transformation_instance_init (TemperatureTransformation * self) { #line 548 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = TEMPERATURE_TRANSFORMATION_GET_PRIVATE (self); #line 5513 "ColorTransformation.c" } static void temperature_transformation_finalize (PixelTransformation * obj) { TemperatureTransformation * self; #line 548 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_TEMPERATURE_TRANSFORMATION, TemperatureTransformation); #line 548 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (temperature_transformation_parent_class)->finalize (obj); #line 5525 "ColorTransformation.c" } GType temperature_transformation_get_type (void) { static volatile gsize temperature_transformation_type_id__volatile = 0; if (g_once_init_enter (&temperature_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (TemperatureTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) temperature_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TemperatureTransformation), 0, (GInstanceInitFunc) temperature_transformation_instance_init, NULL }; GType temperature_transformation_type_id; temperature_transformation_type_id = g_type_register_static (TYPE_RGB_TRANSFORMATION, "TemperatureTransformation", &g_define_type_info, 0); g_once_init_leave (&temperature_transformation_type_id__volatile, temperature_transformation_type_id); } return temperature_transformation_type_id__volatile; } SaturationTransformation* saturation_transformation_construct (GType object_type, gfloat client_parameter) { SaturationTransformation* self = NULL; gfloat _tmp0_; #line 584 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (SaturationTransformation*) rgb_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_SATURATION); #line 586 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->parameter = CLAMP (client_parameter, SATURATION_TRANSFORMATION_MIN_PARAMETER, SATURATION_TRANSFORMATION_MAX_PARAMETER); #line 588 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 588 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ != 0.0f) { #line 5557 "ColorTransformation.c" gfloat adjusted_param = 0.0F; gfloat _tmp1_; gfloat _tmp2_; gfloat one_third = 0.0F; gfloat* _tmp3_; gint _tmp3__length1; gfloat _tmp4_; gfloat _tmp5_; gfloat _tmp6_; gfloat _tmp7_; gfloat* _tmp8_; gint _tmp8__length1; gfloat _tmp9_; gfloat _tmp10_; gfloat _tmp11_; gfloat* _tmp12_; gint _tmp12__length1; gfloat _tmp13_; gfloat _tmp14_; gfloat _tmp15_; gfloat* _tmp16_; gint _tmp16__length1; gfloat _tmp17_; gfloat _tmp18_; gfloat _tmp19_; gfloat* _tmp20_; gint _tmp20__length1; gfloat _tmp21_; gfloat _tmp22_; gfloat _tmp23_; gfloat _tmp24_; gfloat* _tmp25_; gint _tmp25__length1; gfloat _tmp26_; gfloat _tmp27_; gfloat _tmp28_; gfloat* _tmp29_; gint _tmp29__length1; gfloat _tmp30_; gfloat _tmp31_; gfloat _tmp32_; gfloat* _tmp33_; gint _tmp33__length1; gfloat _tmp34_; gfloat _tmp35_; gfloat _tmp36_; gfloat* _tmp37_; gint _tmp37__length1; gfloat _tmp38_; gfloat _tmp39_; gfloat _tmp40_; gfloat _tmp41_; #line 589 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->parameter; #line 589 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = _tmp1_ / SATURATION_TRANSFORMATION_MAX_PARAMETER; #line 590 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = adjusted_param; #line 590 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = _tmp2_ + 1.0f; #line 592 "/home/jens/Source/shotwell/src/ColorTransformation.vala" one_third = 0.3333333f; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = adjusted_param; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = one_third; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = adjusted_param; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_[0] = ((1.0f - _tmp4_) * _tmp5_) + _tmp6_; #line 594 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _tmp3_[0]; #line 596 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 596 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 596 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = adjusted_param; #line 596 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = one_third; #line 596 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_[1] = (1.0f - _tmp9_) * _tmp10_; #line 596 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = _tmp8_[1]; #line 597 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 597 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 597 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = adjusted_param; #line 597 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = one_third; #line 597 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_[2] = (1.0f - _tmp13_) * _tmp14_; #line 597 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = _tmp12_[2]; #line 599 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 599 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 599 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = adjusted_param; #line 599 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = one_third; #line 599 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_[4] = (1.0f - _tmp17_) * _tmp18_; #line 599 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = _tmp16_[4]; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = adjusted_param; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = one_third; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = adjusted_param; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_[5] = ((1.0f - _tmp21_) * _tmp22_) + _tmp23_; #line 600 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = _tmp20_[5]; #line 602 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 602 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 602 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = adjusted_param; #line 602 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = one_third; #line 602 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_[6] = (1.0f - _tmp26_) * _tmp27_; #line 602 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = _tmp25_[6]; #line 604 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 604 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 604 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = adjusted_param; #line 604 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = one_third; #line 604 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_[8] = (1.0f - _tmp30_) * _tmp31_; #line 604 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = _tmp29_[8]; #line 605 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 605 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 605 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = adjusted_param; #line 605 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = one_third; #line 605 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_[9] = (1.0f - _tmp34_) * _tmp35_; #line 605 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = _tmp33_[9]; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = adjusted_param; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = one_third; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = adjusted_param; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_[10] = ((1.0f - _tmp38_) * _tmp39_) + _tmp40_; #line 606 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = _tmp37_[10]; #line 609 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->identity = FALSE; #line 5736 "ColorTransformation.c" } #line 583 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 5740 "ColorTransformation.c" } SaturationTransformation* saturation_transformation_new (gfloat client_parameter) { #line 583 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return saturation_transformation_construct (TYPE_SATURATION_TRANSFORMATION, client_parameter); #line 5749 "ColorTransformation.c" } gfloat saturation_transformation_get_parameter (SaturationTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 614 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 614 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 614 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 5764 "ColorTransformation.c" } static void saturation_transformation_class_init (SaturationTransformationClass * klass) { #line 577 "/home/jens/Source/shotwell/src/ColorTransformation.vala" saturation_transformation_parent_class = g_type_class_peek_parent (klass); #line 577 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = saturation_transformation_finalize; #line 577 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (SaturationTransformationPrivate)); #line 5777 "ColorTransformation.c" } static void saturation_transformation_instance_init (SaturationTransformation * self) { #line 577 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = SATURATION_TRANSFORMATION_GET_PRIVATE (self); #line 5786 "ColorTransformation.c" } static void saturation_transformation_finalize (PixelTransformation * obj) { SaturationTransformation * self; #line 577 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SATURATION_TRANSFORMATION, SaturationTransformation); #line 577 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (saturation_transformation_parent_class)->finalize (obj); #line 5798 "ColorTransformation.c" } GType saturation_transformation_get_type (void) { static volatile gsize saturation_transformation_type_id__volatile = 0; if (g_once_init_enter (&saturation_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (SaturationTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) saturation_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (SaturationTransformation), 0, (GInstanceInitFunc) saturation_transformation_instance_init, NULL }; GType saturation_transformation_type_id; saturation_transformation_type_id = g_type_register_static (TYPE_RGB_TRANSFORMATION, "SaturationTransformation", &g_define_type_info, 0); g_once_init_leave (&saturation_transformation_type_id__volatile, saturation_transformation_type_id); } return saturation_transformation_type_id__volatile; } ExposureTransformation* exposure_transformation_construct (GType object_type, gfloat client_parameter) { ExposureTransformation* self = NULL; gfloat _tmp0_; #line 625 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (ExposureTransformation*) rgb_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_EXPOSURE); #line 627 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->parameter = CLAMP (client_parameter, EXPOSURE_TRANSFORMATION_MIN_PARAMETER, EXPOSURE_TRANSFORMATION_MAX_PARAMETER); #line 629 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 629 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ != 0.0f) { #line 5830 "ColorTransformation.c" gfloat adjusted_param = 0.0F; gfloat _tmp1_; gfloat* _tmp2_; gint _tmp2__length1; gfloat _tmp3_; gfloat _tmp4_; gfloat* _tmp5_; gint _tmp5__length1; gfloat _tmp6_; gfloat _tmp7_; gfloat* _tmp8_; gint _tmp8__length1; gfloat _tmp9_; gfloat _tmp10_; #line 631 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->parameter; #line 631 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjusted_param = ((_tmp1_ + 16.0f) / 32.0f) + 0.5f; #line 633 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 633 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 633 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = adjusted_param; #line 633 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_[0] = _tmp3_; #line 633 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp2_[0]; #line 634 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 634 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 634 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = adjusted_param; #line 634 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_[5] = _tmp6_; #line 634 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _tmp5_[5]; #line 635 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 635 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 635 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = adjusted_param; #line 635 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_[10] = _tmp9_; #line 635 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp8_[10]; #line 637 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->identity = FALSE; #line 5881 "ColorTransformation.c" } #line 624 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 5885 "ColorTransformation.c" } ExposureTransformation* exposure_transformation_new (gfloat client_parameter) { #line 624 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return exposure_transformation_construct (TYPE_EXPOSURE_TRANSFORMATION, client_parameter); #line 5894 "ColorTransformation.c" } gfloat exposure_transformation_get_parameter (ExposureTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 642 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 642 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 642 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 5909 "ColorTransformation.c" } static void exposure_transformation_class_init (ExposureTransformationClass * klass) { #line 618 "/home/jens/Source/shotwell/src/ColorTransformation.vala" exposure_transformation_parent_class = g_type_class_peek_parent (klass); #line 618 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = exposure_transformation_finalize; #line 618 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (ExposureTransformationPrivate)); #line 5922 "ColorTransformation.c" } static void exposure_transformation_instance_init (ExposureTransformation * self) { #line 618 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = EXPOSURE_TRANSFORMATION_GET_PRIVATE (self); #line 5931 "ColorTransformation.c" } static void exposure_transformation_finalize (PixelTransformation * obj) { ExposureTransformation * self; #line 618 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_EXPOSURE_TRANSFORMATION, ExposureTransformation); #line 618 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (exposure_transformation_parent_class)->finalize (obj); #line 5943 "ColorTransformation.c" } GType exposure_transformation_get_type (void) { static volatile gsize exposure_transformation_type_id__volatile = 0; if (g_once_init_enter (&exposure_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (ExposureTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) exposure_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ExposureTransformation), 0, (GInstanceInitFunc) exposure_transformation_instance_init, NULL }; GType exposure_transformation_type_id; exposure_transformation_type_id = g_type_register_static (TYPE_RGB_TRANSFORMATION, "ExposureTransformation", &g_define_type_info, 0); g_once_init_leave (&exposure_transformation_type_id__volatile, exposure_transformation_type_id); } return exposure_transformation_type_id__volatile; } ContrastTransformation* contrast_transformation_construct (GType object_type, gfloat client_parameter) { ContrastTransformation* self = NULL; gfloat _tmp0_; #line 655 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (ContrastTransformation*) rgb_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_CONTRAST); #line 657 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->parameter = CLAMP (client_parameter, CONTRAST_TRANSFORMATION_MIN_PARAMETER, CONTRAST_TRANSFORMATION_MAX_PARAMETER); #line 659 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 659 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ != 0.0f) { #line 5975 "ColorTransformation.c" gfloat contrast_adjustment = 0.0F; gfloat _tmp1_; gfloat component_coefficient = 0.0F; gfloat _tmp2_; gfloat component_offset = 0.0F; gfloat _tmp3_; gfloat* _tmp4_; gint _tmp4__length1; gfloat _tmp5_; gfloat _tmp6_; gfloat* _tmp7_; gint _tmp7__length1; gfloat _tmp8_; gfloat _tmp9_; gfloat* _tmp10_; gint _tmp10__length1; gfloat _tmp11_; gfloat _tmp12_; gfloat* _tmp13_; gint _tmp13__length1; gfloat _tmp14_; gfloat _tmp15_; gfloat* _tmp16_; gint _tmp16__length1; gfloat _tmp17_; gfloat _tmp18_; gfloat* _tmp19_; gint _tmp19__length1; gfloat _tmp20_; gfloat _tmp21_; #line 661 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->parameter; #line 661 "/home/jens/Source/shotwell/src/ColorTransformation.vala" contrast_adjustment = (_tmp1_ / 16.0f) * CONTRAST_TRANSFORMATION_MAX_CONTRAST_ADJUSTMENT; #line 662 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = contrast_adjustment; #line 662 "/home/jens/Source/shotwell/src/ColorTransformation.vala" component_coefficient = 1.0f + _tmp2_; #line 663 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = contrast_adjustment; #line 663 "/home/jens/Source/shotwell/src/ColorTransformation.vala" component_offset = _tmp3_ / (-2.0f); #line 665 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 665 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 665 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = component_coefficient; #line 665 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_[0] = _tmp5_; #line 665 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _tmp4_[0]; #line 666 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 666 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 666 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = component_coefficient; #line 666 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_[5] = _tmp8_; #line 666 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp7_[5]; #line 667 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 667 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 667 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = component_coefficient; #line 667 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_[10] = _tmp11_; #line 667 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = _tmp10_[10]; #line 669 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 669 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 669 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = component_offset; #line 669 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_[3] = _tmp14_; #line 669 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = _tmp13_[3]; #line 670 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 670 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 670 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = component_offset; #line 670 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_[7] = _tmp17_; #line 670 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = _tmp16_[7]; #line 671 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries; #line 671 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19__length1 = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->matrix_entries_length1; #line 671 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = component_offset; #line 671 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_[11] = _tmp20_; #line 671 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = _tmp19_[11]; #line 673 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_RGB_TRANSFORMATION, RGBTransformation)->identity = FALSE; #line 6080 "ColorTransformation.c" } #line 654 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 6084 "ColorTransformation.c" } ContrastTransformation* contrast_transformation_new (gfloat client_parameter) { #line 654 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return contrast_transformation_construct (TYPE_CONTRAST_TRANSFORMATION, client_parameter); #line 6093 "ColorTransformation.c" } gfloat contrast_transformation_get_parameter (ContrastTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 678 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->parameter; #line 678 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 678 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 6108 "ColorTransformation.c" } static void contrast_transformation_class_init (ContrastTransformationClass * klass) { #line 646 "/home/jens/Source/shotwell/src/ColorTransformation.vala" contrast_transformation_parent_class = g_type_class_peek_parent (klass); #line 646 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = contrast_transformation_finalize; #line 646 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (ContrastTransformationPrivate)); #line 6121 "ColorTransformation.c" } static void contrast_transformation_instance_init (ContrastTransformation * self) { #line 646 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = CONTRAST_TRANSFORMATION_GET_PRIVATE (self); #line 6130 "ColorTransformation.c" } static void contrast_transformation_finalize (PixelTransformation * obj) { ContrastTransformation * self; #line 646 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CONTRAST_TRANSFORMATION, ContrastTransformation); #line 646 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (contrast_transformation_parent_class)->finalize (obj); #line 6142 "ColorTransformation.c" } GType contrast_transformation_get_type (void) { static volatile gsize contrast_transformation_type_id__volatile = 0; if (g_once_init_enter (&contrast_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (ContrastTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) contrast_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ContrastTransformation), 0, (GInstanceInitFunc) contrast_transformation_instance_init, NULL }; GType contrast_transformation_type_id; contrast_transformation_type_id = g_type_register_static (TYPE_RGB_TRANSFORMATION, "ContrastTransformation", &g_define_type_info, 0); g_once_init_leave (&contrast_transformation_type_id__volatile, contrast_transformation_type_id); } return contrast_transformation_type_id__volatile; } PixelTransformer* pixel_transformer_construct (GType object_type) { PixelTransformer* self = NULL; #line 688 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (PixelTransformer*) g_type_create_instance (object_type); #line 688 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 6168 "ColorTransformation.c" } PixelTransformer* pixel_transformer_new (void) { #line 688 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return pixel_transformer_construct (TYPE_PIXEL_TRANSFORMER); #line 6177 "ColorTransformation.c" } static gpointer _g_object_ref0 (gpointer self) { #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self ? g_object_ref (self) : NULL; #line 6186 "ColorTransformation.c" } PixelTransformer* pixel_transformer_copy (PixelTransformer* self) { PixelTransformer* result = NULL; PixelTransformer* clone = NULL; PixelTransformer* _tmp0_; #line 692 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformer_new (); #line 692 "/home/jens/Source/shotwell/src/ColorTransformation.vala" clone = _tmp0_; #line 6200 "ColorTransformation.c" { GeeArrayList* _transformation_list = NULL; GeeArrayList* _tmp1_; GeeArrayList* _tmp2_; gint _transformation_size = 0; GeeArrayList* _tmp3_; gint _tmp4_; gint _tmp5_; gint _transformation_index = 0; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->transformations; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _g_object_ref0 (_tmp1_); #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _transformation_list = _tmp2_; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _transformation_list; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp4_; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _transformation_size = _tmp5_; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _transformation_index = -1; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 6228 "ColorTransformation.c" gint _tmp6_; gint _tmp7_; gint _tmp8_; PixelTransformation* transformation = NULL; GeeArrayList* _tmp9_; gint _tmp10_; gpointer _tmp11_; PixelTransformer* _tmp12_; GeeArrayList* _tmp13_; PixelTransformation* _tmp14_; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _transformation_index; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _transformation_index = _tmp6_ + 1; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _transformation_index; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _transformation_size; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp7_ < _tmp8_)) { #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 6251 "ColorTransformation.c" } #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _transformation_list; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _transformation_index; #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp9_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp10_); #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" transformation = (PixelTransformation*) _tmp11_; #line 695 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = clone; #line 695 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = _tmp12_->priv->transformations; #line 695 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = transformation; #line 695 "/home/jens/Source/shotwell/src/ColorTransformation.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp13_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), _tmp14_); #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (transformation); #line 6271 "ColorTransformation.c" } #line 694 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_transformation_list); #line 6275 "ColorTransformation.c" } #line 697 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = clone; #line 697 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 6281 "ColorTransformation.c" } static void pixel_transformer_build_optimized_transformations (PixelTransformer* self) { GeeArrayList* _tmp0_; gint _tmp1_; gint _tmp2_; PixelTransformation** _tmp3_; PixelTransformation* pre_trans = NULL; #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->transformations; #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_; #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = g_new0 (PixelTransformation*, _tmp2_ + 1); #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = (_vala_array_free (self->optimized_transformations, self->optimized_transformations_length1, (GDestroyNotify) pixel_transformation_unref), NULL); #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = _tmp3_; #line 701 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations_length1 = _tmp2_; #line 703 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pre_trans = NULL; #line 704 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_slots_used = 0; #line 6311 "ColorTransformation.c" { gint i = 0; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 6316 "ColorTransformation.c" { gboolean _tmp4_ = FALSE; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = TRUE; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 6323 "ColorTransformation.c" gint _tmp6_; GeeArrayList* _tmp7_; gint _tmp8_; gint _tmp9_; PixelTransformation* trans = NULL; GeeArrayList* _tmp10_; gint _tmp11_; gpointer _tmp12_; PixelTransformation* _tmp13_; PixelTransformation* this_trans = NULL; PixelTransformation* _tmp14_; gboolean _tmp19_ = FALSE; gboolean _tmp20_ = FALSE; PixelTransformation* _tmp21_; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp4_) { #line 6340 "ColorTransformation.c" gint _tmp5_; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = i; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp5_ + 1; #line 6346 "ColorTransformation.c" } #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = FALSE; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = i; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = self->priv->transformations; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp8_; #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp6_ < _tmp9_)) { #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 6362 "ColorTransformation.c" } #line 706 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = self->priv->transformations; #line 706 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = i; #line 706 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp11_); #line 706 "/home/jens/Source/shotwell/src/ColorTransformation.vala" trans = (PixelTransformation*) _tmp12_; #line 708 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = trans; #line 708 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (pixel_transformation_is_identity (_tmp13_)) { #line 709 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (trans); #line 709 "/home/jens/Source/shotwell/src/ColorTransformation.vala" continue; #line 6380 "ColorTransformation.c" } #line 711 "/home/jens/Source/shotwell/src/ColorTransformation.vala" this_trans = NULL; #line 712 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = trans; #line 712 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (pixel_transformation_get_composition_mode (_tmp14_) == COMPOSITION_MODE_NONE) { #line 6388 "ColorTransformation.c" PixelTransformation* _tmp15_; PixelTransformation* _tmp16_; #line 713 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = trans; #line 713 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = _pixel_transformation_ref0 (_tmp15_); #line 713 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (this_trans); #line 713 "/home/jens/Source/shotwell/src/ColorTransformation.vala" this_trans = _tmp16_; #line 6399 "ColorTransformation.c" } else { PixelTransformation* _tmp17_; PixelTransformation* _tmp18_; #line 715 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = trans; #line 715 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = pixel_transformation_copy (_tmp17_); #line 715 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (this_trans); #line 715 "/home/jens/Source/shotwell/src/ColorTransformation.vala" this_trans = _tmp18_; #line 6411 "ColorTransformation.c" } #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = pre_trans; #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp21_ != NULL) { #line 6417 "ColorTransformation.c" PixelTransformation* _tmp22_; #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = this_trans; #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = pixel_transformation_get_composition_mode (_tmp22_) != COMPOSITION_MODE_NONE; #line 6423 "ColorTransformation.c" } else { #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = FALSE; #line 6427 "ColorTransformation.c" } #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp20_) { #line 6431 "ColorTransformation.c" PixelTransformation* _tmp23_; PixelTransformation* _tmp24_; #line 718 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = this_trans; #line 718 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = pre_trans; #line 718 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = pixel_transformation_get_composition_mode (_tmp23_) == pixel_transformation_get_composition_mode (_tmp24_); #line 6440 "ColorTransformation.c" } else { #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = FALSE; #line 6444 "ColorTransformation.c" } #line 717 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp19_) { #line 6448 "ColorTransformation.c" PixelTransformation* _tmp25_; PixelTransformation* _tmp26_; #line 719 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = pre_trans; #line 719 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = this_trans; #line 719 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_compose_with (_tmp25_, _tmp26_); #line 6457 "ColorTransformation.c" } else { PixelTransformation** _tmp27_; gint _tmp27__length1; gint _tmp28_; PixelTransformation* _tmp29_; PixelTransformation* _tmp30_; PixelTransformation* _tmp31_; PixelTransformation* _tmp32_; PixelTransformation* _tmp33_; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = self->optimized_transformations; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27__length1 = self->optimized_transformations_length1; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = self->optimized_slots_used; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_slots_used = _tmp28_ + 1; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = this_trans; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = _pixel_transformation_ref0 (_tmp29_); #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp27_[_tmp28_]); #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_[_tmp28_] = _tmp30_; #line 721 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = _tmp27_[_tmp28_]; #line 722 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = this_trans; #line 722 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = _pixel_transformation_ref0 (_tmp32_); #line 722 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (pre_trans); #line 722 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pre_trans = _tmp33_; #line 6493 "ColorTransformation.c" } #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (this_trans); #line 705 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (trans); #line 6499 "ColorTransformation.c" } } } #line 700 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (pre_trans); #line 6505 "ColorTransformation.c" } void pixel_transformer_attach_transformation (PixelTransformer* self, PixelTransformation* trans) { GeeArrayList* _tmp0_; #line 733 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->transformations; #line 733 "/home/jens/Source/shotwell/src/ColorTransformation.vala" gee_abstract_collection_add (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), trans); #line 734 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = (_vala_array_free (self->optimized_transformations, self->optimized_transformations_length1, (GDestroyNotify) pixel_transformation_unref), NULL); #line 734 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = NULL; #line 734 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations_length1 = 0; #line 6524 "ColorTransformation.c" } void pixel_transformer_detach_transformation (PixelTransformer* self, PixelTransformation* victim) { GeeArrayList* _tmp0_; #line 740 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->transformations; #line 740 "/home/jens/Source/shotwell/src/ColorTransformation.vala" gee_abstract_collection_remove (G_TYPE_CHECK_INSTANCE_CAST (_tmp0_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection), victim); #line 741 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = (_vala_array_free (self->optimized_transformations, self->optimized_transformations_length1, (GDestroyNotify) pixel_transformation_unref), NULL); #line 741 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = NULL; #line 741 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations_length1 = 0; #line 6543 "ColorTransformation.c" } void pixel_transformer_replace_transformation (PixelTransformer* self, PixelTransformation* old_trans, PixelTransformation* new_trans) { { gint i = 0; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 6556 "ColorTransformation.c" { gboolean _tmp0_ = FALSE; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = TRUE; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 6563 "ColorTransformation.c" gint _tmp2_; GeeArrayList* _tmp3_; gint _tmp4_; gint _tmp5_; GeeArrayList* _tmp6_; gint _tmp7_; gpointer _tmp8_; PixelTransformation* _tmp9_; gboolean _tmp10_; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp0_) { #line 6575 "ColorTransformation.c" gint _tmp1_; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = i; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp1_ + 1; #line 6581 "ColorTransformation.c" } #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = i; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = self->priv->transformations; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = gee_abstract_collection_get_size (G_TYPE_CHECK_INSTANCE_CAST (_tmp3_, GEE_TYPE_ABSTRACT_COLLECTION, GeeAbstractCollection)); #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = _tmp4_; #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp2_ < _tmp5_)) { #line 748 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 6597 "ColorTransformation.c" } #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = self->priv->transformations; #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = i; #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = gee_abstract_list_get (G_TYPE_CHECK_INSTANCE_CAST (_tmp6_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp7_); #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = (PixelTransformation*) _tmp8_; #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp9_ == old_trans; #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp9_); #line 749 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp10_) { #line 6613 "ColorTransformation.c" GeeArrayList* _tmp11_; gint _tmp12_; #line 750 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = self->priv->transformations; #line 750 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = i; #line 750 "/home/jens/Source/shotwell/src/ColorTransformation.vala" gee_abstract_list_set (G_TYPE_CHECK_INSTANCE_CAST (_tmp11_, GEE_TYPE_ABSTRACT_LIST, GeeAbstractList), _tmp12_, new_trans); #line 752 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = (_vala_array_free (self->optimized_transformations, self->optimized_transformations_length1, (GDestroyNotify) pixel_transformation_unref), NULL); #line 752 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = NULL; #line 752 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations_length1 = 0; #line 753 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 6630 "ColorTransformation.c" } } } } #line 756 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:756: %s", "PixelTransformer: replace_transformation( ): old_trans is not present " \ "in " "transformation collection"); #line 6637 "ColorTransformation.c" } void pixel_transformer_transform_pixbuf (PixelTransformer* self, GdkPixbuf* pixbuf, GCancellable* cancellable) { #line 761 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_transform_to_other_pixbuf (self, pixbuf, pixbuf, cancellable, -1); #line 6648 "ColorTransformation.c" } static Block1Data* block1_data_ref (Block1Data* _data1_) { #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&_data1_->_ref_count_); #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return _data1_; #line 6659 "ColorTransformation.c" } static void block1_data_unref (void * _userdata_) { Block1Data* _data1_; _data1_ = (Block1Data*) _userdata_; #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&_data1_->_ref_count_)) { #line 6670 "ColorTransformation.c" PixelTransformer* self; #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = _data1_->self; #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformer_unref0 (self); #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_slice_free (Block1Data, _data1_); #line 6678 "ColorTransformation.c" } } static Block2Data* block2_data_ref (Block2Data* _data2_) { #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&_data2_->_ref_count_); #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return _data2_; #line 6690 "ColorTransformation.c" } static void block2_data_unref (void * _userdata_) { Block2Data* _data2_; _data2_ = (Block2Data*) _userdata_; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) { #line 6701 "ColorTransformation.c" PixelTransformer* self; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = _data2_->_data1_->self; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block1_data_unref (_data2_->_data1_); #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_->_data1_ = NULL; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_slice_free (Block2Data, _data2_); #line 6711 "ColorTransformation.c" } } static void* _____lambda5_ (Block2Data* _data2_) { Block1Data* _data1_; PixelTransformer* self; void* result = NULL; guint cache_pixel_ticker = 0U; guint _tmp0_; gint _tmp1_; #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_ = _data2_->_data1_; #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = _data1_->self; #line 788 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _data2_->row; #line 788 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _data1_->dest_width; #line 788 "/home/jens/Source/shotwell/src/ColorTransformation.vala" cache_pixel_ticker = (_tmp0_ * _tmp1_) * 3; #line 6735 "ColorTransformation.c" { guint j = 0U; guint _tmp2_; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _data2_->row; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" j = _tmp2_; #line 6743 "ColorTransformation.c" { gboolean _tmp3_ = FALSE; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = TRUE; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 6750 "ColorTransformation.c" guint _tmp5_; guint _tmp6_; guint row_start_index = 0U; guint _tmp7_; gint _tmp8_; guint row_end_index = 0U; guint _tmp9_; gint _tmp10_; gint _tmp11_; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp3_) { #line 6762 "ColorTransformation.c" guint _tmp4_; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = j; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" j = _tmp4_ + 1; #line 6768 "ColorTransformation.c" } #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = FALSE; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = j; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _data2_->slice_height; #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp5_ < _tmp6_)) { #line 789 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 6780 "ColorTransformation.c" } #line 790 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = j; #line 790 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _data1_->dest_rowstride; #line 790 "/home/jens/Source/shotwell/src/ColorTransformation.vala" row_start_index = _tmp7_ * _tmp8_; #line 791 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = row_start_index; #line 791 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _data1_->dest_width; #line 791 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = _data1_->dest_num_channels; #line 791 "/home/jens/Source/shotwell/src/ColorTransformation.vala" row_end_index = _tmp9_ + (_tmp10_ * _tmp11_); #line 6796 "ColorTransformation.c" { guint i = 0U; guint _tmp12_; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = row_start_index; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp12_; #line 6804 "ColorTransformation.c" { gboolean _tmp13_ = FALSE; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = TRUE; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 6811 "ColorTransformation.c" guint _tmp16_; guint _tmp17_; RGBAnalyticPixel pixel = {0}; gfloat* _tmp18_; gint _tmp18__length1; guint _tmp19_; gfloat _tmp20_; gfloat* _tmp21_; gint _tmp21__length1; guint _tmp22_; gfloat _tmp23_; gfloat* _tmp24_; gint _tmp24__length1; guint _tmp25_; gfloat _tmp26_; guint _tmp27_; RGBAnalyticPixel _tmp28_; RGBAnalyticPixel _tmp29_ = {0}; guchar* _tmp30_; gint _tmp30__length1; guint _tmp31_; RGBAnalyticPixel _tmp32_; gfloat _tmp33_; guchar _tmp34_; guchar* _tmp35_; gint _tmp35__length1; guint _tmp36_; RGBAnalyticPixel _tmp37_; gfloat _tmp38_; guchar _tmp39_; guchar* _tmp40_; gint _tmp40__length1; guint _tmp41_; RGBAnalyticPixel _tmp42_; gfloat _tmp43_; guchar _tmp44_; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp13_) { #line 6850 "ColorTransformation.c" guint _tmp14_; gint _tmp15_; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = i; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = _data1_->dest_num_channels; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp14_ + _tmp15_; #line 6859 "ColorTransformation.c" } #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = FALSE; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = i; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = row_end_index; #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp16_ < _tmp17_)) { #line 792 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 6871 "ColorTransformation.c" } #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = _data1_->cache; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18__length1 = _data1_->cache_length1; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = cache_pixel_ticker; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = _tmp18_[_tmp19_]; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = _data1_->cache; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21__length1 = _data1_->cache_length1; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = cache_pixel_ticker; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = _tmp21_[_tmp22_ + 1]; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = _data1_->cache; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24__length1 = _data1_->cache_length1; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = cache_pixel_ticker; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = _tmp24_[_tmp25_ + 2]; #line 793 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_analytic_pixel_init_from_components (&pixel, _tmp20_, _tmp23_, _tmp26_); #line 798 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = cache_pixel_ticker; #line 798 "/home/jens/Source/shotwell/src/ColorTransformation.vala" cache_pixel_ticker = _tmp27_ + 3; #line 800 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = pixel; #line 800 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_apply_transformations (self, &_tmp28_, &_tmp29_); #line 800 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel = _tmp29_; #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = _data1_->dest_pixels; #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30__length1 = _data1_->dest_pixels_length1; #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = i; #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = pixel; #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = _tmp32_.red; #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_[_tmp31_] = (guchar) (_tmp33_ * 255.0f); #line 802 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = _tmp30_[_tmp31_]; #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = _data1_->dest_pixels; #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35__length1 = _data1_->dest_pixels_length1; #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = i; #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = pixel; #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = _tmp37_.green; #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_[_tmp36_ + 1] = (guchar) (_tmp38_ * 255.0f); #line 803 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = _tmp35_[_tmp36_ + 1]; #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = _data1_->dest_pixels; #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40__length1 = _data1_->dest_pixels_length1; #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = i; #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = pixel; #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = _tmp42_.blue; #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_[_tmp41_ + 2] = (guchar) (_tmp43_ * 255.0f); #line 804 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = _tmp40_[_tmp41_ + 2]; #line 6951 "ColorTransformation.c" } } } } } } #line 808 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = NULL; #line 808 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 6962 "ColorTransformation.c" } static gpointer ______lambda5__gthread_func (gpointer self) { gpointer result; result = _____lambda5_ (self); #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block2_data_unref (self); #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 6975 "ColorTransformation.c" } static gpointer _g_thread_ref0 (gpointer self) { #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self ? g_thread_ref (self) : NULL; #line 6984 "ColorTransformation.c" } void pixel_transformer_transform_from_fp (PixelTransformer* self, gfloat** fp_pixel_cache, int* fp_pixel_cache_length1, GdkPixbuf* dest) { Block1Data* _data1_; PixelTransformation** _tmp0_; gint _tmp0__length1; gint dest_height = 0; guint8* _tmp1_; gint jobs = 0; guint slice_length = 0U; gint _tmp2_; gint _tmp3_; GThread** threads = NULL; gint _tmp7_; GThread** _tmp8_; gint threads_length1; gint _threads_size_; GThread** _tmp22_; gint _tmp22__length1; #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_ = g_slice_new0 (Block1Data); #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->_ref_count_ = 1; #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->self = pixel_transformer_ref (self); #line 765 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->optimized_transformations; #line 765 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0__length1 = self->optimized_transformations_length1; #line 765 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ == NULL) { #line 766 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_build_optimized_transformations (self); #line 7024 "ColorTransformation.c" } #line 768 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->dest_width = gdk_pixbuf_get_width (dest); #line 769 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_height = gdk_pixbuf_get_height (dest); #line 770 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->dest_num_channels = gdk_pixbuf_get_n_channels (dest); #line 771 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->dest_rowstride = gdk_pixbuf_get_rowstride (dest); #line 772 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = gdk_pixbuf_get_pixels (dest); #line 772 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->dest_pixels = _tmp1_; #line 772 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->dest_pixels_length1 = -1; #line 772 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->_dest_pixels_size_ = _data1_->dest_pixels_length1; #line 774 "/home/jens/Source/shotwell/src/ColorTransformation.vala" jobs = ((gint) g_get_num_processors ()) - 1; #line 776 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = dest_height; #line 776 "/home/jens/Source/shotwell/src/ColorTransformation.vala" slice_length = (guint) _tmp2_; #line 777 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = jobs; #line 777 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp3_ > 0) { #line 7052 "ColorTransformation.c" gint _tmp4_; gint _tmp5_; gint _tmp6_; #line 778 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = dest_height; #line 778 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = jobs; #line 778 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = jobs; #line 778 "/home/jens/Source/shotwell/src/ColorTransformation.vala" slice_length = (guint) ((_tmp4_ + (_tmp5_ - 1)) / _tmp6_); #line 7064 "ColorTransformation.c" } #line 781 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = jobs; #line 781 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = g_new0 (GThread*, _tmp7_ + 1); #line 781 "/home/jens/Source/shotwell/src/ColorTransformation.vala" threads = _tmp8_; #line 781 "/home/jens/Source/shotwell/src/ColorTransformation.vala" threads_length1 = _tmp7_; #line 781 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _threads_size_ = threads_length1; #line 783 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->cache = *fp_pixel_cache; #line 783 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->cache_length1 = *fp_pixel_cache_length1; #line 783 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_->_cache_size_ = _data1_->cache_length1; #line 7082 "ColorTransformation.c" { gint job = 0; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" job = 0; #line 7087 "ColorTransformation.c" { gboolean _tmp9_ = FALSE; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = TRUE; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 7094 "ColorTransformation.c" Block2Data* _data2_; gint _tmp11_; gint _tmp12_; gint _tmp13_; guint _tmp14_; guint _tmp15_; guint _tmp16_; gint _tmp17_; GThread** _tmp18_; gint _tmp18__length1; gint _tmp19_; GThread* _tmp20_; GThread* _tmp21_; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_ = g_slice_new0 (Block2Data); #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_->_ref_count_ = 1; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_->_data1_ = block1_data_ref (_data1_); #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp9_) { #line 7116 "ColorTransformation.c" gint _tmp10_; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = job; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" job = _tmp10_ + 1; #line 7122 "ColorTransformation.c" } #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = FALSE; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = job; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = jobs; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp11_ < _tmp12_)) { #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block2_data_unref (_data2_); #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_ = NULL; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 7138 "ColorTransformation.c" } #line 785 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = job; #line 785 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = slice_length; #line 785 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_->row = _tmp13_ * _tmp14_; #line 786 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = _data2_->row; #line 786 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = slice_length; #line 786 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = dest_height; #line 786 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_->slice_height = CLAMP (_tmp15_ + _tmp16_, (guint) 0, (guint) _tmp17_); #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = threads; #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18__length1 = threads_length1; #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = job; #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = g_thread_new ("shotwell-worker", ______lambda5__gthread_func, block2_data_ref (_data2_)); #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_thread_unref0 (_tmp18_[_tmp19_]); #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_[_tmp19_] = _tmp20_; #line 787 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = _tmp18_[_tmp19_]; #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block2_data_unref (_data2_); #line 784 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data2_ = NULL; #line 7172 "ColorTransformation.c" } } } #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = threads; #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22__length1 = threads_length1; #line 7180 "ColorTransformation.c" { GThread** thread_collection = NULL; gint thread_collection_length1 = 0; gint _thread_collection_size_ = 0; gint thread_it = 0; #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" thread_collection = _tmp22_; #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" thread_collection_length1 = _tmp22__length1; #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" for (thread_it = 0; thread_it < _tmp22__length1; thread_it = thread_it + 1) { #line 7192 "ColorTransformation.c" GThread* _tmp23_; GThread* thread = NULL; #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = _g_thread_ref0 (thread_collection[thread_it]); #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" thread = _tmp23_; #line 7199 "ColorTransformation.c" { GThread* _tmp24_; GThread* _tmp25_; #line 813 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = thread; #line 813 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = _g_thread_ref0 (_tmp24_); #line 813 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_thread_join (_tmp25_); #line 812 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_thread_unref0 (thread); #line 7211 "ColorTransformation.c" } } } #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" threads = (_vala_array_free (threads, threads_length1, (GDestroyNotify) g_thread_unref), NULL); #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block1_data_unref (_data1_); #line 764 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data1_ = NULL; #line 7221 "ColorTransformation.c" } static Block3Data* block3_data_ref (Block3Data* _data3_) { #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&_data3_->_ref_count_); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return _data3_; #line 7232 "ColorTransformation.c" } static void block3_data_unref (void * _userdata_) { Block3Data* _data3_; _data3_ = (Block3Data*) _userdata_; #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) { #line 7243 "ColorTransformation.c" PixelTransformer* self; #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = _data3_->self; #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_data3_->cancellable); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformer_unref0 (self); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_slice_free (Block3Data, _data3_); #line 7253 "ColorTransformation.c" } } static Block4Data* block4_data_ref (Block4Data* _data4_) { #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&_data4_->_ref_count_); #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return _data4_; #line 7265 "ColorTransformation.c" } static void block4_data_unref (void * _userdata_) { Block4Data* _data4_; _data4_ = (Block4Data*) _userdata_; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&_data4_->_ref_count_)) { #line 7276 "ColorTransformation.c" PixelTransformer* self; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = _data4_->_data3_->self; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block3_data_unref (_data4_->_data3_); #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_->_data3_ = NULL; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_slice_free (Block4Data, _data4_); #line 7286 "ColorTransformation.c" } } static void* _____lambda4_ (Block4Data* _data4_) { Block3Data* _data3_; PixelTransformer* self; void* result = NULL; #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_ = _data4_->_data3_; #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = _data3_->self; #line 7301 "ColorTransformation.c" { guint j = 0U; guint _tmp0_; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _data4_->row; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" j = _tmp0_; #line 7309 "ColorTransformation.c" { gboolean _tmp1_ = FALSE; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = TRUE; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 7316 "ColorTransformation.c" guint _tmp3_; guint _tmp4_; guint _tmp5_; gint _tmp6_; gint _tmp7_; gint _tmp8_; guchar* _tmp9_; gint _tmp9__length1; guchar* _tmp10_; gint _tmp10__length1; gboolean _tmp11_ = FALSE; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp1_) { #line 7330 "ColorTransformation.c" guint _tmp2_; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = j; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" j = _tmp2_ + 1; #line 7336 "ColorTransformation.c" } #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = j; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _data4_->slice_height; #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp3_ < _tmp4_)) { #line 855 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 7348 "ColorTransformation.c" } #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = j; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _data3_->rowstride; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = _data3_->rowbytes; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _data3_->n_channels; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _data3_->source_pixels; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9__length1 = _data3_->source_pixels_length1; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _data3_->dest_pixels; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10__length1 = _data3_->dest_pixels_length1; #line 856 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_apply_transformation (self, _tmp5_, _tmp6_, _tmp7_, _tmp8_, _tmp9_, _tmp9__length1, _tmp10_, _tmp10__length1); #line 859 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_data3_->cancellable != NULL) { #line 859 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = g_cancellable_is_cancelled (_data3_->cancellable); #line 7372 "ColorTransformation.c" } else { #line 859 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = FALSE; #line 7376 "ColorTransformation.c" } #line 859 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp11_) { #line 860 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 7382 "ColorTransformation.c" } } } } #line 864 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = NULL; #line 864 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 7391 "ColorTransformation.c" } static gpointer ______lambda4__gthread_func (gpointer self) { gpointer result; result = _____lambda4_ (self); #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block4_data_unref (self); #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 7404 "ColorTransformation.c" } void pixel_transformer_transform_to_other_pixbuf (PixelTransformer* self, GdkPixbuf* source, GdkPixbuf* dest, GCancellable* cancellable, gint jobs) { Block3Data* _data3_; GCancellable* _tmp0_; gint _tmp1_; gint _tmp2_; gint _tmp3_; gint _tmp4_; gint _tmp5_; gint _tmp6_; gint _tmp7_; gint _tmp8_; gint _tmp9_; gint _tmp10_; gint _tmp11_; gint _tmp12_; PixelTransformation** _tmp13_; gint _tmp13__length1; gint width = 0; gint height = 0; gint _tmp14_; gint _tmp15_; guint8* _tmp16_; guint8* _tmp17_; guint slice_length = 0U; gint _tmp18_; GThread** threads = NULL; GThread** _tmp20_; gint threads_length1; gint _threads_size_; GThread** _tmp33_; gint _tmp33__length1; #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_ = g_slice_new0 (Block3Data); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->_ref_count_ = 1; #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->self = pixel_transformer_ref (self); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _g_object_ref0 (cancellable); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (_data3_->cancellable); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->cancellable = _tmp0_; #line 819 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = gdk_pixbuf_get_width (source); #line 819 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = _tmp1_; #line 819 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = gdk_pixbuf_get_width (dest); #line 819 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = _tmp3_; #line 819 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp2_ != _tmp4_) { #line 820 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:820: PixelTransformer: source and destination" \ " pixbufs must have the same width"); #line 7469 "ColorTransformation.c" } #line 822 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = gdk_pixbuf_get_height (source); #line 822 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _tmp5_; #line 822 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = gdk_pixbuf_get_height (dest); #line 822 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = _tmp7_; #line 822 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp6_ != _tmp8_) { #line 823 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:823: PixelTransformer: source and destination" \ " pixbufs must have the same height"); #line 7483 "ColorTransformation.c" } #line 825 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = gdk_pixbuf_get_n_channels (source); #line 825 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp9_; #line 825 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = gdk_pixbuf_get_n_channels (dest); #line 825 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = _tmp11_; #line 825 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp10_ != _tmp12_) { #line 826 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_error ("ColorTransformation.vala:826: %s", "PixelTransformer: source and destination pixbufs must have the same nu" \ "mber " "of channels"); #line 7497 "ColorTransformation.c" } #line 829 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = self->optimized_transformations; #line 829 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13__length1 = self->optimized_transformations_length1; #line 829 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp13_ == NULL) { #line 830 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_build_optimized_transformations (self); #line 7507 "ColorTransformation.c" } #line 832 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->n_channels = gdk_pixbuf_get_n_channels (source); #line 833 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->rowstride = gdk_pixbuf_get_rowstride (source); #line 834 "/home/jens/Source/shotwell/src/ColorTransformation.vala" width = gdk_pixbuf_get_width (source); #line 835 "/home/jens/Source/shotwell/src/ColorTransformation.vala" height = gdk_pixbuf_get_height (source); #line 836 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = _data3_->n_channels; #line 836 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = width; #line 836 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->rowbytes = _tmp14_ * _tmp15_; #line 837 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = gdk_pixbuf_get_pixels (source); #line 837 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->source_pixels = _tmp16_; #line 837 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->source_pixels_length1 = -1; #line 837 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->_source_pixels_size_ = _data3_->source_pixels_length1; #line 838 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = gdk_pixbuf_get_pixels (dest); #line 838 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->dest_pixels = _tmp17_; #line 838 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->dest_pixels_length1 = -1; #line 838 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_->_dest_pixels_size_ = _data3_->dest_pixels_length1; #line 839 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (jobs == -1) { #line 840 "/home/jens/Source/shotwell/src/ColorTransformation.vala" jobs = ((gint) g_get_num_processors ()) - 1; #line 7543 "ColorTransformation.c" } #line 843 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = height; #line 843 "/home/jens/Source/shotwell/src/ColorTransformation.vala" slice_length = (guint) _tmp18_; #line 844 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (jobs > 0) { #line 7551 "ColorTransformation.c" gint _tmp19_; #line 845 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = height; #line 845 "/home/jens/Source/shotwell/src/ColorTransformation.vala" slice_length = (guint) ((_tmp19_ + (jobs - 1)) / jobs); #line 7557 "ColorTransformation.c" } #line 848 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = g_new0 (GThread*, jobs + 1); #line 848 "/home/jens/Source/shotwell/src/ColorTransformation.vala" threads = _tmp20_; #line 848 "/home/jens/Source/shotwell/src/ColorTransformation.vala" threads_length1 = jobs; #line 848 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _threads_size_ = threads_length1; #line 7567 "ColorTransformation.c" { gint job = 0; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" job = 0; #line 7572 "ColorTransformation.c" { gboolean _tmp21_ = FALSE; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = TRUE; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 7579 "ColorTransformation.c" Block4Data* _data4_; gint _tmp23_; gint _tmp24_; guint _tmp25_; guint _tmp26_; guint _tmp27_; gint _tmp28_; GThread** _tmp29_; gint _tmp29__length1; gint _tmp30_; GThread* _tmp31_; GThread* _tmp32_; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_ = g_slice_new0 (Block4Data); #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_->_ref_count_ = 1; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_->_data3_ = block3_data_ref (_data3_); #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp21_) { #line 7600 "ColorTransformation.c" gint _tmp22_; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = job; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" job = _tmp22_ + 1; #line 7606 "ColorTransformation.c" } #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = FALSE; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = job; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp23_ < jobs)) { #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block4_data_unref (_data4_); #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_ = NULL; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 7620 "ColorTransformation.c" } #line 851 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = job; #line 851 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = slice_length; #line 851 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_->row = _tmp24_ * _tmp25_; #line 852 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = _data4_->row; #line 852 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = slice_length; #line 852 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = height; #line 852 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_->slice_height = CLAMP (_tmp26_ + _tmp27_, (guint) 0, (guint) _tmp28_); #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = threads; #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29__length1 = threads_length1; #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = job; #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = g_thread_new ("shotwell-worker", ______lambda4__gthread_func, block4_data_ref (_data4_)); #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_thread_unref0 (_tmp29_[_tmp30_]); #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_[_tmp30_] = _tmp31_; #line 854 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = _tmp29_[_tmp30_]; #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block4_data_unref (_data4_); #line 850 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data4_ = NULL; #line 7654 "ColorTransformation.c" } } } #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = threads; #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33__length1 = threads_length1; #line 7662 "ColorTransformation.c" { GThread** thread_collection = NULL; gint thread_collection_length1 = 0; gint _thread_collection_size_ = 0; gint thread_it = 0; #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" thread_collection = _tmp33_; #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" thread_collection_length1 = _tmp33__length1; #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" for (thread_it = 0; thread_it < _tmp33__length1; thread_it = thread_it + 1) { #line 7674 "ColorTransformation.c" GThread* _tmp34_; GThread* thread = NULL; #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = _g_thread_ref0 (thread_collection[thread_it]); #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" thread = _tmp34_; #line 7681 "ColorTransformation.c" { GThread* _tmp35_; GThread* _tmp36_; #line 869 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = thread; #line 869 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = _g_thread_ref0 (_tmp35_); #line 869 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_thread_join (_tmp36_); #line 868 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_thread_unref0 (thread); #line 7693 "ColorTransformation.c" } } } #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" threads = (_vala_array_free (threads, threads_length1, (GDestroyNotify) g_thread_unref), NULL); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" block3_data_unref (_data3_); #line 817 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _data3_ = NULL; #line 7703 "ColorTransformation.c" } static void value_pixel_transformer_init (GValue* value) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 7712 "ColorTransformation.c" } static void value_pixel_transformer_free_value (GValue* value) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (value->data[0].v_pointer) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_unref (value->data[0].v_pointer); #line 7723 "ColorTransformation.c" } } static void value_pixel_transformer_copy_value (const GValue* src_value, GValue* dest_value) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (src_value->data[0].v_pointer) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = pixel_transformer_ref (src_value->data[0].v_pointer); #line 7736 "ColorTransformation.c" } else { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = NULL; #line 7740 "ColorTransformation.c" } } static gpointer value_pixel_transformer_peek_pointer (const GValue* value) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 7750 "ColorTransformation.c" } static gchar* value_pixel_transformer_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (collect_values[0].v_pointer) { #line 7762 "ColorTransformation.c" PixelTransformer * object; object = collect_values[0].v_pointer; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (object->parent_instance.g_class == NULL) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 7769 "ColorTransformation.c" } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 7773 "ColorTransformation.c" } #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = pixel_transformer_ref (object); #line 7777 "ColorTransformation.c" } else { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 7781 "ColorTransformation.c" } #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 7785 "ColorTransformation.c" } static gchar* value_pixel_transformer_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { PixelTransformer ** object_p; object_p = collect_values[0].v_pointer; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!object_p) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); #line 7801 "ColorTransformation.c" } #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!value->data[0].v_pointer) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = NULL; #line 7807 "ColorTransformation.c" } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = value->data[0].v_pointer; #line 7811 "ColorTransformation.c" } else { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = pixel_transformer_ref (value->data[0].v_pointer); #line 7815 "ColorTransformation.c" } #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 7819 "ColorTransformation.c" } GParamSpec* param_spec_pixel_transformer (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { ParamSpecPixelTransformer* spec; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (g_type_is_a (object_type, TYPE_PIXEL_TRANSFORMER), NULL); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_PARAM_SPEC (spec)->value_type = object_type; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return G_PARAM_SPEC (spec); #line 7839 "ColorTransformation.c" } gpointer value_get_pixel_transformer (const GValue* value) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMER), NULL); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 7850 "ColorTransformation.c" } void value_set_pixel_transformer (GValue* value, gpointer v_object) { PixelTransformer * old; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMER)); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PIXEL_TRANSFORMER)); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_ref (value->data[0].v_pointer); #line 7873 "ColorTransformation.c" } else { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 7877 "ColorTransformation.c" } #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_unref (old); #line 7883 "ColorTransformation.c" } } void value_take_pixel_transformer (GValue* value, gpointer v_object) { PixelTransformer * old; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_PIXEL_TRANSFORMER)); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_PIXEL_TRANSFORMER)); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 7905 "ColorTransformation.c" } else { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 7909 "ColorTransformation.c" } #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_unref (old); #line 7915 "ColorTransformation.c" } } static void pixel_transformer_class_init (PixelTransformerClass * klass) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformer_parent_class = g_type_class_peek_parent (klass); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformerClass *) klass)->finalize = pixel_transformer_finalize; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (PixelTransformerPrivate)); #line 7929 "ColorTransformation.c" } static void pixel_transformer_instance_init (PixelTransformer * self) { GeeArrayList* _tmp0_; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = PIXEL_TRANSFORMER_GET_PRIVATE (self); #line 683 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = gee_array_list_new (TYPE_PIXEL_TRANSFORMATION, (GBoxedCopyFunc) pixel_transformation_ref, (GDestroyNotify) pixel_transformation_unref, NULL, NULL, NULL); #line 683 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->transformations = _tmp0_; #line 685 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = NULL; #line 685 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations_length1 = 0; #line 686 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_slots_used = 0; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->ref_count = 1; #line 7951 "ColorTransformation.c" } static void pixel_transformer_finalize (PixelTransformer * obj) { PixelTransformer * self; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_PIXEL_TRANSFORMER, PixelTransformer); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_signal_handlers_destroy (self); #line 683 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (self->priv->transformations); #line 685 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->optimized_transformations = (_vala_array_free (self->optimized_transformations, self->optimized_transformations_length1, (GDestroyNotify) pixel_transformation_unref), NULL); #line 7967 "ColorTransformation.c" } GType pixel_transformer_get_type (void) { static volatile gsize pixel_transformer_type_id__volatile = 0; if (g_once_init_enter (&pixel_transformer_type_id__volatile)) { static const GTypeValueTable g_define_type_value_table = { value_pixel_transformer_init, value_pixel_transformer_free_value, value_pixel_transformer_copy_value, value_pixel_transformer_peek_pointer, "p", value_pixel_transformer_collect_value, "p", value_pixel_transformer_lcopy_value }; static const GTypeInfo g_define_type_info = { sizeof (PixelTransformerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) pixel_transformer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (PixelTransformer), 0, (GInstanceInitFunc) pixel_transformer_instance_init, &g_define_type_value_table }; static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; GType pixel_transformer_type_id; pixel_transformer_type_id = g_type_register_fundamental (g_type_fundamental_next (), "PixelTransformer", &g_define_type_info, &g_define_type_fundamental_info, 0); g_once_init_leave (&pixel_transformer_type_id__volatile, pixel_transformer_type_id); } return pixel_transformer_type_id__volatile; } gpointer pixel_transformer_ref (gpointer instance) { PixelTransformer * self; self = instance; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&self->ref_count); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return instance; #line 7996 "ColorTransformation.c" } void pixel_transformer_unref (gpointer instance) { PixelTransformer * self; self = instance; #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&self->ref_count)) { #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMER_GET_CLASS (self)->finalize (self); #line 682 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_free_instance ((GTypeInstance *) self); #line 8011 "ColorTransformation.c" } } RGBHistogram* rgb_histogram_construct (GType object_type, GdkPixbuf* pixbuf) { RGBHistogram* self = NULL; gint sample_bytes = 0; gint pixel_bytes = 0; gint _tmp0_; gint row_length_bytes = 0; gint _tmp1_; gint _tmp2_; gint _tmp3_; guchar* pixel_data = NULL; guint8* _tmp4_; gint pixel_data_length1; gint _pixel_data_size_; #line 898 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (RGBHistogram*) g_type_create_instance (object_type); #line 899 "/home/jens/Source/shotwell/src/ColorTransformation.vala" sample_bytes = gdk_pixbuf_get_bits_per_sample (pixbuf) / 8; #line 900 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = sample_bytes; #line 900 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_bytes = _tmp0_ * gdk_pixbuf_get_n_channels (pixbuf); #line 901 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = pixel_bytes; #line 901 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = gdk_pixbuf_get_width (pixbuf); #line 901 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp2_; #line 901 "/home/jens/Source/shotwell/src/ColorTransformation.vala" row_length_bytes = _tmp1_ * _tmp3_; #line 903 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = gdk_pixbuf_get_pixels (pixbuf); #line 903 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_data = _tmp4_; #line 903 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_data_length1 = -1; #line 903 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_data_size_ = pixel_data_length1; #line 8056 "ColorTransformation.c" { gint y = 0; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" y = 0; #line 8061 "ColorTransformation.c" { gboolean _tmp5_ = FALSE; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = TRUE; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 8068 "ColorTransformation.c" gint _tmp7_; gint _tmp8_; gint _tmp9_; gint row_start_offset = 0; gint _tmp10_; gint _tmp11_; gint _tmp12_; gint r_offset = 0; gint _tmp13_; gint g_offset = 0; gint _tmp14_; gint _tmp15_; gint b_offset = 0; gint _tmp16_; gint _tmp17_; gint _tmp18_; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp5_) { #line 8087 "ColorTransformation.c" gint _tmp6_; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = y; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" y = _tmp6_ + 1; #line 8093 "ColorTransformation.c" } #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = FALSE; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = y; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = gdk_pixbuf_get_height (pixbuf); #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = _tmp8_; #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp7_ < _tmp9_)) { #line 905 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 8107 "ColorTransformation.c" } #line 906 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = y; #line 906 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = gdk_pixbuf_get_rowstride (pixbuf); #line 906 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = _tmp11_; #line 906 "/home/jens/Source/shotwell/src/ColorTransformation.vala" row_start_offset = _tmp10_ * _tmp12_; #line 908 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = row_start_offset; #line 908 "/home/jens/Source/shotwell/src/ColorTransformation.vala" r_offset = _tmp13_; #line 909 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = row_start_offset; #line 909 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = sample_bytes; #line 909 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_offset = _tmp14_ + _tmp15_; #line 910 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = row_start_offset; #line 910 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = sample_bytes; #line 910 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = sample_bytes; #line 910 "/home/jens/Source/shotwell/src/ColorTransformation.vala" b_offset = (_tmp16_ + _tmp17_) + _tmp18_; #line 912 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 8137 "ColorTransformation.c" gint _tmp19_; gint _tmp20_; gint _tmp21_; gint* _tmp22_; gint _tmp22__length1; guchar* _tmp23_; gint _tmp23__length1; gint _tmp24_; guchar _tmp25_; gint _tmp26_; gint* _tmp27_; gint _tmp27__length1; guchar* _tmp28_; gint _tmp28__length1; gint _tmp29_; guchar _tmp30_; gint _tmp31_; gint* _tmp32_; gint _tmp32__length1; guchar* _tmp33_; gint _tmp33__length1; gint _tmp34_; guchar _tmp35_; gint _tmp36_; gint _tmp37_; gint _tmp38_; gint _tmp39_; gint _tmp40_; gint _tmp41_; gint _tmp42_; #line 912 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = b_offset; #line 912 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = row_start_offset; #line 912 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = row_length_bytes; #line 912 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp19_ < (_tmp20_ + _tmp21_))) { #line 912 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 8178 "ColorTransformation.c" } #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = self->priv->red_counts; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22__length1 = self->priv->red_counts_length1; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = pixel_data; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23__length1 = pixel_data_length1; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = r_offset; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = _tmp23_[_tmp24_]; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_[_tmp25_] += 1; #line 913 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = _tmp22_[_tmp25_]; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = self->priv->green_counts; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27__length1 = self->priv->green_counts_length1; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = pixel_data; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28__length1 = pixel_data_length1; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = g_offset; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = _tmp28_[_tmp29_]; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_[_tmp30_] += 1; #line 914 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = _tmp27_[_tmp30_]; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = self->priv->blue_counts; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32__length1 = self->priv->blue_counts_length1; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = pixel_data; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33__length1 = pixel_data_length1; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = b_offset; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = _tmp33_[_tmp34_]; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_[_tmp35_] += 1; #line 915 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = _tmp32_[_tmp35_]; #line 917 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = r_offset; #line 917 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = pixel_bytes; #line 917 "/home/jens/Source/shotwell/src/ColorTransformation.vala" r_offset = _tmp37_ + _tmp38_; #line 918 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = g_offset; #line 918 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = pixel_bytes; #line 918 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_offset = _tmp39_ + _tmp40_; #line 919 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = b_offset; #line 919 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = pixel_bytes; #line 919 "/home/jens/Source/shotwell/src/ColorTransformation.vala" b_offset = _tmp41_ + _tmp42_; #line 8246 "ColorTransformation.c" } } } } #line 898 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 8253 "ColorTransformation.c" } RGBHistogram* rgb_histogram_new (GdkPixbuf* pixbuf) { #line 898 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return rgb_histogram_construct (TYPE_RGB_HISTOGRAM, pixbuf); #line 8262 "ColorTransformation.c" } static gint rgb_histogram_correct_snap_to_quantization (RGBHistogram* self, gint* buckets, int buckets_length1, gint i) { gint result = 0; gboolean _tmp0_ = FALSE; gint _tmp17_; #line 925 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (buckets_length1 == 256, "buckets.length == 256"); #line 926 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (i >= 0) { #line 926 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = i <= 255; #line 8281 "ColorTransformation.c" } else { #line 926 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 8285 "ColorTransformation.c" } #line 926 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (_tmp0_, "(i >= 0) && (i <= 255)"); #line 928 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (i == 0) { #line 8291 "ColorTransformation.c" gint _tmp1_; #line 929 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = buckets[i]; #line 929 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp1_ > 0) { #line 8297 "ColorTransformation.c" gint _tmp2_; #line 930 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = buckets[i + 1]; #line 930 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp2_ > 0) { #line 8303 "ColorTransformation.c" gint _tmp3_; gint _tmp4_; #line 931 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = buckets[i]; #line 931 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = buckets[i + 1]; #line 931 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp3_ > (2 * _tmp4_)) { #line 8312 "ColorTransformation.c" gint _tmp5_; #line 932 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = buckets[i + 1]; #line 932 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp5_; #line 932 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8320 "ColorTransformation.c" } } } } else { #line 933 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (i == 255) { #line 8327 "ColorTransformation.c" gint _tmp6_; #line 934 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = buckets[i]; #line 934 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp6_ > 0) { #line 8333 "ColorTransformation.c" gint _tmp7_; #line 935 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = buckets[i - 1]; #line 935 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp7_ > 0) { #line 8339 "ColorTransformation.c" gint _tmp8_; gint _tmp9_; #line 936 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = buckets[i]; #line 936 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = buckets[i - 1]; #line 936 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp8_ > (2 * _tmp9_)) { #line 8348 "ColorTransformation.c" gint _tmp10_; #line 937 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = buckets[i - 1]; #line 937 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp10_; #line 937 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8356 "ColorTransformation.c" } } } } else { gint _tmp11_; #line 939 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = buckets[i]; #line 939 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp11_ > 0) { #line 8366 "ColorTransformation.c" gint _tmp12_; gint _tmp13_; gint _tmp14_; #line 940 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = buckets[i]; #line 940 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = buckets[i - 1]; #line 940 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = buckets[i + 1]; #line 940 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp12_ > ((_tmp13_ + _tmp14_) / 2)) { #line 8378 "ColorTransformation.c" gint _tmp15_; gint _tmp16_; #line 941 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = buckets[i - 1]; #line 941 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = buckets[i + 1]; #line 941 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = (_tmp15_ + _tmp16_) / 2; #line 941 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8389 "ColorTransformation.c" } } } } #line 944 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = buckets[i]; #line 944 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp17_; #line 944 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8400 "ColorTransformation.c" } static gint rgb_histogram_correct_snap_from_quantization (RGBHistogram* self, gint* buckets, int buckets_length1, gint i) { gint result = 0; gboolean _tmp0_ = FALSE; gint _tmp8_; #line 948 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (buckets_length1 == 256, "buckets.length == 256"); #line 949 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (i >= 0) { #line 949 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = i <= 255; #line 8419 "ColorTransformation.c" } else { #line 949 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 8423 "ColorTransformation.c" } #line 949 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (_tmp0_, "(i >= 0) && (i <= 255)"); #line 951 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (i == 0) { #line 8429 "ColorTransformation.c" gint _tmp1_; #line 952 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = buckets[i]; #line 952 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp1_; #line 952 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8437 "ColorTransformation.c" } else { #line 953 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (i == 255) { #line 8441 "ColorTransformation.c" gint _tmp2_; #line 954 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = buckets[i]; #line 954 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp2_; #line 954 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8449 "ColorTransformation.c" } else { gint _tmp3_; #line 956 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = buckets[i]; #line 956 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp3_ == 0) { #line 8456 "ColorTransformation.c" gint _tmp4_; #line 957 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = buckets[i - 1]; #line 957 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp4_ > 0) { #line 8462 "ColorTransformation.c" gint _tmp5_; #line 958 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = buckets[i + 1]; #line 958 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp5_ > 0) { #line 8468 "ColorTransformation.c" gint _tmp6_; gint _tmp7_; #line 959 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = buckets[i - 1]; #line 959 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = buckets[i + 1]; #line 959 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = (_tmp6_ + _tmp7_) / 2; #line 959 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8479 "ColorTransformation.c" } } } } } #line 962 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = buckets[i]; #line 962 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp8_; #line 962 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 8491 "ColorTransformation.c" } static void rgb_histogram_smooth_extrema (RGBHistogram* self, gint** count_data, int* count_data_length1) { gint _tmp0_; gint _tmp1_; gint _tmp2_; gint _tmp3_; gint _tmp4_; gint _tmp5_; gint _tmp6_; gint _tmp7_; gint _tmp8_; gint _tmp9_; gint _tmp10_; gint _tmp11_; gint _tmp12_; gint _tmp13_; gint _tmp14_; gint _tmp15_; gint _tmp16_; gint _tmp17_; gint _tmp18_; gint _tmp19_; gint _tmp20_; gint _tmp21_; gint _tmp22_; gint _tmp23_; gint _tmp24_; gint _tmp25_; gint _tmp26_; gint _tmp27_; gint _tmp28_; gint _tmp29_; gint _tmp30_; gint _tmp31_; gint _tmp32_; gint _tmp33_; gint _tmp34_; gint _tmp35_; gint _tmp36_; gint _tmp37_; gint _tmp38_; gint _tmp39_; gint _tmp40_; gint _tmp41_; gint _tmp42_; gint _tmp43_; gint _tmp44_; gint _tmp45_; gint _tmp46_; gint _tmp47_; gint _tmp48_; gint _tmp49_; gint _tmp50_; gint _tmp51_; gint _tmp52_; gint _tmp53_; #line 966 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert ((*count_data_length1) == 256, "count_data.length == 256"); #line 972 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = (*count_data)[0]; #line 972 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = (*count_data)[1]; #line 972 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = (*count_data)[2]; #line 972 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[0] = (((5 * _tmp0_) + (3 * _tmp1_)) + (2 * _tmp2_)) / 10; #line 972 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = (*count_data)[0]; #line 974 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = (*count_data)[0]; #line 974 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = (*count_data)[1]; #line 974 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = (*count_data)[2]; #line 974 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = (*count_data)[3]; #line 974 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[1] = ((((3 * _tmp4_) + (5 * _tmp5_)) + (3 * _tmp6_)) + (2 * _tmp7_)) / 13; #line 974 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = (*count_data)[1]; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = (*count_data)[0]; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = (*count_data)[1]; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = (*count_data)[2]; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = (*count_data)[3]; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = (*count_data)[4]; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[2] = (((((2 * _tmp9_) + (3 * _tmp10_)) + (5 * _tmp11_)) + (3 * _tmp12_)) + (2 * _tmp13_)) / 15; #line 976 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = (*count_data)[2]; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = (*count_data)[1]; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = (*count_data)[2]; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = (*count_data)[3]; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = (*count_data)[4]; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = (*count_data)[5]; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[3] = (((((2 * _tmp15_) + (3 * _tmp16_)) + (5 * _tmp17_)) + (3 * _tmp18_)) + (2 * _tmp19_)) / 15; #line 978 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = (*count_data)[3]; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = (*count_data)[2]; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = (*count_data)[3]; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = (*count_data)[4]; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = (*count_data)[5]; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = (*count_data)[6]; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[4] = (((((2 * _tmp21_) + (3 * _tmp22_)) + (5 * _tmp23_)) + (3 * _tmp24_)) + (2 * _tmp25_)) / 15; #line 980 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = (*count_data)[4]; #line 983 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = (*count_data)[255]; #line 983 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = (*count_data)[254]; #line 983 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = (*count_data)[253]; #line 983 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[255] = (((5 * _tmp27_) + (3 * _tmp28_)) + (2 * _tmp29_)) / 10; #line 983 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = (*count_data)[255]; #line 985 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = (*count_data)[255]; #line 985 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = (*count_data)[254]; #line 985 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = (*count_data)[253]; #line 985 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = (*count_data)[252]; #line 985 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[254] = ((((3 * _tmp31_) + (5 * _tmp32_)) + (3 * _tmp33_)) + (2 * _tmp34_)) / 13; #line 985 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = (*count_data)[254]; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = (*count_data)[255]; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = (*count_data)[254]; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = (*count_data)[253]; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = (*count_data)[252]; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = (*count_data)[251]; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[253] = (((((2 * _tmp36_) + (3 * _tmp37_)) + (5 * _tmp38_)) + (3 * _tmp39_)) + (2 * _tmp40_)) / 15; #line 987 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = (*count_data)[253]; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = (*count_data)[254]; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = (*count_data)[253]; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = (*count_data)[252]; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp45_ = (*count_data)[251]; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_ = (*count_data)[250]; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[252] = (((((2 * _tmp42_) + (3 * _tmp43_)) + (5 * _tmp44_)) + (3 * _tmp45_)) + (2 * _tmp46_)) / 15; #line 989 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47_ = (*count_data)[252]; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48_ = (*count_data)[253]; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp49_ = (*count_data)[252]; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = (*count_data)[251]; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = (*count_data)[250]; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp52_ = (*count_data)[249]; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" (*count_data)[251] = (((((2 * _tmp48_) + (3 * _tmp49_)) + (5 * _tmp50_)) + (3 * _tmp51_)) + (2 * _tmp52_)) / 15; #line 991 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_ = (*count_data)[251]; #line 8684 "ColorTransformation.c" } static void rgb_histogram_prepare_qualitative_counts (RGBHistogram* self) { gboolean _tmp0_ = FALSE; gboolean _tmp1_ = FALSE; gint* _tmp2_; gint _tmp2__length1; gint* _tmp5_; gint* _tmp6_; gint* _tmp7_; gint* temp_red_counts = NULL; gint* _tmp8_; gint temp_red_counts_length1; gint _temp_red_counts_size_; gint* temp_green_counts = NULL; gint* _tmp9_; gint temp_green_counts_length1; gint _temp_green_counts_size_; gint* temp_blue_counts = NULL; gint* _tmp10_; gint temp_blue_counts_length1; gint _temp_blue_counts_size_; gint mean_qual_count = 0; gint _tmp81_; gint constrained_max_qual_count = 0; gint _tmp82_; #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = self->priv->qualitative_red_counts; #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2__length1 = self->priv->qualitative_red_counts_length1; #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp2_ != NULL) { #line 8720 "ColorTransformation.c" gint* _tmp3_; gint _tmp3__length1; #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = self->priv->qualitative_green_counts; #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3__length1 = self->priv->qualitative_green_counts_length1; #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp3_ != NULL; #line 8729 "ColorTransformation.c" } else { #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 8733 "ColorTransformation.c" } #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp1_) { #line 8737 "ColorTransformation.c" gint* _tmp4_; gint _tmp4__length1; #line 997 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = self->priv->qualitative_blue_counts; #line 997 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4__length1 = self->priv->qualitative_blue_counts_length1; #line 997 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _tmp4_ != NULL; #line 8746 "ColorTransformation.c" } else { #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 8750 "ColorTransformation.c" } #line 996 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_) { #line 998 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return; #line 8756 "ColorTransformation.c" } #line 1000 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = g_new0 (gint, 256); #line 1000 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_red_counts = (g_free (self->priv->qualitative_red_counts), NULL); #line 1000 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_red_counts = _tmp5_; #line 1000 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_red_counts_length1 = 256; #line 1000 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_qualitative_red_counts_size_ = self->priv->qualitative_red_counts_length1; #line 1001 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = g_new0 (gint, 256); #line 1001 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_green_counts = (g_free (self->priv->qualitative_green_counts), NULL); #line 1001 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_green_counts = _tmp6_; #line 1001 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_green_counts_length1 = 256; #line 1001 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_qualitative_green_counts_size_ = self->priv->qualitative_green_counts_length1; #line 1002 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = g_new0 (gint, 256); #line 1002 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_blue_counts = (g_free (self->priv->qualitative_blue_counts), NULL); #line 1002 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_blue_counts = _tmp7_; #line 1002 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_blue_counts_length1 = 256; #line 1002 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_qualitative_blue_counts_size_ = self->priv->qualitative_blue_counts_length1; #line 1004 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = g_new0 (gint, 256); #line 1004 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_red_counts = _tmp8_; #line 1004 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_red_counts_length1 = 256; #line 1004 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _temp_red_counts_size_ = temp_red_counts_length1; #line 1005 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = g_new0 (gint, 256); #line 1005 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_green_counts = _tmp9_; #line 1005 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_green_counts_length1 = 256; #line 1005 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _temp_green_counts_size_ = temp_green_counts_length1; #line 1006 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = g_new0 (gint, 256); #line 1006 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_blue_counts = _tmp10_; #line 1006 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_blue_counts_length1 = 256; #line 1006 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _temp_blue_counts_size_ = temp_blue_counts_length1; #line 8812 "ColorTransformation.c" { gint i = 0; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 8817 "ColorTransformation.c" { gboolean _tmp11_ = FALSE; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = TRUE; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 8824 "ColorTransformation.c" gint _tmp13_; gint* _tmp14_; gint _tmp14__length1; gint _tmp15_; gint* _tmp16_; gint _tmp16__length1; gint _tmp17_; gint _tmp18_; gint* _tmp19_; gint _tmp19__length1; gint _tmp20_; gint* _tmp21_; gint _tmp21__length1; gint _tmp22_; gint _tmp23_; gint* _tmp24_; gint _tmp24__length1; gint _tmp25_; gint* _tmp26_; gint _tmp26__length1; gint _tmp27_; gint _tmp28_; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp11_) { #line 8849 "ColorTransformation.c" gint _tmp12_; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = i; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp12_ + 1; #line 8855 "ColorTransformation.c" } #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = FALSE; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = i; #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp13_ < 256)) { #line 1012 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 8865 "ColorTransformation.c" } #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = self->priv->qualitative_red_counts; #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14__length1 = self->priv->qualitative_red_counts_length1; #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = i; #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = self->priv->red_counts; #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16__length1 = self->priv->red_counts_length1; #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = i; #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_[_tmp15_] = rgb_histogram_correct_snap_from_quantization (self, _tmp16_, _tmp16__length1, _tmp17_); #line 1013 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = _tmp14_[_tmp15_]; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = self->priv->qualitative_green_counts; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19__length1 = self->priv->qualitative_green_counts_length1; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = i; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = self->priv->green_counts; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21__length1 = self->priv->green_counts_length1; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = i; #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_[_tmp20_] = rgb_histogram_correct_snap_from_quantization (self, _tmp21_, _tmp21__length1, _tmp22_); #line 1015 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = _tmp19_[_tmp20_]; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = self->priv->qualitative_blue_counts; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24__length1 = self->priv->qualitative_blue_counts_length1; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = i; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = self->priv->blue_counts; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26__length1 = self->priv->blue_counts_length1; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = i; #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_[_tmp25_] = rgb_histogram_correct_snap_from_quantization (self, _tmp26_, _tmp26__length1, _tmp27_); #line 1017 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = _tmp24_[_tmp25_]; #line 8915 "ColorTransformation.c" } } } { gint i = 0; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 8923 "ColorTransformation.c" { gboolean _tmp29_ = FALSE; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = TRUE; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 8930 "ColorTransformation.c" gint _tmp31_; gint* _tmp32_; gint _tmp32__length1; gint _tmp33_; gint* _tmp34_; gint _tmp34__length1; gint _tmp35_; gint _tmp36_; gint _tmp37_; gint* _tmp38_; gint _tmp38__length1; gint _tmp39_; gint* _tmp40_; gint _tmp40__length1; gint _tmp41_; gint _tmp42_; gint _tmp43_; gint* _tmp44_; gint _tmp44__length1; gint _tmp45_; gint* _tmp46_; gint _tmp46__length1; gint _tmp47_; gint _tmp48_; gint _tmp49_; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp29_) { #line 8958 "ColorTransformation.c" gint _tmp30_; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = i; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp30_ + 1; #line 8964 "ColorTransformation.c" } #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = FALSE; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = i; #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp31_ < 256)) { #line 1021 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 8974 "ColorTransformation.c" } #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = temp_red_counts; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32__length1 = temp_red_counts_length1; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = i; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = self->priv->qualitative_red_counts; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34__length1 = self->priv->qualitative_red_counts_length1; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = i; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = _tmp34_[_tmp35_]; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_[_tmp33_] = _tmp36_; #line 1022 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = _tmp32_[_tmp33_]; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = temp_green_counts; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38__length1 = temp_green_counts_length1; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = i; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = self->priv->qualitative_green_counts; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40__length1 = self->priv->qualitative_green_counts_length1; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = i; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = _tmp40_[_tmp41_]; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_[_tmp39_] = _tmp42_; #line 1023 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = _tmp38_[_tmp39_]; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = temp_blue_counts; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44__length1 = temp_blue_counts_length1; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp45_ = i; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_ = self->priv->qualitative_blue_counts; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46__length1 = self->priv->qualitative_blue_counts_length1; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47_ = i; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48_ = _tmp46_[_tmp47_]; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_[_tmp45_] = _tmp48_; #line 1024 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp49_ = _tmp44_[_tmp45_]; #line 9030 "ColorTransformation.c" } } } { gint i = 0; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 9038 "ColorTransformation.c" { gboolean _tmp50_ = FALSE; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = TRUE; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9045 "ColorTransformation.c" gint _tmp52_; gint* _tmp53_; gint _tmp53__length1; gint _tmp54_; gint* _tmp55_; gint _tmp55__length1; gint _tmp56_; gint _tmp57_; gint* _tmp58_; gint _tmp58__length1; gint _tmp59_; gint* _tmp60_; gint _tmp60__length1; gint _tmp61_; gint _tmp62_; gint* _tmp63_; gint _tmp63__length1; gint _tmp64_; gint* _tmp65_; gint _tmp65__length1; gint _tmp66_; gint _tmp67_; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp50_) { #line 9070 "ColorTransformation.c" gint _tmp51_; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = i; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp51_ + 1; #line 9076 "ColorTransformation.c" } #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = FALSE; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp52_ = i; #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp52_ < 256)) { #line 1029 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9086 "ColorTransformation.c" } #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_ = self->priv->qualitative_red_counts; #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53__length1 = self->priv->qualitative_red_counts_length1; #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp54_ = i; #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp55_ = temp_red_counts; #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp55__length1 = temp_red_counts_length1; #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp56_ = i; #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_[_tmp54_] = rgb_histogram_correct_snap_to_quantization (self, _tmp55_, _tmp55__length1, _tmp56_); #line 1030 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp57_ = _tmp53_[_tmp54_]; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58_ = self->priv->qualitative_green_counts; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58__length1 = self->priv->qualitative_green_counts_length1; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp59_ = i; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp60_ = temp_green_counts; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp60__length1 = temp_green_counts_length1; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp61_ = i; #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58_[_tmp59_] = rgb_histogram_correct_snap_to_quantization (self, _tmp60_, _tmp60__length1, _tmp61_); #line 1032 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp62_ = _tmp58_[_tmp59_]; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp63_ = self->priv->qualitative_blue_counts; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp63__length1 = self->priv->qualitative_blue_counts_length1; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp64_ = i; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp65_ = temp_blue_counts; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp65__length1 = temp_blue_counts_length1; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp66_ = i; #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp63_[_tmp64_] = rgb_histogram_correct_snap_to_quantization (self, _tmp65_, _tmp65__length1, _tmp66_); #line 1034 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp67_ = _tmp63_[_tmp64_]; #line 9136 "ColorTransformation.c" } } } #line 1040 "/home/jens/Source/shotwell/src/ColorTransformation.vala" mean_qual_count = 0; #line 9142 "ColorTransformation.c" { gint i = 0; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 9147 "ColorTransformation.c" { gboolean _tmp68_ = FALSE; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp68_ = TRUE; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9154 "ColorTransformation.c" gint _tmp70_; gint _tmp71_; gint* _tmp72_; gint _tmp72__length1; gint _tmp73_; gint _tmp74_; gint* _tmp75_; gint _tmp75__length1; gint _tmp76_; gint _tmp77_; gint* _tmp78_; gint _tmp78__length1; gint _tmp79_; gint _tmp80_; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp68_) { #line 9171 "ColorTransformation.c" gint _tmp69_; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp69_ = i; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp69_ + 1; #line 9177 "ColorTransformation.c" } #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp68_ = FALSE; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp70_ = i; #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp70_ < 256)) { #line 1041 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9187 "ColorTransformation.c" } #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp71_ = mean_qual_count; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp72_ = self->priv->qualitative_red_counts; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp72__length1 = self->priv->qualitative_red_counts_length1; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp73_ = i; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp74_ = _tmp72_[_tmp73_]; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp75_ = self->priv->qualitative_green_counts; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp75__length1 = self->priv->qualitative_green_counts_length1; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp76_ = i; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp77_ = _tmp75_[_tmp76_]; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp78_ = self->priv->qualitative_blue_counts; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp78__length1 = self->priv->qualitative_blue_counts_length1; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp79_ = i; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp80_ = _tmp78_[_tmp79_]; #line 1042 "/home/jens/Source/shotwell/src/ColorTransformation.vala" mean_qual_count = _tmp71_ + ((_tmp74_ + _tmp77_) + _tmp80_); #line 9217 "ColorTransformation.c" } } } #line 1045 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp81_ = mean_qual_count; #line 1045 "/home/jens/Source/shotwell/src/ColorTransformation.vala" mean_qual_count = _tmp81_ / (256 * 3); #line 1046 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp82_ = mean_qual_count; #line 1046 "/home/jens/Source/shotwell/src/ColorTransformation.vala" constrained_max_qual_count = 8 * _tmp82_; #line 9229 "ColorTransformation.c" { gint i = 0; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 9234 "ColorTransformation.c" { gboolean _tmp83_ = FALSE; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp83_ = TRUE; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9241 "ColorTransformation.c" gint _tmp85_; gint* _tmp86_; gint _tmp86__length1; gint _tmp87_; gint _tmp88_; gint _tmp89_; gint* _tmp94_; gint _tmp94__length1; gint _tmp95_; gint _tmp96_; gint _tmp97_; gint* _tmp102_; gint _tmp102__length1; gint _tmp103_; gint _tmp104_; gint _tmp105_; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp83_) { #line 9260 "ColorTransformation.c" gint _tmp84_; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp84_ = i; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp84_ + 1; #line 9266 "ColorTransformation.c" } #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp83_ = FALSE; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp85_ = i; #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp85_ < 256)) { #line 1047 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9276 "ColorTransformation.c" } #line 1048 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp86_ = self->priv->qualitative_red_counts; #line 1048 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp86__length1 = self->priv->qualitative_red_counts_length1; #line 1048 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp87_ = i; #line 1048 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp88_ = _tmp86_[_tmp87_]; #line 1048 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp89_ = constrained_max_qual_count; #line 1048 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp88_ > _tmp89_) { #line 9290 "ColorTransformation.c" gint* _tmp90_; gint _tmp90__length1; gint _tmp91_; gint _tmp92_; gint _tmp93_; #line 1049 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90_ = self->priv->qualitative_red_counts; #line 1049 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90__length1 = self->priv->qualitative_red_counts_length1; #line 1049 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp91_ = i; #line 1049 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp92_ = constrained_max_qual_count; #line 1049 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90_[_tmp91_] = _tmp92_; #line 1049 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp93_ = _tmp90_[_tmp91_]; #line 9308 "ColorTransformation.c" } #line 1051 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp94_ = self->priv->qualitative_green_counts; #line 1051 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp94__length1 = self->priv->qualitative_green_counts_length1; #line 1051 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp95_ = i; #line 1051 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp96_ = _tmp94_[_tmp95_]; #line 1051 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp97_ = constrained_max_qual_count; #line 1051 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp96_ > _tmp97_) { #line 9322 "ColorTransformation.c" gint* _tmp98_; gint _tmp98__length1; gint _tmp99_; gint _tmp100_; gint _tmp101_; #line 1052 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98_ = self->priv->qualitative_green_counts; #line 1052 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98__length1 = self->priv->qualitative_green_counts_length1; #line 1052 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp99_ = i; #line 1052 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp100_ = constrained_max_qual_count; #line 1052 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98_[_tmp99_] = _tmp100_; #line 1052 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp101_ = _tmp98_[_tmp99_]; #line 9340 "ColorTransformation.c" } #line 1054 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp102_ = self->priv->qualitative_blue_counts; #line 1054 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp102__length1 = self->priv->qualitative_blue_counts_length1; #line 1054 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp103_ = i; #line 1054 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp104_ = _tmp102_[_tmp103_]; #line 1054 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp105_ = constrained_max_qual_count; #line 1054 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp104_ > _tmp105_) { #line 9354 "ColorTransformation.c" gint* _tmp106_; gint _tmp106__length1; gint _tmp107_; gint _tmp108_; gint _tmp109_; #line 1055 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106_ = self->priv->qualitative_blue_counts; #line 1055 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106__length1 = self->priv->qualitative_blue_counts_length1; #line 1055 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp107_ = i; #line 1055 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp108_ = constrained_max_qual_count; #line 1055 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106_[_tmp107_] = _tmp108_; #line 1055 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp109_ = _tmp106_[_tmp107_]; #line 9372 "ColorTransformation.c" } } } } #line 1058 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_smooth_extrema (self, &self->priv->qualitative_red_counts, &self->priv->qualitative_red_counts_length1); #line 1059 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_smooth_extrema (self, &self->priv->qualitative_green_counts, &self->priv->qualitative_green_counts_length1); #line 1060 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_smooth_extrema (self, &self->priv->qualitative_blue_counts, &self->priv->qualitative_blue_counts_length1); #line 995 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_blue_counts = (g_free (temp_blue_counts), NULL); #line 995 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_green_counts = (g_free (temp_green_counts), NULL); #line 995 "/home/jens/Source/shotwell/src/ColorTransformation.vala" temp_red_counts = (g_free (temp_red_counts), NULL); #line 9389 "ColorTransformation.c" } GdkPixbuf* rgb_histogram_get_graphic (RGBHistogram* self) { GdkPixbuf* result = NULL; GdkPixbuf* _tmp0_; GdkPixbuf* _tmp117_; GdkPixbuf* _tmp118_; #line 1064 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->graphic; #line 1064 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp0_ == NULL) { #line 9404 "ColorTransformation.c" gint max_count = 0; GdkPixbuf* _tmp25_; gint rowstride = 0; GdkPixbuf* _tmp26_; gint _tmp27_; gint _tmp28_; gint sample_bytes = 0; GdkPixbuf* _tmp29_; gint pixel_bytes = 0; gint _tmp30_; GdkPixbuf* _tmp31_; gdouble scale_bar = 0.0; gint _tmp32_; guchar* pixel_data = NULL; GdkPixbuf* _tmp33_; guint8* _tmp34_; gint pixel_data_length1; gint _pixel_data_size_; gint _tmp35_; #line 1065 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_prepare_qualitative_counts (self); #line 1066 "/home/jens/Source/shotwell/src/ColorTransformation.vala" max_count = 0; #line 9428 "ColorTransformation.c" { gint i = 0; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 9433 "ColorTransformation.c" { gboolean _tmp1_ = FALSE; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = TRUE; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9440 "ColorTransformation.c" gint _tmp3_; gint* _tmp4_; gint _tmp4__length1; gint _tmp5_; gint _tmp6_; gint _tmp7_; gint* _tmp11_; gint _tmp11__length1; gint _tmp12_; gint _tmp13_; gint _tmp14_; gint* _tmp18_; gint _tmp18__length1; gint _tmp19_; gint _tmp20_; gint _tmp21_; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp1_) { #line 9459 "ColorTransformation.c" gint _tmp2_; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = i; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp2_ + 1; #line 9465 "ColorTransformation.c" } #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = FALSE; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = i; #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp3_ < 256)) { #line 1067 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9475 "ColorTransformation.c" } #line 1068 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = self->priv->qualitative_red_counts; #line 1068 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4__length1 = self->priv->qualitative_red_counts_length1; #line 1068 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = i; #line 1068 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = _tmp4_[_tmp5_]; #line 1068 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = max_count; #line 1068 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp6_ > _tmp7_) { #line 9489 "ColorTransformation.c" gint* _tmp8_; gint _tmp8__length1; gint _tmp9_; gint _tmp10_; #line 1069 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = self->priv->qualitative_red_counts; #line 1069 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8__length1 = self->priv->qualitative_red_counts_length1; #line 1069 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = i; #line 1069 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = _tmp8_[_tmp9_]; #line 1069 "/home/jens/Source/shotwell/src/ColorTransformation.vala" max_count = _tmp10_; #line 9504 "ColorTransformation.c" } #line 1070 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = self->priv->qualitative_green_counts; #line 1070 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11__length1 = self->priv->qualitative_green_counts_length1; #line 1070 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = i; #line 1070 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = _tmp11_[_tmp12_]; #line 1070 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = max_count; #line 1070 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp13_ > _tmp14_) { #line 9518 "ColorTransformation.c" gint* _tmp15_; gint _tmp15__length1; gint _tmp16_; gint _tmp17_; #line 1071 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = self->priv->qualitative_green_counts; #line 1071 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15__length1 = self->priv->qualitative_green_counts_length1; #line 1071 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = i; #line 1071 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = _tmp15_[_tmp16_]; #line 1071 "/home/jens/Source/shotwell/src/ColorTransformation.vala" max_count = _tmp17_; #line 9533 "ColorTransformation.c" } #line 1072 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = self->priv->qualitative_blue_counts; #line 1072 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18__length1 = self->priv->qualitative_blue_counts_length1; #line 1072 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = i; #line 1072 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = _tmp18_[_tmp19_]; #line 1072 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = max_count; #line 1072 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp20_ > _tmp21_) { #line 9547 "ColorTransformation.c" gint* _tmp22_; gint _tmp22__length1; gint _tmp23_; gint _tmp24_; #line 1073 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = self->priv->qualitative_blue_counts; #line 1073 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22__length1 = self->priv->qualitative_blue_counts_length1; #line 1073 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = i; #line 1073 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = _tmp22_[_tmp23_]; #line 1073 "/home/jens/Source/shotwell/src/ColorTransformation.vala" max_count = _tmp24_; #line 9562 "ColorTransformation.c" } } } } #line 1076 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, RGB_HISTOGRAM_GRAPHIC_WIDTH, RGB_HISTOGRAM_GRAPHIC_HEIGHT); #line 1076 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (self->priv->graphic); #line 1076 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->graphic = _tmp25_; #line 1079 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = self->priv->graphic; #line 1079 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = gdk_pixbuf_get_rowstride (_tmp26_); #line 1079 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = _tmp27_; #line 1079 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rowstride = _tmp28_; #line 1080 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = self->priv->graphic; #line 1080 "/home/jens/Source/shotwell/src/ColorTransformation.vala" sample_bytes = gdk_pixbuf_get_bits_per_sample (_tmp29_) / 8; #line 1081 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = sample_bytes; #line 1081 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = self->priv->graphic; #line 1081 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_bytes = _tmp30_ * gdk_pixbuf_get_n_channels (_tmp31_); #line 1083 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = max_count; #line 1083 "/home/jens/Source/shotwell/src/ColorTransformation.vala" scale_bar = (0.98 * ((gdouble) RGB_HISTOGRAM_GRAPHIC_HEIGHT)) / ((gdouble) _tmp32_); #line 1086 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = self->priv->graphic; #line 1086 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = gdk_pixbuf_get_pixels (_tmp33_); #line 1086 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_data = _tmp34_; #line 1086 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_data_length1 = -1; #line 1086 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_data_size_ = pixel_data_length1; #line 1090 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = max_count; #line 1090 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp35_ == 0) { #line 9609 "ColorTransformation.c" GdkPixbuf* _tmp49_; GdkPixbuf* _tmp50_; { gint i = 0; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 9616 "ColorTransformation.c" { gboolean _tmp36_ = FALSE; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = TRUE; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9623 "ColorTransformation.c" gint _tmp38_; gint _tmp39_; GdkPixbuf* _tmp40_; gint _tmp41_; gint _tmp42_; GdkPixbuf* _tmp43_; gint _tmp44_; gint _tmp45_; guchar* _tmp46_; gint _tmp46__length1; gint _tmp47_; guchar _tmp48_; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp36_) { #line 9638 "ColorTransformation.c" gint _tmp37_; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = i; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp37_ + 1; #line 9644 "ColorTransformation.c" } #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = FALSE; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = i; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = pixel_bytes; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = self->priv->graphic; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = gdk_pixbuf_get_width (_tmp40_); #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = _tmp41_; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = self->priv->graphic; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = gdk_pixbuf_get_height (_tmp43_); #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp45_ = _tmp44_; #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp38_ < ((_tmp39_ * _tmp42_) * _tmp45_))) { #line 1091 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9668 "ColorTransformation.c" } #line 1092 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_ = pixel_data; #line 1092 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46__length1 = pixel_data_length1; #line 1092 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47_ = i; #line 1092 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_[_tmp47_] = RGB_HISTOGRAM_UNMARKED_BACKGROUND; #line 1092 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48_ = _tmp46_[_tmp47_]; #line 9680 "ColorTransformation.c" } } } #line 1094 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp49_ = self->priv->graphic; #line 1094 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = _g_object_ref0 (_tmp49_); #line 1094 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp50_; #line 1094 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 9692 "ColorTransformation.c" } { gint x = 0; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" x = 0; #line 9698 "ColorTransformation.c" { gboolean _tmp51_ = FALSE; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = TRUE; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9705 "ColorTransformation.c" gint _tmp53_; gint red_bar_height = 0; gint* _tmp54_; gint _tmp54__length1; gint _tmp55_; gint _tmp56_; gdouble _tmp57_; gint green_bar_height = 0; gint* _tmp58_; gint _tmp58__length1; gint _tmp59_; gint _tmp60_; gdouble _tmp61_; gint blue_bar_height = 0; gint* _tmp62_; gint _tmp62__length1; gint _tmp63_; gint _tmp64_; gdouble _tmp65_; gint max_bar_height = 0; gint _tmp66_; gint _tmp67_; gint _tmp68_; gint y = 0; gint pixel_index = 0; gint _tmp69_; gint _tmp70_; gint _tmp71_; gint _tmp72_; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp51_) { #line 9737 "ColorTransformation.c" gint _tmp52_; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp52_ = x; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" x = _tmp52_ + 1; #line 9743 "ColorTransformation.c" } #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = FALSE; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_ = x; #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp53_ < 256)) { #line 1097 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9753 "ColorTransformation.c" } #line 1098 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp54_ = self->priv->qualitative_red_counts; #line 1098 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp54__length1 = self->priv->qualitative_red_counts_length1; #line 1098 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp55_ = x; #line 1098 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp56_ = _tmp54_[_tmp55_]; #line 1098 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp57_ = scale_bar; #line 1098 "/home/jens/Source/shotwell/src/ColorTransformation.vala" red_bar_height = (gint) (((gdouble) _tmp56_) * _tmp57_); #line 1100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58_ = self->priv->qualitative_green_counts; #line 1100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp58__length1 = self->priv->qualitative_green_counts_length1; #line 1100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp59_ = x; #line 1100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp60_ = _tmp58_[_tmp59_]; #line 1100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp61_ = scale_bar; #line 1100 "/home/jens/Source/shotwell/src/ColorTransformation.vala" green_bar_height = (gint) (((gdouble) _tmp60_) * _tmp61_); #line 1102 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp62_ = self->priv->qualitative_blue_counts; #line 1102 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp62__length1 = self->priv->qualitative_blue_counts_length1; #line 1102 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp63_ = x; #line 1102 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp64_ = _tmp62_[_tmp63_]; #line 1102 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp65_ = scale_bar; #line 1102 "/home/jens/Source/shotwell/src/ColorTransformation.vala" blue_bar_height = (gint) (((gdouble) _tmp64_) * _tmp65_); #line 1105 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp66_ = red_bar_height; #line 1105 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp67_ = green_bar_height; #line 1105 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp68_ = blue_bar_height; #line 1105 "/home/jens/Source/shotwell/src/ColorTransformation.vala" max_bar_height = MAX (MAX (_tmp66_, _tmp67_), _tmp68_); #line 1108 "/home/jens/Source/shotwell/src/ColorTransformation.vala" y = RGB_HISTOGRAM_GRAPHIC_HEIGHT - 1; #line 1109 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp69_ = x; #line 1109 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp70_ = pixel_bytes; #line 1109 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp71_ = y; #line 1109 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp72_ = rowstride; #line 1109 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_index = (_tmp69_ * _tmp70_) + (_tmp71_ * _tmp72_); #line 9811 "ColorTransformation.c" { gboolean _tmp73_ = FALSE; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp73_ = TRUE; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9818 "ColorTransformation.c" gint _tmp75_; gint _tmp76_; guchar* _tmp77_; gint _tmp77__length1; gint _tmp78_; guchar _tmp79_; guchar* _tmp80_; gint _tmp80__length1; gint _tmp81_; guchar _tmp82_; guchar* _tmp83_; gint _tmp83__length1; gint _tmp84_; guchar _tmp85_; gint _tmp86_; gint _tmp87_; gint _tmp91_; gint _tmp92_; gint _tmp96_; gint _tmp97_; gint _tmp101_; gint _tmp102_; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp73_) { #line 9843 "ColorTransformation.c" gint _tmp74_; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp74_ = y; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" y = _tmp74_ - 1; #line 9849 "ColorTransformation.c" } #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp73_ = FALSE; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp75_ = y; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp76_ = max_bar_height; #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp75_ >= (RGB_HISTOGRAM_GRAPHIC_HEIGHT - _tmp76_))) { #line 1110 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 9861 "ColorTransformation.c" } #line 1111 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp77_ = pixel_data; #line 1111 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp77__length1 = pixel_data_length1; #line 1111 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp78_ = pixel_index; #line 1111 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp77_[_tmp78_] = RGB_HISTOGRAM_MARKED_BACKGROUND; #line 1111 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp79_ = _tmp77_[_tmp78_]; #line 1112 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp80_ = pixel_data; #line 1112 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp80__length1 = pixel_data_length1; #line 1112 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp81_ = pixel_index; #line 1112 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp80_[_tmp81_ + 1] = RGB_HISTOGRAM_MARKED_BACKGROUND; #line 1112 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp82_ = _tmp80_[_tmp81_ + 1]; #line 1113 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp83_ = pixel_data; #line 1113 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp83__length1 = pixel_data_length1; #line 1113 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp84_ = pixel_index; #line 1113 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp83_[_tmp84_ + 2] = RGB_HISTOGRAM_MARKED_BACKGROUND; #line 1113 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp85_ = _tmp83_[_tmp84_ + 2]; #line 1115 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp86_ = y; #line 1115 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp87_ = red_bar_height; #line 1115 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp86_ >= ((RGB_HISTOGRAM_GRAPHIC_HEIGHT - _tmp87_) - 1)) { #line 9899 "ColorTransformation.c" guchar* _tmp88_; gint _tmp88__length1; gint _tmp89_; guchar _tmp90_; #line 1116 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp88_ = pixel_data; #line 1116 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp88__length1 = pixel_data_length1; #line 1116 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp89_ = pixel_index; #line 1116 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp88_[_tmp89_] = RGB_HISTOGRAM_MARKED_FOREGROUND; #line 1116 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp90_ = _tmp88_[_tmp89_]; #line 9914 "ColorTransformation.c" } #line 1117 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp91_ = y; #line 1117 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp92_ = green_bar_height; #line 1117 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp91_ >= ((RGB_HISTOGRAM_GRAPHIC_HEIGHT - _tmp92_) - 1)) { #line 9922 "ColorTransformation.c" guchar* _tmp93_; gint _tmp93__length1; gint _tmp94_; guchar _tmp95_; #line 1118 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp93_ = pixel_data; #line 1118 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp93__length1 = pixel_data_length1; #line 1118 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp94_ = pixel_index; #line 1118 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp93_[_tmp94_ + 1] = RGB_HISTOGRAM_MARKED_FOREGROUND; #line 1118 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp95_ = _tmp93_[_tmp94_ + 1]; #line 9937 "ColorTransformation.c" } #line 1119 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp96_ = y; #line 1119 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp97_ = blue_bar_height; #line 1119 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp96_ >= ((RGB_HISTOGRAM_GRAPHIC_HEIGHT - _tmp97_) - 1)) { #line 9945 "ColorTransformation.c" guchar* _tmp98_; gint _tmp98__length1; gint _tmp99_; guchar _tmp100_; #line 1120 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98_ = pixel_data; #line 1120 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98__length1 = pixel_data_length1; #line 1120 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp99_ = pixel_index; #line 1120 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp98_[_tmp99_ + 2] = RGB_HISTOGRAM_MARKED_FOREGROUND; #line 1120 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp100_ = _tmp98_[_tmp99_ + 2]; #line 9960 "ColorTransformation.c" } #line 1122 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp101_ = pixel_index; #line 1122 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp102_ = rowstride; #line 1122 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_index = _tmp101_ - _tmp102_; #line 9968 "ColorTransformation.c" } } { gboolean _tmp103_ = FALSE; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp103_ = TRUE; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 9977 "ColorTransformation.c" gint _tmp105_; guchar* _tmp106_; gint _tmp106__length1; gint _tmp107_; guchar _tmp108_; guchar* _tmp109_; gint _tmp109__length1; gint _tmp110_; guchar _tmp111_; guchar* _tmp112_; gint _tmp112__length1; gint _tmp113_; guchar _tmp114_; gint _tmp115_; gint _tmp116_; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp103_) { #line 9995 "ColorTransformation.c" gint _tmp104_; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp104_ = y; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" y = _tmp104_ - 1; #line 10001 "ColorTransformation.c" } #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp103_ = FALSE; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp105_ = y; #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp105_ >= 0)) { #line 1125 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 10011 "ColorTransformation.c" } #line 1126 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106_ = pixel_data; #line 1126 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106__length1 = pixel_data_length1; #line 1126 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp107_ = pixel_index; #line 1126 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp106_[_tmp107_] = RGB_HISTOGRAM_UNMARKED_BACKGROUND; #line 1126 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp108_ = _tmp106_[_tmp107_]; #line 1127 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp109_ = pixel_data; #line 1127 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp109__length1 = pixel_data_length1; #line 1127 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp110_ = pixel_index; #line 1127 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp109_[_tmp110_ + 1] = RGB_HISTOGRAM_UNMARKED_BACKGROUND; #line 1127 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp111_ = _tmp109_[_tmp110_ + 1]; #line 1128 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp112_ = pixel_data; #line 1128 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp112__length1 = pixel_data_length1; #line 1128 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp113_ = pixel_index; #line 1128 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp112_[_tmp113_ + 2] = RGB_HISTOGRAM_UNMARKED_BACKGROUND; #line 1128 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp114_ = _tmp112_[_tmp113_ + 2]; #line 1130 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp115_ = pixel_index; #line 1130 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp116_ = rowstride; #line 1130 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_index = _tmp115_ - _tmp116_; #line 10049 "ColorTransformation.c" } } } } } } #line 1135 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp117_ = self->priv->graphic; #line 1135 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp118_ = _g_object_ref0 (_tmp117_); #line 1135 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp118_; #line 1135 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 10064 "ColorTransformation.c" } static void value_rgb_histogram_init (GValue* value) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10073 "ColorTransformation.c" } static void value_rgb_histogram_free_value (GValue* value) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (value->data[0].v_pointer) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_unref (value->data[0].v_pointer); #line 10084 "ColorTransformation.c" } } static void value_rgb_histogram_copy_value (const GValue* src_value, GValue* dest_value) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (src_value->data[0].v_pointer) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = rgb_histogram_ref (src_value->data[0].v_pointer); #line 10097 "ColorTransformation.c" } else { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = NULL; #line 10101 "ColorTransformation.c" } } static gpointer value_rgb_histogram_peek_pointer (const GValue* value) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 10111 "ColorTransformation.c" } static gchar* value_rgb_histogram_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (collect_values[0].v_pointer) { #line 10123 "ColorTransformation.c" RGBHistogram * object; object = collect_values[0].v_pointer; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (object->parent_instance.g_class == NULL) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 10130 "ColorTransformation.c" } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 10134 "ColorTransformation.c" } #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = rgb_histogram_ref (object); #line 10138 "ColorTransformation.c" } else { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10142 "ColorTransformation.c" } #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 10146 "ColorTransformation.c" } static gchar* value_rgb_histogram_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { RGBHistogram ** object_p; object_p = collect_values[0].v_pointer; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!object_p) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); #line 10162 "ColorTransformation.c" } #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!value->data[0].v_pointer) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = NULL; #line 10168 "ColorTransformation.c" } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = value->data[0].v_pointer; #line 10172 "ColorTransformation.c" } else { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = rgb_histogram_ref (value->data[0].v_pointer); #line 10176 "ColorTransformation.c" } #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 10180 "ColorTransformation.c" } GParamSpec* param_spec_rgb_histogram (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { ParamSpecRGBHistogram* spec; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (g_type_is_a (object_type, TYPE_RGB_HISTOGRAM), NULL); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_PARAM_SPEC (spec)->value_type = object_type; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return G_PARAM_SPEC (spec); #line 10200 "ColorTransformation.c" } gpointer value_get_rgb_histogram (const GValue* value) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_RGB_HISTOGRAM), NULL); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 10211 "ColorTransformation.c" } void value_set_rgb_histogram (GValue* value, gpointer v_object) { RGBHistogram * old; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_RGB_HISTOGRAM)); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_RGB_HISTOGRAM)); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_ref (value->data[0].v_pointer); #line 10234 "ColorTransformation.c" } else { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10238 "ColorTransformation.c" } #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_unref (old); #line 10244 "ColorTransformation.c" } } void value_take_rgb_histogram (GValue* value, gpointer v_object) { RGBHistogram * old; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_RGB_HISTOGRAM)); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_RGB_HISTOGRAM)); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 10266 "ColorTransformation.c" } else { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10270 "ColorTransformation.c" } #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_unref (old); #line 10276 "ColorTransformation.c" } } static void rgb_histogram_class_init (RGBHistogramClass * klass) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_histogram_parent_class = g_type_class_peek_parent (klass); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((RGBHistogramClass *) klass)->finalize = rgb_histogram_finalize; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (RGBHistogramPrivate)); #line 10290 "ColorTransformation.c" } static void rgb_histogram_instance_init (RGBHistogram * self) { gint* _tmp0_; gint* _tmp1_; gint* _tmp2_; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = RGB_HISTOGRAM_GET_PRIVATE (self); #line 890 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = g_new0 (gint, 256); #line 890 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->red_counts = _tmp0_; #line 890 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->red_counts_length1 = 256; #line 890 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_red_counts_size_ = self->priv->red_counts_length1; #line 891 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = g_new0 (gint, 256); #line 891 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->green_counts = _tmp1_; #line 891 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->green_counts_length1 = 256; #line 891 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_green_counts_size_ = self->priv->green_counts_length1; #line 892 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = g_new0 (gint, 256); #line 892 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->blue_counts = _tmp2_; #line 892 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->blue_counts_length1 = 256; #line 892 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_blue_counts_size_ = self->priv->blue_counts_length1; #line 893 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_red_counts = NULL; #line 893 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_red_counts_length1 = 0; #line 893 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_qualitative_red_counts_size_ = self->priv->qualitative_red_counts_length1; #line 894 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_green_counts = NULL; #line 894 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_green_counts_length1 = 0; #line 894 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_qualitative_green_counts_size_ = self->priv->qualitative_green_counts_length1; #line 895 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_blue_counts = NULL; #line 895 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_blue_counts_length1 = 0; #line 895 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_qualitative_blue_counts_size_ = self->priv->qualitative_blue_counts_length1; #line 896 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->graphic = NULL; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->ref_count = 1; #line 10348 "ColorTransformation.c" } static void rgb_histogram_finalize (RGBHistogram * obj) { RGBHistogram * self; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_RGB_HISTOGRAM, RGBHistogram); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_signal_handlers_destroy (self); #line 890 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->red_counts = (g_free (self->priv->red_counts), NULL); #line 891 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->green_counts = (g_free (self->priv->green_counts), NULL); #line 892 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->blue_counts = (g_free (self->priv->blue_counts), NULL); #line 893 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_red_counts = (g_free (self->priv->qualitative_red_counts), NULL); #line 894 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_green_counts = (g_free (self->priv->qualitative_green_counts), NULL); #line 895 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->qualitative_blue_counts = (g_free (self->priv->qualitative_blue_counts), NULL); #line 896 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_object_unref0 (self->priv->graphic); #line 10374 "ColorTransformation.c" } GType rgb_histogram_get_type (void) { static volatile gsize rgb_histogram_type_id__volatile = 0; if (g_once_init_enter (&rgb_histogram_type_id__volatile)) { static const GTypeValueTable g_define_type_value_table = { value_rgb_histogram_init, value_rgb_histogram_free_value, value_rgb_histogram_copy_value, value_rgb_histogram_peek_pointer, "p", value_rgb_histogram_collect_value, "p", value_rgb_histogram_lcopy_value }; static const GTypeInfo g_define_type_info = { sizeof (RGBHistogramClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) rgb_histogram_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (RGBHistogram), 0, (GInstanceInitFunc) rgb_histogram_instance_init, &g_define_type_value_table }; static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; GType rgb_histogram_type_id; rgb_histogram_type_id = g_type_register_fundamental (g_type_fundamental_next (), "RGBHistogram", &g_define_type_info, &g_define_type_fundamental_info, 0); g_once_init_leave (&rgb_histogram_type_id__volatile, rgb_histogram_type_id); } return rgb_histogram_type_id__volatile; } gpointer rgb_histogram_ref (gpointer instance) { RGBHistogram * self; self = instance; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&self->ref_count); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return instance; #line 10403 "ColorTransformation.c" } void rgb_histogram_unref (gpointer instance) { RGBHistogram * self; self = instance; #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&self->ref_count)) { #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" RGB_HISTOGRAM_GET_CLASS (self)->finalize (self); #line 882 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_free_instance ((GTypeInstance *) self); #line 10418 "ColorTransformation.c" } } IntensityHistogram* intensity_histogram_construct (GType object_type, GdkPixbuf* pixbuf) { IntensityHistogram* self = NULL; gint n_channels = 0; gint rowstride = 0; gint width = 0; gint height = 0; gint rowbytes = 0; gint _tmp0_; gint _tmp1_; guchar* pixels = NULL; guint8* _tmp2_; gint pixels_length1; gint _pixels_size_; gfloat pixel_count = 0.0F; gint _tmp32_; gint _tmp33_; gint _tmp34_; gint _tmp35_; gfloat accumulator = 0.0F; #line 1144 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (IntensityHistogram*) g_type_create_instance (object_type); #line 1145 "/home/jens/Source/shotwell/src/ColorTransformation.vala" n_channels = gdk_pixbuf_get_n_channels (pixbuf); #line 1146 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rowstride = gdk_pixbuf_get_rowstride (pixbuf); #line 1147 "/home/jens/Source/shotwell/src/ColorTransformation.vala" width = gdk_pixbuf_get_width (pixbuf); #line 1148 "/home/jens/Source/shotwell/src/ColorTransformation.vala" height = gdk_pixbuf_get_height (pixbuf); #line 1149 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = n_channels; #line 1149 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = width; #line 1149 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rowbytes = _tmp0_ * _tmp1_; #line 1150 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = gdk_pixbuf_get_pixels (pixbuf); #line 1150 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixels = _tmp2_; #line 1150 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixels_length1 = -1; #line 1150 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixels_size_ = pixels_length1; #line 10469 "ColorTransformation.c" { gint j = 0; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" j = 0; #line 10474 "ColorTransformation.c" { gboolean _tmp3_ = FALSE; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = TRUE; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 10481 "ColorTransformation.c" gint _tmp5_; gint _tmp6_; gint row_start_index = 0; gint _tmp7_; gint _tmp8_; gint row_end_index = 0; gint _tmp9_; gint _tmp10_; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp3_) { #line 10492 "ColorTransformation.c" gint _tmp4_; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = j; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" j = _tmp4_ + 1; #line 10498 "ColorTransformation.c" } #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = FALSE; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = j; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = height; #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp5_ < _tmp6_)) { #line 1151 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 10510 "ColorTransformation.c" } #line 1152 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = j; #line 1152 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = rowstride; #line 1152 "/home/jens/Source/shotwell/src/ColorTransformation.vala" row_start_index = _tmp7_ * _tmp8_; #line 1153 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = row_start_index; #line 1153 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = rowbytes; #line 1153 "/home/jens/Source/shotwell/src/ColorTransformation.vala" row_end_index = _tmp9_ + _tmp10_; #line 10524 "ColorTransformation.c" { gint i = 0; gint _tmp11_; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = row_start_index; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp11_; #line 10532 "ColorTransformation.c" { gboolean _tmp12_ = FALSE; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = TRUE; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 10539 "ColorTransformation.c" gint _tmp15_; gint _tmp16_; RGBAnalyticPixel pix_rgb = {0}; guchar* _tmp17_; gint _tmp17__length1; gint _tmp18_; guchar _tmp19_; guchar* _tmp20_; gint _tmp20__length1; gint _tmp21_; guchar _tmp22_; guchar* _tmp23_; gint _tmp23__length1; gint _tmp24_; guchar _tmp25_; HSVAnalyticPixel pix_hsi = {0}; RGBAnalyticPixel _tmp26_; gint quantized_light_value = 0; HSVAnalyticPixel _tmp27_; gfloat _tmp28_; gint* _tmp29_; gint _tmp29__length1; gint _tmp30_; gint _tmp31_; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp12_) { #line 10566 "ColorTransformation.c" gint _tmp13_; gint _tmp14_; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = i; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = n_channels; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp13_ + _tmp14_; #line 10575 "ColorTransformation.c" } #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = FALSE; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = i; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = row_end_index; #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp15_ < _tmp16_)) { #line 1154 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 10587 "ColorTransformation.c" } #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = pixels; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17__length1 = pixels_length1; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = i; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = _tmp17_[_tmp18_]; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = pixels; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20__length1 = pixels_length1; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = i; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = _tmp20_[_tmp21_ + 1]; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = pixels; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23__length1 = pixels_length1; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = i; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = _tmp23_[_tmp24_ + 2]; #line 1155 "/home/jens/Source/shotwell/src/ColorTransformation.vala" rgb_analytic_pixel_init_from_quantized_components (&pix_rgb, _tmp19_, _tmp22_, _tmp25_); #line 1157 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = pix_rgb; #line 1157 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hsv_analytic_pixel_init_from_rgb (&pix_hsi, &_tmp26_); #line 1158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = pix_hsi; #line 1158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = _tmp27_.light_value; #line 1158 "/home/jens/Source/shotwell/src/ColorTransformation.vala" quantized_light_value = (gint) (_tmp28_ * 255.0f); #line 1159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = self->priv->counts; #line 1159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29__length1 = self->priv->counts_length1; #line 1159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = quantized_light_value; #line 1159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_[_tmp30_] += 1; #line 1159 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = _tmp29_[_tmp30_]; #line 10635 "ColorTransformation.c" } } } } } } #line 1163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = gdk_pixbuf_get_width (pixbuf); #line 1163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = _tmp32_; #line 1163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = gdk_pixbuf_get_height (pixbuf); #line 1163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = _tmp34_; #line 1163 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_count = (gfloat) (_tmp33_ * _tmp35_); #line 1164 "/home/jens/Source/shotwell/src/ColorTransformation.vala" accumulator = 0.0f; #line 10654 "ColorTransformation.c" { gint i = 0; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 10659 "ColorTransformation.c" { gboolean _tmp36_ = FALSE; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = TRUE; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 10666 "ColorTransformation.c" gint _tmp38_; gfloat* _tmp39_; gint _tmp39__length1; gint _tmp40_; gint* _tmp41_; gint _tmp41__length1; gint _tmp42_; gint _tmp43_; gfloat _tmp44_; gfloat _tmp45_; gfloat _tmp46_; gfloat* _tmp47_; gint _tmp47__length1; gint _tmp48_; gfloat _tmp49_; gfloat* _tmp50_; gint _tmp50__length1; gint _tmp51_; gfloat _tmp52_; gfloat _tmp53_; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp36_) { #line 10689 "ColorTransformation.c" gint _tmp37_; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = i; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp37_ + 1; #line 10695 "ColorTransformation.c" } #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = FALSE; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = i; #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp38_ < 256)) { #line 1165 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 10705 "ColorTransformation.c" } #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = self->priv->probabilities; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39__length1 = self->priv->probabilities_length1; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = i; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = self->priv->counts; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41__length1 = self->priv->counts_length1; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = i; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = _tmp41_[_tmp42_]; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = pixel_count; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_[_tmp40_] = ((gfloat) _tmp43_) / _tmp44_; #line 1166 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp45_ = _tmp39_[_tmp40_]; #line 1167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_ = accumulator; #line 1167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47_ = self->priv->probabilities; #line 1167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47__length1 = self->priv->probabilities_length1; #line 1167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48_ = i; #line 1167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp49_ = _tmp47_[_tmp48_]; #line 1167 "/home/jens/Source/shotwell/src/ColorTransformation.vala" accumulator = _tmp46_ + _tmp49_; #line 1168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = self->priv->cumulative_probabilities; #line 1168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50__length1 = self->priv->cumulative_probabilities_length1; #line 1168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = i; #line 1168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp52_ = accumulator; #line 1168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_[_tmp51_] = _tmp52_; #line 1168 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_ = _tmp50_[_tmp51_]; #line 10751 "ColorTransformation.c" } } } #line 1144 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 10757 "ColorTransformation.c" } IntensityHistogram* intensity_histogram_new (GdkPixbuf* pixbuf) { #line 1144 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return intensity_histogram_construct (TYPE_INTENSITY_HISTOGRAM, pixbuf); #line 10766 "ColorTransformation.c" } gfloat intensity_histogram_get_cumulative_probability (IntensityHistogram* self, gint level) { gfloat result = 0.0F; gfloat* _tmp0_; gint _tmp0__length1; gfloat _tmp1_; #line 1174 "/home/jens/Source/shotwell/src/ColorTransformation.vala" level = CLAMP (level, 0, 255); #line 1175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->cumulative_probabilities; #line 1175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0__length1 = self->priv->cumulative_probabilities_length1; #line 1175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp0_[level]; #line 1175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp1_; #line 1175 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 10790 "ColorTransformation.c" } static void value_intensity_histogram_init (GValue* value) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10799 "ColorTransformation.c" } static void value_intensity_histogram_free_value (GValue* value) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (value->data[0].v_pointer) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_histogram_unref (value->data[0].v_pointer); #line 10810 "ColorTransformation.c" } } static void value_intensity_histogram_copy_value (const GValue* src_value, GValue* dest_value) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (src_value->data[0].v_pointer) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = intensity_histogram_ref (src_value->data[0].v_pointer); #line 10823 "ColorTransformation.c" } else { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = NULL; #line 10827 "ColorTransformation.c" } } static gpointer value_intensity_histogram_peek_pointer (const GValue* value) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 10837 "ColorTransformation.c" } static gchar* value_intensity_histogram_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (collect_values[0].v_pointer) { #line 10849 "ColorTransformation.c" IntensityHistogram * object; object = collect_values[0].v_pointer; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (object->parent_instance.g_class == NULL) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 10856 "ColorTransformation.c" } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 10860 "ColorTransformation.c" } #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = intensity_histogram_ref (object); #line 10864 "ColorTransformation.c" } else { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10868 "ColorTransformation.c" } #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 10872 "ColorTransformation.c" } static gchar* value_intensity_histogram_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { IntensityHistogram ** object_p; object_p = collect_values[0].v_pointer; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!object_p) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); #line 10888 "ColorTransformation.c" } #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!value->data[0].v_pointer) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = NULL; #line 10894 "ColorTransformation.c" } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = value->data[0].v_pointer; #line 10898 "ColorTransformation.c" } else { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = intensity_histogram_ref (value->data[0].v_pointer); #line 10902 "ColorTransformation.c" } #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 10906 "ColorTransformation.c" } GParamSpec* param_spec_intensity_histogram (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { ParamSpecIntensityHistogram* spec; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (g_type_is_a (object_type, TYPE_INTENSITY_HISTOGRAM), NULL); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_PARAM_SPEC (spec)->value_type = object_type; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return G_PARAM_SPEC (spec); #line 10926 "ColorTransformation.c" } gpointer value_get_intensity_histogram (const GValue* value) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_INTENSITY_HISTOGRAM), NULL); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 10937 "ColorTransformation.c" } void value_set_intensity_histogram (GValue* value, gpointer v_object) { IntensityHistogram * old; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_INTENSITY_HISTOGRAM)); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_INTENSITY_HISTOGRAM)); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_histogram_ref (value->data[0].v_pointer); #line 10960 "ColorTransformation.c" } else { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10964 "ColorTransformation.c" } #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_histogram_unref (old); #line 10970 "ColorTransformation.c" } } void value_take_intensity_histogram (GValue* value, gpointer v_object) { IntensityHistogram * old; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_INTENSITY_HISTOGRAM)); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_INTENSITY_HISTOGRAM)); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 10992 "ColorTransformation.c" } else { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 10996 "ColorTransformation.c" } #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_histogram_unref (old); #line 11002 "ColorTransformation.c" } } static void intensity_histogram_class_init (IntensityHistogramClass * klass) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_histogram_parent_class = g_type_class_peek_parent (klass); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((IntensityHistogramClass *) klass)->finalize = intensity_histogram_finalize; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (IntensityHistogramPrivate)); #line 11016 "ColorTransformation.c" } static void intensity_histogram_instance_init (IntensityHistogram * self) { gint* _tmp0_; gfloat* _tmp1_; gfloat* _tmp2_; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = INTENSITY_HISTOGRAM_GET_PRIVATE (self); #line 1140 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = g_new0 (gint, 256); #line 1140 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->counts = _tmp0_; #line 1140 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->counts_length1 = 256; #line 1140 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_counts_size_ = self->priv->counts_length1; #line 1141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = g_new0 (gfloat, 256); #line 1141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->probabilities = _tmp1_; #line 1141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->probabilities_length1 = 256; #line 1141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_probabilities_size_ = self->priv->probabilities_length1; #line 1142 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = g_new0 (gfloat, 256); #line 1142 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->cumulative_probabilities = _tmp2_; #line 1142 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->cumulative_probabilities_length1 = 256; #line 1142 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->_cumulative_probabilities_size_ = self->priv->cumulative_probabilities_length1; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->ref_count = 1; #line 11054 "ColorTransformation.c" } static void intensity_histogram_finalize (IntensityHistogram * obj) { IntensityHistogram * self; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_INTENSITY_HISTOGRAM, IntensityHistogram); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_signal_handlers_destroy (self); #line 1140 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->counts = (g_free (self->priv->counts), NULL); #line 1141 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->probabilities = (g_free (self->priv->probabilities), NULL); #line 1142 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->cumulative_probabilities = (g_free (self->priv->cumulative_probabilities), NULL); #line 11072 "ColorTransformation.c" } GType intensity_histogram_get_type (void) { static volatile gsize intensity_histogram_type_id__volatile = 0; if (g_once_init_enter (&intensity_histogram_type_id__volatile)) { static const GTypeValueTable g_define_type_value_table = { value_intensity_histogram_init, value_intensity_histogram_free_value, value_intensity_histogram_copy_value, value_intensity_histogram_peek_pointer, "p", value_intensity_histogram_collect_value, "p", value_intensity_histogram_lcopy_value }; static const GTypeInfo g_define_type_info = { sizeof (IntensityHistogramClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) intensity_histogram_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IntensityHistogram), 0, (GInstanceInitFunc) intensity_histogram_instance_init, &g_define_type_value_table }; static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; GType intensity_histogram_type_id; intensity_histogram_type_id = g_type_register_fundamental (g_type_fundamental_next (), "IntensityHistogram", &g_define_type_info, &g_define_type_fundamental_info, 0); g_once_init_leave (&intensity_histogram_type_id__volatile, intensity_histogram_type_id); } return intensity_histogram_type_id__volatile; } gpointer intensity_histogram_ref (gpointer instance) { IntensityHistogram * self; self = instance; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&self->ref_count); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return instance; #line 11101 "ColorTransformation.c" } void intensity_histogram_unref (gpointer instance) { IntensityHistogram * self; self = instance; #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&self->ref_count)) { #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" INTENSITY_HISTOGRAM_GET_CLASS (self)->finalize (self); #line 1139 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_free_instance ((GTypeInstance *) self); #line 11116 "ColorTransformation.c" } } ExpansionTransformation* expansion_transformation_construct (GType object_type, IntensityHistogram* histogram) { ExpansionTransformation* self = NULL; gfloat LOW_KINK_MASS = 0.0F; gfloat HIGH_KINK_MASS = 0.0F; #line 1187 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (ExpansionTransformation*) hsv_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION); #line 1189 "/home/jens/Source/shotwell/src/ColorTransformation.vala" LOW_KINK_MASS = EXPANSION_TRANSFORMATION_LOW_DISCARD_MASS; #line 1190 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->low_kink = 0; #line 1191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 11136 "ColorTransformation.c" gint _tmp0_; gfloat _tmp1_; gint _tmp2_; #line 1191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->low_kink; #line 1191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = LOW_KINK_MASS; #line 1191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(intensity_histogram_get_cumulative_probability (histogram, _tmp0_) < _tmp1_)) { #line 1191 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 11148 "ColorTransformation.c" } #line 1192 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = self->priv->low_kink; #line 1192 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->low_kink = _tmp2_ + 1; #line 11154 "ColorTransformation.c" } #line 1194 "/home/jens/Source/shotwell/src/ColorTransformation.vala" HIGH_KINK_MASS = 1.0f - EXPANSION_TRANSFORMATION_HIGH_DISCARD_MASS; #line 1195 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->high_kink = 255; #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 11162 "ColorTransformation.c" gboolean _tmp3_ = FALSE; gint _tmp4_; gfloat _tmp5_; gint _tmp7_; #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = self->priv->high_kink; #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = HIGH_KINK_MASS; #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (intensity_histogram_get_cumulative_probability (histogram, _tmp4_) > _tmp5_) { #line 11173 "ColorTransformation.c" gint _tmp6_; #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = self->priv->high_kink; #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp6_ > 0; #line 11179 "ColorTransformation.c" } else { #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = FALSE; #line 11183 "ColorTransformation.c" } #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp3_) { #line 1196 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 11189 "ColorTransformation.c" } #line 1197 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = self->priv->high_kink; #line 1197 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->high_kink = _tmp7_ - 1; #line 11195 "ColorTransformation.c" } #line 1199 "/home/jens/Source/shotwell/src/ColorTransformation.vala" expansion_transformation_build_remap_table (self); #line 1186 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 11201 "ColorTransformation.c" } ExpansionTransformation* expansion_transformation_new (IntensityHistogram* histogram) { #line 1186 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return expansion_transformation_construct (TYPE_EXPANSION_TRANSFORMATION, histogram); #line 11210 "ColorTransformation.c" } ExpansionTransformation* expansion_transformation_construct_from_extrema (GType object_type, gint black_point, gint white_point) { ExpansionTransformation* self = NULL; #line 1203 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (ExpansionTransformation*) hsv_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION); #line 1205 "/home/jens/Source/shotwell/src/ColorTransformation.vala" white_point = CLAMP (white_point, 0, 255); #line 1206 "/home/jens/Source/shotwell/src/ColorTransformation.vala" black_point = CLAMP (black_point, 0, 255); #line 1208 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (black_point == white_point) { #line 1209 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (black_point == 0) { #line 1210 "/home/jens/Source/shotwell/src/ColorTransformation.vala" white_point = 1; #line 11232 "ColorTransformation.c" } else { #line 1211 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (white_point == 255) { #line 1212 "/home/jens/Source/shotwell/src/ColorTransformation.vala" black_point = 254; #line 11238 "ColorTransformation.c" } else { #line 1214 "/home/jens/Source/shotwell/src/ColorTransformation.vala" black_point = white_point - 1; #line 11242 "ColorTransformation.c" } } } #line 1217 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->low_kink = black_point; #line 1218 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->high_kink = white_point; #line 1220 "/home/jens/Source/shotwell/src/ColorTransformation.vala" expansion_transformation_build_remap_table (self); #line 1202 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 11254 "ColorTransformation.c" } ExpansionTransformation* expansion_transformation_new_from_extrema (gint black_point, gint white_point) { #line 1202 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return expansion_transformation_construct_from_extrema (TYPE_EXPANSION_TRANSFORMATION, black_point, white_point); #line 11264 "ColorTransformation.c" } static gchar* string_chug (const gchar* self) { gchar* result = NULL; gchar* _result_ = NULL; gchar* _tmp0_; const gchar* _tmp1_; #line 1241 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp0_ = g_strdup (self); #line 1241 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _result_ = _tmp0_; #line 1242 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp1_ = _result_; #line 1242 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" g_strchug (_tmp1_); #line 1243 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" result = _result_; #line 1243 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" return result; #line 11287 "ColorTransformation.c" } static gchar* string_chomp (const gchar* self) { gchar* result = NULL; gchar* _result_ = NULL; gchar* _tmp0_; const gchar* _tmp1_; #line 1233 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp0_ = g_strdup (self); #line 1233 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _result_ = _tmp0_; #line 1234 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" _tmp1_ = _result_; #line 1234 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" g_strchomp (_tmp1_); #line 1235 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" result = _result_; #line 1235 "/usr/share/vala-0.40/vapi/glib-2.0.vapi" return result; #line 11310 "ColorTransformation.c" } ExpansionTransformation* expansion_transformation_construct_from_string (GType object_type, const gchar* encoded_transformation) { ExpansionTransformation* self = NULL; gchar* _tmp0_; gchar* _tmp1_; gchar* _tmp2_; gchar* _tmp3_; gint num_captured = 0; #line 1224 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (ExpansionTransformation*) hsv_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_TONE_EXPANSION); #line 1226 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_strcanon (encoded_transformation, "0123456789. ", ' '); #line 1227 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = string_chug (encoded_transformation); #line 1227 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = _tmp0_; #line 1227 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_free0 (_tmp1_); #line 1228 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = string_chomp (encoded_transformation); #line 1228 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = _tmp2_; #line 1228 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _g_free0 (_tmp3_); #line 1230 "/home/jens/Source/shotwell/src/ColorTransformation.vala" num_captured = sscanf (encoded_transformation, "%d %d", &self->priv->low_kink, &self->priv->high_kink); #line 1233 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _vala_assert (num_captured == 2, "num_captured == 2"); #line 1235 "/home/jens/Source/shotwell/src/ColorTransformation.vala" expansion_transformation_build_remap_table (self); #line 1223 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 11348 "ColorTransformation.c" } ExpansionTransformation* expansion_transformation_new_from_string (const gchar* encoded_transformation) { #line 1223 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return expansion_transformation_construct_from_string (TYPE_EXPANSION_TRANSFORMATION, encoded_transformation); #line 11357 "ColorTransformation.c" } static void expansion_transformation_build_remap_table (ExpansionTransformation* self) { gfloat low_kink_f = 0.0F; gint _tmp0_; gfloat high_kink_f = 0.0F; gint _tmp1_; gfloat slope = 0.0F; gfloat _tmp2_; gfloat _tmp3_; gfloat intercept = 0.0F; gfloat _tmp4_; gfloat _tmp5_; gfloat _tmp6_; gint i = 0; #line 1239 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->low_kink; #line 1239 "/home/jens/Source/shotwell/src/ColorTransformation.vala" low_kink_f = ((gfloat) _tmp0_) / 255.0f; #line 1240 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->high_kink; #line 1240 "/home/jens/Source/shotwell/src/ColorTransformation.vala" high_kink_f = ((gfloat) _tmp1_) / 255.0f; #line 1242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = high_kink_f; #line 1242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = low_kink_f; #line 1242 "/home/jens/Source/shotwell/src/ColorTransformation.vala" slope = 1.0f / (_tmp2_ - _tmp3_); #line 1243 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = low_kink_f; #line 1243 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = high_kink_f; #line 1243 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = low_kink_f; #line 1243 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intercept = -(_tmp4_ / (_tmp5_ - _tmp6_)); #line 1245 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 11400 "ColorTransformation.c" { gboolean _tmp7_ = FALSE; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = TRUE; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 11407 "ColorTransformation.c" gint _tmp9_; gint _tmp10_; gint _tmp11_; gfloat _tmp12_; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp7_) { #line 11414 "ColorTransformation.c" gint _tmp8_; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = i; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp8_ + 1; #line 11420 "ColorTransformation.c" } #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = FALSE; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = i; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = self->priv->low_kink; #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp9_ <= _tmp10_)) { #line 1246 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 11432 "ColorTransformation.c" } #line 1247 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = i; #line 1247 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp11_] = 0.0f; #line 1247 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp11_]; #line 11440 "ColorTransformation.c" } } { gboolean _tmp13_ = FALSE; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = TRUE; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 11449 "ColorTransformation.c" gint _tmp15_; gint _tmp16_; gint _tmp17_; gfloat _tmp18_; gint _tmp19_; gfloat _tmp20_; gfloat _tmp21_; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp13_) { #line 11459 "ColorTransformation.c" gint _tmp14_; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = i; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp14_ + 1; #line 11465 "ColorTransformation.c" } #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = FALSE; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = i; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = self->priv->high_kink; #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp15_ < _tmp16_)) { #line 1249 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 11477 "ColorTransformation.c" } #line 1250 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = i; #line 1250 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = slope; #line 1250 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = i; #line 1250 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = intercept; #line 1250 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp17_] = (_tmp18_ * (((gfloat) _tmp19_) / 255.0f)) + _tmp20_; #line 1250 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp17_]; #line 11491 "ColorTransformation.c" } } { gboolean _tmp22_ = FALSE; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = TRUE; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 11500 "ColorTransformation.c" gint _tmp24_; gint _tmp25_; gfloat _tmp26_; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp22_) { #line 11506 "ColorTransformation.c" gint _tmp23_; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = i; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp23_ + 1; #line 11512 "ColorTransformation.c" } #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = FALSE; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = i; #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp24_ < 256)) { #line 1252 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 11522 "ColorTransformation.c" } #line 1253 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = i; #line 1253 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp25_] = 1.0f; #line 1253 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp25_]; #line 11530 "ColorTransformation.c" } } } static gchar* expansion_transformation_real_to_string (PixelTransformation* base) { ExpansionTransformation * self; gchar* result = NULL; gint _tmp0_; gint _tmp1_; gchar* _tmp2_; #line 1256 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformation); #line 1257 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->low_kink; #line 1257 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->high_kink; #line 1257 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = g_strdup_printf ("{ %d, %d }", _tmp0_, _tmp1_); #line 1257 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp2_; #line 1257 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11556 "ColorTransformation.c" } gint expansion_transformation_get_white_point (ExpansionTransformation* self) { gint result = 0; gint _tmp0_; #line 1261 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->high_kink; #line 1261 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 1261 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11571 "ColorTransformation.c" } gint expansion_transformation_get_black_point (ExpansionTransformation* self) { gint result = 0; gint _tmp0_; #line 1265 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->low_kink; #line 1265 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 1265 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11586 "ColorTransformation.c" } static gboolean expansion_transformation_real_is_identity (PixelTransformation* base) { ExpansionTransformation * self; gboolean result = FALSE; gboolean _tmp0_ = FALSE; gint _tmp1_; #line 1268 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformation); #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->low_kink; #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp1_ == 0) { #line 11603 "ColorTransformation.c" gint _tmp2_; #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = self->priv->high_kink; #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = _tmp2_ == 255; #line 11609 "ColorTransformation.c" } else { #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = FALSE; #line 11613 "ColorTransformation.c" } #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 1269 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11619 "ColorTransformation.c" } static PixelTransformation* expansion_transformation_real_copy (PixelTransformation* base) { ExpansionTransformation * self; PixelTransformation* result = NULL; gint _tmp0_; gint _tmp1_; ExpansionTransformation* _tmp2_; #line 1272 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformation); #line 1273 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->low_kink; #line 1273 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->high_kink; #line 1273 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = expansion_transformation_new_from_extrema (_tmp0_, _tmp1_); #line 1273 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp2_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation); #line 1273 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11643 "ColorTransformation.c" } static void expansion_transformation_class_init (ExpansionTransformationClass * klass) { #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" expansion_transformation_parent_class = g_type_class_peek_parent (klass); #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = expansion_transformation_finalize; #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (ExpansionTransformationPrivate)); #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->to_string = (gchar* (*) (PixelTransformation *)) expansion_transformation_real_to_string; #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->is_identity = (gboolean (*) (PixelTransformation *)) expansion_transformation_real_is_identity; #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->copy = (PixelTransformation* (*) (PixelTransformation *)) expansion_transformation_real_copy; #line 11662 "ColorTransformation.c" } static void expansion_transformation_instance_init (ExpansionTransformation * self) { #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = EXPANSION_TRANSFORMATION_GET_PRIVATE (self); #line 11671 "ColorTransformation.c" } static void expansion_transformation_finalize (PixelTransformation * obj) { ExpansionTransformation * self; #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_EXPANSION_TRANSFORMATION, ExpansionTransformation); #line 1179 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (expansion_transformation_parent_class)->finalize (obj); #line 11683 "ColorTransformation.c" } GType expansion_transformation_get_type (void) { static volatile gsize expansion_transformation_type_id__volatile = 0; if (g_once_init_enter (&expansion_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (ExpansionTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) expansion_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ExpansionTransformation), 0, (GInstanceInitFunc) expansion_transformation_instance_init, NULL }; GType expansion_transformation_type_id; expansion_transformation_type_id = g_type_register_static (TYPE_HSV_TRANSFORMATION, "ExpansionTransformation", &g_define_type_info, 0); g_once_init_leave (&expansion_transformation_type_id__volatile, expansion_transformation_type_id); } return expansion_transformation_type_id__volatile; } ShadowDetailTransformation* shadow_detail_transformation_construct (GType object_type, gfloat user_intensity) { ShadowDetailTransformation* self = NULL; gfloat intensity_adj = 0.0F; gfloat _tmp0_; gfloat effect_shift = 0.0F; gfloat _tmp1_; HermiteGammaApproximationFunction* func = NULL; HermiteGammaApproximationFunction* _tmp2_; #line 1289 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (ShadowDetailTransformation*) hsv_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_SHADOWS); #line 1291 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->intensity = user_intensity; #line 1292 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1292 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_adj = CLAMP (_tmp0_ / SHADOW_DETAIL_TRANSFORMATION_MAX_PARAMETER, 0.0f, 1.0f); #line 1294 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = intensity_adj; #line 1294 "/home/jens/Source/shotwell/src/ColorTransformation.vala" effect_shift = SHADOW_DETAIL_TRANSFORMATION_MAX_EFFECT_SHIFT * _tmp1_; #line 1295 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = hermite_gamma_approximation_function_new (SHADOW_DETAIL_TRANSFORMATION_TONAL_WIDTH); #line 1295 "/home/jens/Source/shotwell/src/ColorTransformation.vala" func = _tmp2_; #line 11728 "ColorTransformation.c" { gint i = 0; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 11733 "ColorTransformation.c" { gboolean _tmp3_ = FALSE; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = TRUE; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 11740 "ColorTransformation.c" gint _tmp5_; gfloat x = 0.0F; gint _tmp6_; gfloat weight = 0.0F; HermiteGammaApproximationFunction* _tmp7_; gfloat _tmp8_; gint _tmp9_; gfloat _tmp10_; gfloat _tmp11_; gfloat _tmp12_; gfloat _tmp13_; gfloat _tmp14_; gfloat _tmp15_; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp3_) { #line 11756 "ColorTransformation.c" gint _tmp4_; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = i; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp4_ + 1; #line 11762 "ColorTransformation.c" } #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = FALSE; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = i; #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp5_ < 256)) { #line 1298 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 11772 "ColorTransformation.c" } #line 1299 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = i; #line 1299 "/home/jens/Source/shotwell/src/ColorTransformation.vala" x = ((gfloat) _tmp6_) / 255.0f; #line 1300 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = func; #line 1300 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = x; #line 1300 "/home/jens/Source/shotwell/src/ColorTransformation.vala" weight = hermite_gamma_approximation_function_evaluate (_tmp7_, _tmp8_); #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = i; #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = weight; #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = x; #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = effect_shift; #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = weight; #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = x; #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp9_] = (_tmp10_ * (_tmp11_ + _tmp12_)) + ((1.0f - _tmp13_) * _tmp14_); #line 1301 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp9_]; #line 11800 "ColorTransformation.c" } } } #line 1288 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _hermite_gamma_approximation_function_unref0 (func); #line 1288 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 11808 "ColorTransformation.c" } ShadowDetailTransformation* shadow_detail_transformation_new (gfloat user_intensity) { #line 1288 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return shadow_detail_transformation_construct (TYPE_SHADOW_DETAIL_TRANSFORMATION, user_intensity); #line 11817 "ColorTransformation.c" } static PixelTransformation* shadow_detail_transformation_real_copy (PixelTransformation* base) { ShadowDetailTransformation * self; PixelTransformation* result = NULL; gfloat _tmp0_; ShadowDetailTransformation* _tmp1_; #line 1305 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformation); #line 1306 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1306 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = shadow_detail_transformation_new (_tmp0_); #line 1306 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation); #line 1306 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11838 "ColorTransformation.c" } static gboolean shadow_detail_transformation_real_is_identity (PixelTransformation* base) { ShadowDetailTransformation * self; gboolean result = FALSE; gfloat _tmp0_; #line 1309 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformation); #line 1310 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1310 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_ == 0.0f; #line 1310 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11856 "ColorTransformation.c" } gfloat shadow_detail_transformation_get_parameter (ShadowDetailTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 1314 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1314 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 1314 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11871 "ColorTransformation.c" } static void shadow_detail_transformation_class_init (ShadowDetailTransformationClass * klass) { #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" shadow_detail_transformation_parent_class = g_type_class_peek_parent (klass); #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = shadow_detail_transformation_finalize; #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (ShadowDetailTransformationPrivate)); #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->copy = (PixelTransformation* (*) (PixelTransformation *)) shadow_detail_transformation_real_copy; #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->is_identity = (gboolean (*) (PixelTransformation *)) shadow_detail_transformation_real_is_identity; #line 11888 "ColorTransformation.c" } static void shadow_detail_transformation_instance_init (ShadowDetailTransformation * self) { #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = SHADOW_DETAIL_TRANSFORMATION_GET_PRIVATE (self); #line 1283 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->intensity = 0.0f; #line 11899 "ColorTransformation.c" } static void shadow_detail_transformation_finalize (PixelTransformation * obj) { ShadowDetailTransformation * self; #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_SHADOW_DETAIL_TRANSFORMATION, ShadowDetailTransformation); #line 1277 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (shadow_detail_transformation_parent_class)->finalize (obj); #line 11911 "ColorTransformation.c" } GType shadow_detail_transformation_get_type (void) { static volatile gsize shadow_detail_transformation_type_id__volatile = 0; if (g_once_init_enter (&shadow_detail_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (ShadowDetailTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) shadow_detail_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ShadowDetailTransformation), 0, (GInstanceInitFunc) shadow_detail_transformation_instance_init, NULL }; GType shadow_detail_transformation_type_id; shadow_detail_transformation_type_id = g_type_register_static (TYPE_HSV_TRANSFORMATION, "ShadowDetailTransformation", &g_define_type_info, 0); g_once_init_leave (&shadow_detail_transformation_type_id__volatile, shadow_detail_transformation_type_id); } return shadow_detail_transformation_type_id__volatile; } HermiteGammaApproximationFunction* hermite_gamma_approximation_function_construct (GType object_type, gfloat user_interval_upper) { HermiteGammaApproximationFunction* self = NULL; gfloat _tmp0_; #line 1322 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (HermiteGammaApproximationFunction*) g_type_create_instance (object_type); #line 1323 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->nonzero_interval_upper = CLAMP (user_interval_upper, 0.1f, 1.0f); #line 1324 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->nonzero_interval_upper; #line 1324 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->x_scale = 1.0f / _tmp0_; #line 1322 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 11945 "ColorTransformation.c" } HermiteGammaApproximationFunction* hermite_gamma_approximation_function_new (gfloat user_interval_upper) { #line 1322 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return hermite_gamma_approximation_function_construct (TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION, user_interval_upper); #line 11954 "ColorTransformation.c" } gfloat hermite_gamma_approximation_function_evaluate (HermiteGammaApproximationFunction* self, gfloat x) { gfloat result = 0.0F; #line 1328 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (x < 0.0f) { #line 1329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = 0.0f; #line 1329 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11969 "ColorTransformation.c" } else { gfloat _tmp0_; #line 1330 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->nonzero_interval_upper; #line 1330 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (x > _tmp0_) { #line 1331 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = 0.0f; #line 1331 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 11980 "ColorTransformation.c" } else { gfloat indep_var = 0.0F; gfloat _tmp1_; gfloat dep_var = 0.0F; gfloat _tmp2_; gfloat _tmp3_; gfloat _tmp4_; gfloat _tmp5_; gfloat _tmp6_; gfloat _tmp7_; gfloat _tmp8_; #line 1333 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = self->priv->x_scale; #line 1333 "/home/jens/Source/shotwell/src/ColorTransformation.vala" indep_var = _tmp1_ * x; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = indep_var; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = indep_var; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = indep_var; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = indep_var; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = indep_var; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = indep_var; #line 1335 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dep_var = 6.0f * ((((_tmp2_ * _tmp3_) * _tmp4_) - (2.0f * (_tmp5_ * _tmp6_))) + _tmp7_); #line 1338 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = dep_var; #line 1338 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = CLAMP (_tmp8_, 0.0f, 1.0f); #line 1338 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 12016 "ColorTransformation.c" } } } static void value_hermite_gamma_approximation_function_init (GValue* value) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 12027 "ColorTransformation.c" } static void value_hermite_gamma_approximation_function_free_value (GValue* value) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (value->data[0].v_pointer) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hermite_gamma_approximation_function_unref (value->data[0].v_pointer); #line 12038 "ColorTransformation.c" } } static void value_hermite_gamma_approximation_function_copy_value (const GValue* src_value, GValue* dest_value) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (src_value->data[0].v_pointer) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = hermite_gamma_approximation_function_ref (src_value->data[0].v_pointer); #line 12051 "ColorTransformation.c" } else { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" dest_value->data[0].v_pointer = NULL; #line 12055 "ColorTransformation.c" } } static gpointer value_hermite_gamma_approximation_function_peek_pointer (const GValue* value) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 12065 "ColorTransformation.c" } static gchar* value_hermite_gamma_approximation_function_collect_value (GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (collect_values[0].v_pointer) { #line 12077 "ColorTransformation.c" HermiteGammaApproximationFunction * object; object = collect_values[0].v_pointer; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (object->parent_instance.g_class == NULL) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 12084 "ColorTransformation.c" } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL); #line 12088 "ColorTransformation.c" } #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = hermite_gamma_approximation_function_ref (object); #line 12092 "ColorTransformation.c" } else { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 12096 "ColorTransformation.c" } #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 12100 "ColorTransformation.c" } static gchar* value_hermite_gamma_approximation_function_lcopy_value (const GValue* value, guint n_collect_values, GTypeCValue* collect_values, guint collect_flags) { HermiteGammaApproximationFunction ** object_p; object_p = collect_values[0].v_pointer; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!object_p) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value)); #line 12116 "ColorTransformation.c" } #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!value->data[0].v_pointer) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = NULL; #line 12122 "ColorTransformation.c" } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = value->data[0].v_pointer; #line 12126 "ColorTransformation.c" } else { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" *object_p = hermite_gamma_approximation_function_ref (value->data[0].v_pointer); #line 12130 "ColorTransformation.c" } #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return NULL; #line 12134 "ColorTransformation.c" } GParamSpec* param_spec_hermite_gamma_approximation_function (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags) { ParamSpecHermiteGammaApproximationFunction* spec; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (g_type_is_a (object_type, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION), NULL); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_PARAM_SPEC (spec)->value_type = object_type; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return G_PARAM_SPEC (spec); #line 12154 "ColorTransformation.c" } gpointer value_get_hermite_gamma_approximation_function (const GValue* value) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION), NULL); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return value->data[0].v_pointer; #line 12165 "ColorTransformation.c" } void value_set_hermite_gamma_approximation_function (GValue* value, gpointer v_object) { HermiteGammaApproximationFunction * old; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION)); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION)); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hermite_gamma_approximation_function_ref (value->data[0].v_pointer); #line 12188 "ColorTransformation.c" } else { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 12192 "ColorTransformation.c" } #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hermite_gamma_approximation_function_unref (old); #line 12198 "ColorTransformation.c" } } void value_take_hermite_gamma_approximation_function (GValue* value, gpointer v_object) { HermiteGammaApproximationFunction * old; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION)); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" old = value->data[0].v_pointer; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (v_object) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION)); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value))); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = v_object; #line 12220 "ColorTransformation.c" } else { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" value->data[0].v_pointer = NULL; #line 12224 "ColorTransformation.c" } #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (old) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hermite_gamma_approximation_function_unref (old); #line 12230 "ColorTransformation.c" } } static void hermite_gamma_approximation_function_class_init (HermiteGammaApproximationFunctionClass * klass) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" hermite_gamma_approximation_function_parent_class = g_type_class_peek_parent (klass); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((HermiteGammaApproximationFunctionClass *) klass)->finalize = hermite_gamma_approximation_function_finalize; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (HermiteGammaApproximationFunctionPrivate)); #line 12244 "ColorTransformation.c" } static void hermite_gamma_approximation_function_instance_init (HermiteGammaApproximationFunction * self) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = HERMITE_GAMMA_APPROXIMATION_FUNCTION_GET_PRIVATE (self); #line 1319 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->x_scale = 1.0f; #line 1320 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->nonzero_interval_upper = 1.0f; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->ref_count = 1; #line 12259 "ColorTransformation.c" } static void hermite_gamma_approximation_function_finalize (HermiteGammaApproximationFunction * obj) { HermiteGammaApproximationFunction * self; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HERMITE_GAMMA_APPROXIMATION_FUNCTION, HermiteGammaApproximationFunction); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_signal_handlers_destroy (self); #line 12271 "ColorTransformation.c" } GType hermite_gamma_approximation_function_get_type (void) { static volatile gsize hermite_gamma_approximation_function_type_id__volatile = 0; if (g_once_init_enter (&hermite_gamma_approximation_function_type_id__volatile)) { static const GTypeValueTable g_define_type_value_table = { value_hermite_gamma_approximation_function_init, value_hermite_gamma_approximation_function_free_value, value_hermite_gamma_approximation_function_copy_value, value_hermite_gamma_approximation_function_peek_pointer, "p", value_hermite_gamma_approximation_function_collect_value, "p", value_hermite_gamma_approximation_function_lcopy_value }; static const GTypeInfo g_define_type_info = { sizeof (HermiteGammaApproximationFunctionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) hermite_gamma_approximation_function_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HermiteGammaApproximationFunction), 0, (GInstanceInitFunc) hermite_gamma_approximation_function_instance_init, &g_define_type_value_table }; static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) }; GType hermite_gamma_approximation_function_type_id; hermite_gamma_approximation_function_type_id = g_type_register_fundamental (g_type_fundamental_next (), "HermiteGammaApproximationFunction", &g_define_type_info, &g_define_type_fundamental_info, 0); g_once_init_leave (&hermite_gamma_approximation_function_type_id__volatile, hermite_gamma_approximation_function_type_id); } return hermite_gamma_approximation_function_type_id__volatile; } gpointer hermite_gamma_approximation_function_ref (gpointer instance) { HermiteGammaApproximationFunction * self; self = instance; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_atomic_int_inc (&self->ref_count); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return instance; #line 12300 "ColorTransformation.c" } void hermite_gamma_approximation_function_unref (gpointer instance) { HermiteGammaApproximationFunction * self; self = instance; #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (g_atomic_int_dec_and_test (&self->ref_count)) { #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" HERMITE_GAMMA_APPROXIMATION_FUNCTION_GET_CLASS (self)->finalize (self); #line 1318 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_free_instance ((GTypeInstance *) self); #line 12315 "ColorTransformation.c" } } HighlightDetailTransformation* highlight_detail_transformation_construct (GType object_type, gfloat user_intensity) { HighlightDetailTransformation* self = NULL; gfloat intensity_adj = 0.0F; gfloat _tmp0_; gfloat effect_shift = 0.0F; gfloat _tmp1_; HermiteGammaApproximationFunction* func = NULL; HermiteGammaApproximationFunction* _tmp2_; #line 1355 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = (HighlightDetailTransformation*) hsv_transformation_construct (object_type, PIXEL_TRANSFORMATION_TYPE_HIGHLIGHTS); #line 1357 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->intensity = user_intensity; #line 1358 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1358 "/home/jens/Source/shotwell/src/ColorTransformation.vala" intensity_adj = CLAMP (_tmp0_ / HIGHLIGHT_DETAIL_TRANSFORMATION_MIN_PARAMETER, 0.0f, 1.0f); #line 1360 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = intensity_adj; #line 1360 "/home/jens/Source/shotwell/src/ColorTransformation.vala" effect_shift = HIGHLIGHT_DETAIL_TRANSFORMATION_MAX_EFFECT_SHIFT * _tmp1_; #line 1361 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = hermite_gamma_approximation_function_new (HIGHLIGHT_DETAIL_TRANSFORMATION_TONAL_WIDTH); #line 1361 "/home/jens/Source/shotwell/src/ColorTransformation.vala" func = _tmp2_; #line 12347 "ColorTransformation.c" { gint i = 0; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = 0; #line 12352 "ColorTransformation.c" { gboolean _tmp3_ = FALSE; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = TRUE; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 12359 "ColorTransformation.c" gint _tmp5_; gfloat x = 0.0F; gint _tmp6_; gfloat weight = 0.0F; HermiteGammaApproximationFunction* _tmp7_; gfloat _tmp8_; gint _tmp9_; gfloat _tmp10_; gfloat _tmp11_; gfloat _tmp12_; gfloat _tmp13_; gfloat _tmp14_; gfloat _tmp15_; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp3_) { #line 12375 "ColorTransformation.c" gint _tmp4_; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = i; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" i = _tmp4_ + 1; #line 12381 "ColorTransformation.c" } #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = FALSE; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = i; #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp5_ < 256)) { #line 1364 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 12391 "ColorTransformation.c" } #line 1365 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = i; #line 1365 "/home/jens/Source/shotwell/src/ColorTransformation.vala" x = ((gfloat) _tmp6_) / 255.0f; #line 1366 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = func; #line 1366 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = x; #line 1366 "/home/jens/Source/shotwell/src/ColorTransformation.vala" weight = hermite_gamma_approximation_function_evaluate (_tmp7_, 1.0f - _tmp8_); #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = i; #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = weight; #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = x; #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = effect_shift; #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = weight; #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = x; #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp9_] = (_tmp10_ * (_tmp11_ - _tmp12_)) + ((1.0f - _tmp13_) * _tmp14_); #line 1367 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = G_TYPE_CHECK_INSTANCE_CAST (self, TYPE_HSV_TRANSFORMATION, HSVTransformation)->remap_table[_tmp9_]; #line 12419 "ColorTransformation.c" } } } #line 1354 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _hermite_gamma_approximation_function_unref0 (func); #line 1354 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return self; #line 12427 "ColorTransformation.c" } HighlightDetailTransformation* highlight_detail_transformation_new (gfloat user_intensity) { #line 1354 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return highlight_detail_transformation_construct (TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, user_intensity); #line 12436 "ColorTransformation.c" } static PixelTransformation* highlight_detail_transformation_real_copy (PixelTransformation* base) { HighlightDetailTransformation * self; PixelTransformation* result = NULL; gfloat _tmp0_; HighlightDetailTransformation* _tmp1_; #line 1371 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformation); #line 1372 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1372 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = highlight_detail_transformation_new (_tmp0_); #line 1372 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = G_TYPE_CHECK_INSTANCE_CAST (_tmp1_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation); #line 1372 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 12457 "ColorTransformation.c" } static gboolean highlight_detail_transformation_real_is_identity (PixelTransformation* base) { HighlightDetailTransformation * self; gboolean result = FALSE; gfloat _tmp0_; #line 1375 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (base, TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformation); #line 1376 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1376 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_ == 0.0f; #line 1376 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 12475 "ColorTransformation.c" } gfloat highlight_detail_transformation_get_parameter (HighlightDetailTransformation* self) { gfloat result = 0.0F; gfloat _tmp0_; #line 1380 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = self->priv->intensity; #line 1380 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = _tmp0_; #line 1380 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 12490 "ColorTransformation.c" } static void highlight_detail_transformation_class_init (HighlightDetailTransformationClass * klass) { #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" highlight_detail_transformation_parent_class = g_type_class_peek_parent (klass); #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->finalize = highlight_detail_transformation_finalize; #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" g_type_class_add_private (klass, sizeof (HighlightDetailTransformationPrivate)); #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->copy = (PixelTransformation* (*) (PixelTransformation *)) highlight_detail_transformation_real_copy; #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" ((PixelTransformationClass *) klass)->is_identity = (gboolean (*) (PixelTransformation *)) highlight_detail_transformation_real_is_identity; #line 12507 "ColorTransformation.c" } static void highlight_detail_transformation_instance_init (HighlightDetailTransformation * self) { #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv = HIGHLIGHT_DETAIL_TRANSFORMATION_GET_PRIVATE (self); #line 1349 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self->priv->intensity = 0.0f; #line 12518 "ColorTransformation.c" } static void highlight_detail_transformation_finalize (PixelTransformation * obj) { HighlightDetailTransformation * self; #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_HIGHLIGHT_DETAIL_TRANSFORMATION, HighlightDetailTransformation); #line 1343 "/home/jens/Source/shotwell/src/ColorTransformation.vala" PIXEL_TRANSFORMATION_CLASS (highlight_detail_transformation_parent_class)->finalize (obj); #line 12530 "ColorTransformation.c" } GType highlight_detail_transformation_get_type (void) { static volatile gsize highlight_detail_transformation_type_id__volatile = 0; if (g_once_init_enter (&highlight_detail_transformation_type_id__volatile)) { static const GTypeInfo g_define_type_info = { sizeof (HighlightDetailTransformationClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) highlight_detail_transformation_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (HighlightDetailTransformation), 0, (GInstanceInitFunc) highlight_detail_transformation_instance_init, NULL }; GType highlight_detail_transformation_type_id; highlight_detail_transformation_type_id = g_type_register_static (TYPE_HSV_TRANSFORMATION, "HighlightDetailTransformation", &g_define_type_info, 0); g_once_init_leave (&highlight_detail_transformation_type_id__volatile, highlight_detail_transformation_type_id); } return highlight_detail_transformation_type_id__volatile; } PixelTransformationBundle* auto_enhance_create_auto_enhance_adjustments (GdkPixbuf* pixbuf) { PixelTransformationBundle* result = NULL; PixelTransformationBundle* adjustments = NULL; PixelTransformationBundle* _tmp0_; IntensityHistogram* analysis_histogram = NULL; IntensityHistogram* _tmp1_; gfloat pct_in_range = 0.0F; IntensityHistogram* _tmp2_; IntensityHistogram* _tmp3_; gfloat shadow_range_mean_prob_val = 0.0F; IntensityHistogram* _tmp4_; IntensityHistogram* _tmp5_; gint shadow_mean_intensity = 0; gboolean _tmp12_ = FALSE; gfloat _tmp13_; PixelTransformationBundle* _tmp39_; HighlightDetailTransformation* _tmp40_; HighlightDetailTransformation* _tmp41_; PixelTransformationBundle* _tmp42_; TemperatureTransformation* _tmp43_; TemperatureTransformation* _tmp44_; PixelTransformationBundle* _tmp45_; TintTransformation* _tmp46_; TintTransformation* _tmp47_; PixelTransformationBundle* _tmp48_; ExposureTransformation* _tmp49_; ExposureTransformation* _tmp50_; PixelTransformationBundle* _tmp51_; ContrastTransformation* _tmp52_; ContrastTransformation* _tmp53_; PixelTransformationBundle* _tmp54_; SaturationTransformation* _tmp55_; SaturationTransformation* _tmp56_; #line 1394 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp0_ = pixel_transformation_bundle_new (); #line 1394 "/home/jens/Source/shotwell/src/ColorTransformation.vala" adjustments = _tmp0_; #line 1396 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp1_ = intensity_histogram_new (pixbuf); #line 1396 "/home/jens/Source/shotwell/src/ColorTransformation.vala" analysis_histogram = _tmp1_; #line 1399 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp2_ = analysis_histogram; #line 1399 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp3_ = analysis_histogram; #line 1399 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pct_in_range = 100.0f * (intensity_histogram_get_cumulative_probability (_tmp2_, AUTO_ENHANCE_SHADOW_DETECT_MAX_INTENSITY) - intensity_histogram_get_cumulative_probability (_tmp3_, AUTO_ENHANCE_SHADOW_DETECT_MIN_INTENSITY)); #line 1405 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp4_ = analysis_histogram; #line 1405 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp5_ = analysis_histogram; #line 1405 "/home/jens/Source/shotwell/src/ColorTransformation.vala" shadow_range_mean_prob_val = (intensity_histogram_get_cumulative_probability (_tmp4_, AUTO_ENHANCE_SHADOW_DETECT_MIN_INTENSITY) + intensity_histogram_get_cumulative_probability (_tmp5_, AUTO_ENHANCE_SHADOW_DETECT_MAX_INTENSITY)) * 0.5f; #line 1408 "/home/jens/Source/shotwell/src/ColorTransformation.vala" shadow_mean_intensity = AUTO_ENHANCE_SHADOW_DETECT_MIN_INTENSITY; #line 12605 "ColorTransformation.c" { gboolean _tmp6_ = FALSE; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = TRUE; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 12612 "ColorTransformation.c" gint _tmp8_; IntensityHistogram* _tmp9_; gint _tmp10_; gfloat _tmp11_; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp6_) { #line 12619 "ColorTransformation.c" gint _tmp7_; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp7_ = shadow_mean_intensity; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" shadow_mean_intensity = _tmp7_ + 1; #line 12625 "ColorTransformation.c" } #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp6_ = FALSE; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp8_ = shadow_mean_intensity; #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp8_ <= AUTO_ENHANCE_SHADOW_DETECT_MAX_INTENSITY)) { #line 1409 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 12635 "ColorTransformation.c" } #line 1410 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp9_ = analysis_histogram; #line 1410 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp10_ = shadow_mean_intensity; #line 1410 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp11_ = shadow_range_mean_prob_val; #line 1410 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (intensity_histogram_get_cumulative_probability (_tmp9_, _tmp10_) >= _tmp11_) { #line 1411 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 12647 "ColorTransformation.c" } } } #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp13_ = pct_in_range; #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp13_ > 40.0f) { #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = TRUE; #line 12657 "ColorTransformation.c" } else { gboolean _tmp14_ = FALSE; gfloat _tmp15_; #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp15_ = pct_in_range; #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp15_ > 20.0f) { #line 12665 "ColorTransformation.c" gint _tmp16_; #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp16_ = shadow_mean_intensity; #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = _tmp16_ < AUTO_ENHANCE_EMPIRICAL_DARK; #line 12671 "ColorTransformation.c" } else { #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp14_ = FALSE; #line 12675 "ColorTransformation.c" } #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp12_ = _tmp14_; #line 12679 "ColorTransformation.c" } #line 1419 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (_tmp12_) { #line 12683 "ColorTransformation.c" gfloat shadow_trans_effect_size = 0.0F; gint _tmp17_; gfloat _tmp18_; PixelTransformationBundle* _tmp19_; gfloat _tmp20_; ShadowDetailTransformation* _tmp21_; ShadowDetailTransformation* _tmp22_; gint discard_point = 0; PixelTransformationBundle* _tmp28_; gint _tmp29_; ExpansionTransformation* _tmp30_; ExpansionTransformation* _tmp31_; #line 1420 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp17_ = shadow_mean_intensity; #line 1420 "/home/jens/Source/shotwell/src/ColorTransformation.vala" shadow_trans_effect_size = ((((gfloat) AUTO_ENHANCE_SHADOW_DETECT_MAX_INTENSITY) - ((gfloat) _tmp17_)) / ((gfloat) AUTO_ENHANCE_SHADOW_DETECT_INTENSITY_RANGE)) * SHADOW_DETAIL_TRANSFORMATION_MAX_PARAMETER; #line 1424 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp18_ = shadow_trans_effect_size; #line 1424 "/home/jens/Source/shotwell/src/ColorTransformation.vala" shadow_trans_effect_size = _tmp18_ * AUTO_ENHANCE_SHADOW_AGGRESSIVENESS_MUL; #line 1426 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp19_ = adjustments; #line 1426 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp20_ = shadow_trans_effect_size; #line 1426 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp21_ = shadow_detail_transformation_new (_tmp20_); #line 1426 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp22_ = _tmp21_; #line 1426 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp19_, G_TYPE_CHECK_INSTANCE_CAST (_tmp22_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1426 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp22_); #line 1430 "/home/jens/Source/shotwell/src/ColorTransformation.vala" discard_point = 255; #line 12718 "ColorTransformation.c" { gboolean _tmp23_ = FALSE; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = TRUE; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" while (TRUE) { #line 12725 "ColorTransformation.c" gint _tmp25_; IntensityHistogram* _tmp26_; gint _tmp27_; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!_tmp23_) { #line 12731 "ColorTransformation.c" gint _tmp24_; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp24_ = discard_point; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" discard_point = _tmp24_ - 1; #line 12737 "ColorTransformation.c" } #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp23_ = FALSE; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp25_ = discard_point; #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if (!(_tmp25_ > -1)) { #line 1431 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 12747 "ColorTransformation.c" } #line 1432 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp26_ = analysis_histogram; #line 1432 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp27_ = discard_point; #line 1432 "/home/jens/Source/shotwell/src/ColorTransformation.vala" if ((1.0f - intensity_histogram_get_cumulative_probability (_tmp26_, _tmp27_)) > AUTO_ENHANCE_SHADOW_MODE_HIGH_DISCARD_MASS) { #line 1434 "/home/jens/Source/shotwell/src/ColorTransformation.vala" break; #line 12757 "ColorTransformation.c" } } } #line 1437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp28_ = adjustments; #line 1437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp29_ = discard_point; #line 1437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp30_ = expansion_transformation_new_from_extrema (0, _tmp29_); #line 1437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp31_ = _tmp30_; #line 1437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp28_, G_TYPE_CHECK_INSTANCE_CAST (_tmp31_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1437 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp31_); #line 12773 "ColorTransformation.c" } else { PixelTransformationBundle* _tmp32_; IntensityHistogram* _tmp33_; ExpansionTransformation* _tmp34_; ExpansionTransformation* _tmp35_; PixelTransformationBundle* _tmp36_; ShadowDetailTransformation* _tmp37_; ShadowDetailTransformation* _tmp38_; #line 1440 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp32_ = adjustments; #line 1440 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp33_ = analysis_histogram; #line 1440 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp34_ = expansion_transformation_new (_tmp33_); #line 1440 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp35_ = _tmp34_; #line 1440 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp32_, G_TYPE_CHECK_INSTANCE_CAST (_tmp35_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1440 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp35_); #line 1441 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp36_ = adjustments; #line 1441 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp37_ = shadow_detail_transformation_new ((gfloat) 0); #line 1441 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp38_ = _tmp37_; #line 1441 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp36_, G_TYPE_CHECK_INSTANCE_CAST (_tmp38_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1441 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp38_); #line 12804 "ColorTransformation.c" } #line 1445 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp39_ = adjustments; #line 1445 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp40_ = highlight_detail_transformation_new (0.0f); #line 1445 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp41_ = _tmp40_; #line 1445 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp39_, G_TYPE_CHECK_INSTANCE_CAST (_tmp41_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1445 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp41_); #line 1446 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp42_ = adjustments; #line 1446 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp43_ = temperature_transformation_new (0.0f); #line 1446 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp44_ = _tmp43_; #line 1446 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp42_, G_TYPE_CHECK_INSTANCE_CAST (_tmp44_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1446 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp44_); #line 1447 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp45_ = adjustments; #line 1447 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp46_ = tint_transformation_new (0.0f); #line 1447 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp47_ = _tmp46_; #line 1447 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp45_, G_TYPE_CHECK_INSTANCE_CAST (_tmp47_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1447 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp47_); #line 1448 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp48_ = adjustments; #line 1448 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp49_ = exposure_transformation_new (0.0f); #line 1448 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp50_ = _tmp49_; #line 1448 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp48_, G_TYPE_CHECK_INSTANCE_CAST (_tmp50_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1448 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp50_); #line 1449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp51_ = adjustments; #line 1449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp52_ = contrast_transformation_new (0.0f); #line 1449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp53_ = _tmp52_; #line 1449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp51_, G_TYPE_CHECK_INSTANCE_CAST (_tmp53_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1449 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp53_); #line 1450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp54_ = adjustments; #line 1450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp55_ = saturation_transformation_new (0.0f); #line 1450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _tmp56_ = _tmp55_; #line 1450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" pixel_transformation_bundle_set (_tmp54_, G_TYPE_CHECK_INSTANCE_CAST (_tmp56_, TYPE_PIXEL_TRANSFORMATION, PixelTransformation)); #line 1450 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _pixel_transformation_unref0 (_tmp56_); #line 1452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" result = adjustments; #line 1452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" _intensity_histogram_unref0 (analysis_histogram); #line 1452 "/home/jens/Source/shotwell/src/ColorTransformation.vala" return result; #line 12872 "ColorTransformation.c" } static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { if ((array != NULL) && (destroy_func != NULL)) { int i; for (i = 0; i < array_length; i = i + 1) { if (((gpointer*) array)[i] != NULL) { destroy_func (((gpointer*) array)[i]); } } } } static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { _vala_array_destroy (array, array_length, destroy_func); g_free (array); }