void
filters_update()
{
	filter_update(get_filter_by_name((char*)"in_saccade_translated_filter"));
	filter_update(get_filter_by_name((char*)"in_pattern_translated_filter"));
       	filter_update(get_filter_by_name((char*)"in_pattern_filtered_translated_filter"));
       	filter_update(get_filter_by_name((char*)"in_pattern_filtered_translated_red_filter"));
       	filter_update(get_filter_by_name((char*)"in_pattern_filtered_translated_green_filter"));
       	filter_update(get_filter_by_name((char*)"in_pattern_filtered_translated_blue_filter"));
	filter_update(get_filter_by_name((char*)"nl_v1_pattern_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"table_v1_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"nl_v1_activation_map_neuron_weight_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"nl_activation_map_hough_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"nl_activation_map_hough_gaussian_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"nl_activation_map_hough_v1_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"nl_activation_map_hough_zoom_filter"));	//this filter is obligatory
	filter_update(get_filter_by_name((char*)"nl_activation_map_hough_zoom_gaussian_filter"));	//this filter is obligatory

	all_dendrites_update(); 
	all_neurons_update();

	forward_objects((char*)"nl_v1_activation_map_neuron_weight_filter");
	forward_objects((char*)"nl_activation_map_hough_filter");
	forward_objects((char*)"nl_activation_map_hough_gaussian_filter");
	forward_objects((char*)"nl_activation_map_hough_v1_filter");
	forward_objects((char*)"nl_activation_map_hough_zoom_filter");
	forward_objects((char*)"nl_activation_map_hough_zoom_gaussian_filter");

}
void
forward_network()
{
   	all_filters_update ();
	all_dendrites_update (); 
	all_neurons_update ();
	all_outputs_update (); 
}
void
input_generator (INPUT_DESC *input, int status)
{

	if (input->win == 0)
	{
		init_visual_search_thin (input);
	}
	else
	{
		if (status == MOVE)
		{
			check_input_bounds (input, input->wxd, input->wxd);
			glutSetWindow (input->win);
			input_display ();
			update_input_filters();
			all_dendrites_update (); 
			all_neurons_update ();
			filter_update(get_filter_by_name((char*)"nl_v1_activation_map_f_filter"));	//this filter is obligatory
			all_outputs_update ();
		}
	}
}