Exemplo n.º 1
0
sc_process_handle
sc_get_current_process_handle()
{
    return ( sc_is_running() ) ?
           sc_process_handle(sc_get_current_process_b()) :
           sc_get_last_created_process_handle();
}
Exemplo n.º 2
0
sc_process_handle 
sc_simcontext::create_cthread_process( 
    const char* name_p, bool free_host, SC_ENTRY_FUNC method_p,         
    sc_process_host* host_p, const sc_spawn_options* opt_p )
{
    sc_cthread_handle handle = 
        new sc_cthread_process(name_p, free_host, method_p, host_p, opt_p);
    if ( m_ready_to_simulate ) 
    {
	handle->prepare_for_simulation();
    } else {
	m_process_table->push_front( handle );
    }
    return sc_process_handle(handle);
}
Exemplo n.º 3
0
sc_process_handle 
sc_simcontext::create_method_process( 
    const char* name_p, bool free_host, SC_ENTRY_FUNC method_p,         
    sc_process_host* host_p, const sc_spawn_options* opt_p )
{
    sc_method_handle handle = 
        new sc_method_process(name_p, free_host, method_p, host_p, opt_p);
    if ( m_ready_to_simulate ) {
	if ( !handle->dont_initialize() ) {
	    push_runnable_method( handle );
	}
    } else {
	m_process_table->push_front( handle );
    }
    return sc_process_handle(handle);
}