sc_core::sc_thread_process Class Reference

A thread process. More...

#include <sysc/kernel/sc_thread_process.h>

Inheritance diagram for sc_core::sc_thread_process:
Inheritance graph
[legend]
Collaboration diagram for sc_core::sc_thread_process:
Collaboration graph
[legend]

List of all members.

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_eventwaiting_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_corm_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_corget_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.

Detailed Description

A thread process.

Definition at line 96 of file sc_thread_process.h.


Constructor & Destructor Documentation

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]

Member Function Documentation

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.


Friends And Related Function Documentation

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]

Member Data Documentation

Definition at line 127 of file sc_thread_process.h.

Definition at line 239 of file sc_thread_process.h.

Definition at line 240 of file sc_thread_process.h.

Definition at line 241 of file sc_thread_process.h.

Definition at line 242 of file sc_thread_process.h.

Definition at line 126 of file sc_thread_process.h.


The documentation for this class was generated from the following file:

Generated on 31 Jul 2017 for SystemC by  doxygen 1.6.1