video_descr,
capture_pp_descr;
+static void reset_mode_shading_tables(void)
+{
+ if (my_css.preview_settings.shading_table) {
+ sh_css_shading_table_free(
+ my_css.preview_settings.shading_table);
+ my_css.preview_settings.shading_table = NULL;
+ }
+
+ if (my_css.capture_settings.shading_table) {
+ sh_css_shading_table_free(
+ my_css.capture_settings.shading_table);
+ my_css.capture_settings.shading_table = NULL;
+ }
+
+ if (my_css.video_settings.shading_table) {
+ sh_css_shading_table_free(
+ my_css.video_settings.shading_table);
+ my_css.video_settings.shading_table = NULL;
+ }
+}
+
static enum sh_css_err
check_frame_info(struct sh_css_frame_info *info)
{
void
sh_css_set_shading_table(const struct sh_css_shading_table *table)
{
+ if (table != my_css.shading_table)
+ reset_mode_shading_tables();
+
my_css.shading_table = table;
}
void
sh_css_input_set_binning_factor(unsigned int binning_factor)
{
+ if (binning_factor != my_css.sensor_binning)
+ reset_mode_shading_tables();
my_css.sensor_binning = binning_factor;
}