/**
 * @author rgaumond
 */
//new PeriodicalExecuter(synchro_debugger, 5);

function function_completed(function_id)
{
	try {
		if (loading_info.findAll(function(fn){
			return fn.id == function_id
		}).size() == 0) 
			alert("can not find " + function_id)
		else 
			loading_info.find(function(fn){
				
				return fn.id == function_id && fn.completed == false
			}).completed = true;
	} 
	catch (e) {
		alert("erreur function_completed "+function_id+ " "+e.message)
	}
}

function function_initiated(function_id)
{
	loading_info.push(new loading_info_object(function_id));
	return;
}

function all_loading_completed(exeption)
{
	
	if (loading_info.size() == 0 || veil_on) 
		return false;
	else {
		return loading_info.findAll(function(fn){
			return fn.completed == false;
		}).size() == 0;
	}	
}


function pre_loading_completed()
{
	if (loading_info.size() == 0) 
		return false;
	else {
		return loading_info.findAll(function(fn){
			return (fn.completed == false && fn.id!="removeVeil");
		}).size() == 0;
	}
}


function synchro_debugger()
{
	
loading_info.each(function(fn){if( fn.completed==false)alert (fn.id)})
alert(loading_info.findAll(function(fn){return fn.completed==false}).size())

	//return loading_info.findAll(function(fn){return fn.completed==false}).size()==0;
}

function is_in_process(id)
{
	if (loading_info.findAll(function(fc){
		return fc.id == id
	}).size() ==
	0) {
		return true;
	}
	else {
		return loading_info.findAll(function(fc){
			return fc.id == id && fc.completed == false
		}).size() >
		0;
	}
}

function start_process(id)
{
	in_process.push(new processing_objects(id));
}
function processing_objects(id)
{
	this.id = id;
	this.processing=true;
}

function process_completed(id)
{
	in_process.find(function(fc){return ((fc.id==id)&&(fc.processing==true));}).processing=false;	
}

function all_processed()
{
	return in_process.findAll(function(fc){return fc.processing==true;}).size()==0;
}
