Example #1
0
void callTask(std::string task_address, const CallContext& call_ctx, EventQueue& queue){
	cout<<" TASK("<<task_address<<":CALL) ";
	while(true)
	{
		Event e = queue.waitEvent();
		if(not e){
			cout<<" TASK("<<task_address<<":TERMINATED) ";
			return;
		}
		if( e=="/SUCCESS" or e=="/FAIL" or e=="/GO" ){
			Event new_event ( Event(""+e.event_name(), call_ctx) );
			cout<<" TASK("<<task_address<<":"<<new_event<<") ";
			queue.riseEvent(new_event);
		}
	}
}