A thread process. More...
#include <sysc/kernel/sc_thread_process.h>
Public Member Functions | |
sc_thread_process (const char *name_p, bool free_host, SC_ENTRY_FUNC method_p, sc_process_host *host_p, const sc_spawn_options *opt_p) | |
virtual const char * | kind () const |
bool | is_and_list_triggered () |
return true if the thread is and_list_event triggered | |
void | aux_boundary () |
Public Attributes | |
sc_event * | waiting_event |
sc_timestamp | first_triggerable_time |
Protected Member Functions | |
virtual | ~sc_thread_process () |
virtual void | disable_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS) |
virtual void | enable_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS) |
virtual void | kill_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS) |
sc_thread_handle | next_exist () |
sc_thread_handle | next_runnable () |
virtual void | prepare_for_simulation () |
virtual void | resume_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS) |
void | set_next_exist (sc_thread_handle next_p) |
void | set_next_runnable (sc_thread_handle next_p) |
void | set_stack_size (std::size_t size) |
void | suspend_me () |
virtual void | suspend_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS) |
virtual void | throw_reset (bool async) |
virtual void | throw_user (const sc_throw_it_helper &helper, sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS) |
bool | trigger_dynamic (sc_event *) |
bool | can_be_triggered (sc_timestamp, sc_event *, int) |
void | trigger_static (sc_event *) |
A new parameter is added to update the local time stamp in the thread process. | |
void | wait (const sc_event &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_event_or_list &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_event_and_list &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, const sc_event &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, const sc_event_or_list &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, const sc_event_and_list &, int) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait_cycles (int, int n=1) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | add_monitor (sc_process_monitor *monitor_p) |
void | remove_monitor (sc_process_monitor *monitor_p) |
void | signal_monitors (int type=0) |
Protected Attributes | |
sc_cor * | m_cor_p |
std::vector< sc_process_monitor * > | m_monitor_q |
std::size_t | m_stack_size |
int | m_wait_cycle_n |
Friends | |
class | sc_event |
class | sc_join |
class | sc_module |
class | sc_channel |
class | sc_process_b |
class | sc_process_handle |
class | sc_process_table |
class | sc_simcontext |
class | sc_runnable |
void | sc_thread_cor_fn (void *) |
void | sc_set_stack_size (sc_thread_handle, std::size_t) |
sc_cor * | get_cor_pointer (sc_process_b *process_p) |
void | wait (int, sc_simcontext *) |
void | wait (const sc_event &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_event_or_list &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_event_and_list &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, const sc_event &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, const sc_event_or_list &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. | |
void | wait (const sc_time &, const sc_event_and_list &, int, sc_simcontext *) |
A new parameter segment ID is added for the out-of-order simulation. |
A thread process.
Definition at line 96 of file sc_thread_process.h.
sc_core::sc_thread_process::sc_thread_process | ( | const char * | name_p, | |
bool | free_host, | |||
SC_ENTRY_FUNC | method_p, | |||
sc_process_host * | host_p, | |||
const sc_spawn_options * | opt_p | |||
) |
virtual sc_core::sc_thread_process::~sc_thread_process | ( | ) | [protected, virtual] |
void sc_core::sc_thread_process::add_monitor | ( | sc_process_monitor * | monitor_p | ) | [inline, protected] |
Definition at line 791 of file sc_thread_process.h.
void sc_core::sc_thread_process::aux_boundary | ( | ) | [inline] |
Definition at line 447 of file sc_thread_process.h.
bool sc_core::sc_thread_process::can_be_triggered | ( | sc_timestamp | , | |
sc_event * | , | |||
int | ||||
) | [protected] |
virtual void sc_core::sc_thread_process::disable_process | ( | sc_descendant_inclusion_info | descendants = SC_NO_DESCENDANTS |
) | [protected, virtual] |
Implements sc_core::sc_process_b.
virtual void sc_core::sc_thread_process::enable_process | ( | sc_descendant_inclusion_info | descendants = SC_NO_DESCENDANTS |
) | [protected, virtual] |
Implements sc_core::sc_process_b.
bool sc_core::sc_thread_process::is_and_list_triggered | ( | ) |
return true if the thread is and_list_event triggered
virtual void sc_core::sc_thread_process::kill_process | ( | sc_descendant_inclusion_info | descendants = SC_NO_DESCENDANTS |
) | [protected, virtual] |
Implements sc_core::sc_process_b.
virtual const char* sc_core::sc_thread_process::kind | ( | ) | const [inline, virtual] |
Reimplemented from sc_core::sc_object.
Reimplemented in sc_core::sc_cthread_process.
Definition at line 132 of file sc_thread_process.h.
sc_thread_handle sc_core::sc_thread_process::next_exist | ( | ) | [inline, protected] |
Definition at line 819 of file sc_thread_process.h.
sc_thread_handle sc_core::sc_thread_process::next_runnable | ( | ) | [inline, protected] |
Definition at line 831 of file sc_thread_process.h.
virtual void sc_core::sc_thread_process::prepare_for_simulation | ( | ) | [protected, virtual] |
void sc_core::sc_thread_process::remove_monitor | ( | sc_process_monitor * | monitor_p | ) | [inline, protected] |
Definition at line 798 of file sc_thread_process.h.
virtual void sc_core::sc_thread_process::resume_process | ( | sc_descendant_inclusion_info | descendants = SC_NO_DESCENDANTS |
) | [protected, virtual] |
Implements sc_core::sc_process_b.
void sc_core::sc_thread_process::set_next_exist | ( | sc_thread_handle | next_p | ) | [inline, protected] |
Definition at line 813 of file sc_thread_process.h.
void sc_core::sc_thread_process::set_next_runnable | ( | sc_thread_handle | next_p | ) | [inline, protected] |
Definition at line 825 of file sc_thread_process.h.
void sc_core::sc_thread_process::set_stack_size | ( | std::size_t | size | ) | [inline, protected] |
Definition at line 254 of file sc_thread_process.h.
void sc_core::sc_thread_process::signal_monitors | ( | int | type = 0 |
) | [protected] |
void sc_core::sc_thread_process::suspend_me | ( | ) | [inline, protected] |
Definition at line 279 of file sc_thread_process.h.
virtual void sc_core::sc_thread_process::suspend_process | ( | sc_descendant_inclusion_info | descendants = SC_NO_DESCENDANTS |
) | [protected, virtual] |
Implements sc_core::sc_process_b.
virtual void sc_core::sc_thread_process::throw_reset | ( | bool | async | ) | [protected, virtual] |
Implements sc_core::sc_process_b.
virtual void sc_core::sc_thread_process::throw_user | ( | const sc_throw_it_helper & | helper, | |
sc_descendant_inclusion_info | descendants = SC_NO_DESCENDANTS | |||
) | [protected, virtual] |
Implements sc_core::sc_process_b.
bool sc_core::sc_thread_process::trigger_dynamic | ( | sc_event * | ) | [protected] |
void sc_core::sc_thread_process::trigger_static | ( | sc_event * | e | ) | [inline, protected] |
A new parameter is added to update the local time stamp in the thread process.
Definition at line 856 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_time & | t, | |
const sc_event_and_list & | el, | |||
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 716 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_time & | t, | |
const sc_event_or_list & | el, | |||
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 683 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_time & | t, | |
const sc_event & | e, | |||
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 650 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_time & | t, | |
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 605 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_event_and_list & | el, | |
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 565 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_event_or_list & | el, | |
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 534 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait | ( | const sc_event & | e, | |
int | seg_id | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 489 of file sc_thread_process.h.
void sc_core::sc_thread_process::wait_cycles | ( | int | seg_id, | |
int | n = 1 | |||
) | [inline, protected] |
A new parameter segment ID is added for the out-of-order simulation.
Definition at line 759 of file sc_thread_process.h.
sc_cor* get_cor_pointer | ( | sc_process_b * | process_p | ) | [friend] |
friend class sc_channel [friend] |
Reimplemented from sc_core::sc_process_b.
Reimplemented in sc_core::sc_cthread_process.
Definition at line 104 of file sc_thread_process.h.
friend class sc_event [friend] |
Reimplemented from sc_core::sc_object.
Definition at line 99 of file sc_thread_process.h.
friend class sc_join [friend] |
Definition at line 100 of file sc_thread_process.h.
friend class sc_module [friend] |
Reimplemented from sc_core::sc_process_b.
Reimplemented in sc_core::sc_cthread_process.
Definition at line 101 of file sc_thread_process.h.
friend class sc_process_b [friend] |
Reimplemented from sc_core::sc_object.
Definition at line 106 of file sc_thread_process.h.
friend class sc_process_handle [friend] |
Reimplemented from sc_core::sc_process_b.
Reimplemented in sc_core::sc_cthread_process.
Definition at line 107 of file sc_thread_process.h.
friend class sc_process_table [friend] |
Reimplemented in sc_core::sc_cthread_process.
Definition at line 108 of file sc_thread_process.h.
friend class sc_runnable [friend] |
Reimplemented from sc_core::sc_process_b.
Definition at line 110 of file sc_thread_process.h.
void sc_set_stack_size | ( | sc_thread_handle | , | |
std::size_t | ||||
) | [friend] |
friend class sc_simcontext [friend] |
Reimplemented from sc_core::sc_process_b.
Reimplemented in sc_core::sc_cthread_process.
Definition at line 109 of file sc_thread_process.h.
void sc_thread_cor_fn | ( | void * | ) | [friend] |
Reimplemented from sc_core::sc_process_b.
void wait | ( | const sc_time & | , | |
const sc_event_and_list & | , | |||
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | const sc_time & | , | |
const sc_event_or_list & | , | |||
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | const sc_time & | , | |
const sc_event & | , | |||
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | const sc_time & | , | |
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | const sc_event_and_list & | , | |
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | const sc_event_or_list & | , | |
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | const sc_event & | , | |
int | , | |||
sc_simcontext * | ||||
) | [friend] |
A new parameter segment ID is added for the out-of-order simulation.
void wait | ( | int | , | |
sc_simcontext * | ||||
) | [friend] |
Definition at line 127 of file sc_thread_process.h.
sc_cor* sc_core::sc_thread_process::m_cor_p [protected] |
Definition at line 239 of file sc_thread_process.h.
std::vector<sc_process_monitor*> sc_core::sc_thread_process::m_monitor_q [protected] |
Definition at line 240 of file sc_thread_process.h.
std::size_t sc_core::sc_thread_process::m_stack_size [protected] |
Definition at line 241 of file sc_thread_process.h.
int sc_core::sc_thread_process::m_wait_cycle_n [protected] |
Definition at line 242 of file sc_thread_process.h.
Definition at line 126 of file sc_thread_process.h.