1 #ifndef _HIST_H_ 2 #define _HIST_H_ 3 4 struct mtf_data { 5 fits *fit; 6 sequence *seq; 7 float lo; 8 float mid; 9 float hi; 10 const gchar *seqEntry; 11 }; 12 13 typedef enum { 14 SCALE_LOW, 15 SCALE_MID, 16 SCALE_HI 17 } ScaleType; 18 19 gsl_histogram* computeHisto(fits*, int); 20 gsl_histogram* computeHisto_Selection(fits*, int, rectangle *); 21 void compute_histo_for_gfit(); 22 void invalidate_gfit_histogram(); 23 void update_gfit_histogram_if_needed(); 24 void clear_histograms(); 25 float MTF(float x, float m, float lo, float hi); 26 float findMidtonesBalance(fits *fit, float *shadows, float *highlights); 27 void apply_histo_cancel(); 28 void toggle_histogram_window_visibility(); 29 30 void on_histoMidEntry_changed(GtkEditable *editable, gpointer user_data); 31 void on_histoShadEntry_changed(GtkEditable *editable, gpointer user_data); 32 void on_histoHighEntry_changed(GtkEditable *editable, gpointer user_data); 33 void mtf_with_parameters(fits *fit, float lo, float mid, float hi); 34 35 void apply_mtf_to_sequence(struct mtf_data *mtf_args); 36 37 #endif 38