SystemC 3.0.0
Accellera SystemC proof-of-concept library
Public Member Functions | Friends | List of all members
sc_core::sc_cthread_process Class Reference

#include <sysc/kernel/sc_cthread_process.h>

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

Public Member Functions

 sc_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)
 
virtual void dont_initialize (bool dont)
 
virtual const char * kind () const
 
- Public Member Functions inherited from 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 const char * kind () const
 
- Public Member Functions inherited from sc_core::sc_process_b
 sc_process_b (const char *name_p, bool is_thread, bool free_host, sc_entry_func method_p, sc_process_host *host_p, const sc_spawn_options *opt_p)
 
int current_state ()
 
bool dont_initialize () const
 
virtual void dont_initialize (bool dont)
 
std::string dump_state () const
 
sc_curr_proc_kind proc_kind () const
 
sc_eventreset_event ()
 
sc_eventterminated_event ()
 
- Public Member Functions inherited from sc_core::sc_object_host
virtual const std::vector< sc_event * > & get_child_events () const
 
virtual const std::vector< sc_object * > & get_child_objects () const
 
- Public Member Functions inherited from sc_core::sc_object
const char * name () const
 
const char * basename () const
 
virtual void print (::std::ostream &os=::std::cout) const
 
virtual void dump (::std::ostream &os=::std::cout) const
 
virtual void trace (sc_trace_file *tf) const
 
virtual const char * kind () const
 
sc_simcontextsimcontext () const
 
bool add_attribute (sc_attr_base &)
 
sc_attr_baseget_attribute (const std::string &name_)
 
const sc_attr_baseget_attribute (const std::string &name_) const
 
sc_attr_baseremove_attribute (const std::string &name_)
 
void remove_all_attributes ()
 
int num_attributes () const
 
sc_attr_cltnattr_cltn ()
 
const sc_attr_cltnattr_cltn () const
 
virtual const std::vector< sc_event * > & get_child_events () const
 
virtual const std::vector< sc_object * > & get_child_objects () const
 
sc_objectget_parent () const
 
sc_objectget_parent_object () const
 
virtual ~sc_object ()
 

Friends

class sc_module
 
class sc_process_handle
 
class sc_process_table
 
class sc_thread_process
 
class sc_simcontext
 
void sc_cthread_cor_fn (void *)
 
void halt (sc_simcontext *)
 

Additional Inherited Members

- Public Types inherited from sc_core::sc_process_b
enum  process_throw_type {
  THROW_NONE = 0 , THROW_KILL , THROW_USER , THROW_ASYNC_RESET ,
  THROW_SYNC_RESET
}
 
enum  process_state {
  ps_bit_disabled = 1 , ps_bit_ready_to_run = 2 , ps_bit_suspended = 4 , ps_bit_zombie = 8 ,
  ps_normal = 0
}
 
enum  reset_type { reset_asynchronous = 0 , reset_synchronous_off , reset_synchronous_on }
 
enum  trigger_t {
  STATIC , EVENT , OR_LIST , AND_LIST ,
  TIMEOUT , EVENT_TIMEOUT , OR_LIST_TIMEOUT , AND_LIST_TIMEOUT
}
 
- Static Public Member Functions inherited from sc_core::sc_process_b
static sc_process_handle last_created_process_handle ()
 
- Public Attributes inherited from sc_core::sc_process_b
const char * file
 
int lineno
 
int proc_id
 
- Protected Types inherited from sc_core::sc_process_b
enum  spawn_t { SPAWN_ELAB = 0x0 , SPAWN_START = 0x1 , SPAWN_SIM = 0x2 }
 
- Protected Member Functions inherited from sc_core::sc_thread_process
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 *)
 
void trigger_static ()
 
void wait (const sc_event &)
 
void wait (const sc_event_or_list &)
 
void wait (const sc_event_and_list &)
 
void wait (const sc_time &)
 
void wait (const sc_time &, const sc_event &)
 
void wait (const sc_time &, const sc_event_or_list &)
 
void wait (const sc_time &, const sc_event_and_list &)
 
void wait_cycles (int n=1)
 
void add_monitor (sc_process_monitor *monitor_p)
 
void remove_monitor (sc_process_monitor *monitor_p)
 
void signal_monitors (int type=0)
 
- Protected Member Functions inherited from sc_core::sc_process_b
virtual ~sc_process_b ()
 
virtual void add_child_object (sc_object *)
 
virtual void add_child_event (sc_event *)
 
virtual bool remove_child_object (sc_object *)
 
virtual bool remove_child_event (sc_event *)
 
void add_static_event (const sc_event &)
 
bool dynamic () const
 
sc_reportget_last_report ()
 
bool is_disabled () const
 
bool is_runnable () const
 
void remove_dynamic_events (bool skip_timeout=false)
 
void remove_static_events ()
 
void set_last_report (sc_report *last_p)
 
bool timed_out () const
 
void report_error (const char *msgid, const char *msg="") const
 
void report_immediate_self_notification () const
 
virtual void disable_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)=0
 
void disconnect_process ()
 
virtual void enable_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)=0
 
void initially_in_reset (bool async)
 
bool is_unwinding () const
 
bool start_unwinding ()
 
bool clear_unwinding ()
 
virtual void kill_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)=0
 
void reset_changed (bool async, bool asserted)
 
void reset_process (reset_type rt, sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)
 
virtual void resume_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)=0
 
virtual void suspend_process (sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)=0
 
virtual void throw_user (const sc_throw_it_helper &helper, sc_descendant_inclusion_info descendants=SC_NO_DESCENDANTS)=0
 
virtual void throw_reset (bool async)=0
 
virtual bool terminated () const
 
void trigger_reset_event ()
 
void semantics ()
 
- Protected Member Functions inherited from sc_core::sc_object_host
 sc_object_host ()
 
 sc_object_host (const char *nm)
 
virtual ~sc_object_host ()
 
virtual hierarchy_scope get_hierarchy_scope ()
 
- Protected Member Functions inherited from sc_core::sc_object
 sc_object ()
 
 sc_object (const char *nm)
 
 sc_object (const sc_object &)
 
sc_objectoperator= (const sc_object &)
 
virtual hierarchy_scope get_hierarchy_scope ()
 
- Static Protected Member Functions inherited from sc_core::sc_process_b
static sc_process_blast_created_process_base ()
 
- Protected Attributes inherited from sc_core::sc_thread_process
sc_corm_cor_p
 
std::vector< sc_process_monitor * > m_monitor_q
 
std::size_t m_stack_size
 
int m_wait_cycle_n
 
- Protected Attributes inherited from sc_core::sc_process_b
int m_active_areset_n
 
int m_active_reset_n
 
bool m_dont_init
 
spawn_t m_dynamic_proc
 
const sc_eventm_event_p
 
int m_event_count
 
const sc_event_listm_event_list_p
 
sc_process_bm_exist_p
 
bool m_free_host
 
bool m_has_reset_signal
 
bool m_has_stack
 
bool m_is_thread
 
sc_reportm_last_report_p
 
sc_curr_proc_kind m_process_kind
 
int m_references_n
 
std::vector< sc_reset * > m_resets
 
sc_eventm_reset_event_p
 
sc_eventm_resume_event_p
 
sc_process_bm_runnable_p
 
sc_process_hostm_semantics_host_p
 
sc_entry_func m_semantics_method_p
 
int m_state
 
std::vector< const sc_event * > m_static_events
 
bool m_sticky_reset
 
sc_eventm_term_event_p
 
sc_throw_it_helperm_throw_helper_p
 
process_throw_type m_throw_status
 
bool m_timed_out
 
sc_eventm_timeout_event_p
 
trigger_t m_trigger_type
 
bool m_unwinding
 
bool m_unsuspendable
 
bool m_suspend_all_req
 
- Static Protected Attributes inherited from sc_core::sc_process_b
static sc_process_bm_last_created_process_p
 

Detailed Description

Definition at line 46 of file sc_cthread_process.h.

Constructor & Destructor Documentation

◆ sc_cthread_process()

sc_core::sc_cthread_process::sc_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 
)

Member Function Documentation

◆ dont_initialize()

virtual void sc_core::sc_cthread_process::dont_initialize ( bool  dont)
virtual

Reimplemented from sc_core::sc_process_b.

◆ kind()

virtual const char * sc_core::sc_cthread_process::kind ( ) const
inlinevirtual

Reimplemented from sc_core::sc_thread_process.

Definition at line 64 of file sc_cthread_process.h.

Friends And Related Function Documentation

◆ halt

void halt ( sc_simcontext )
friend

◆ sc_cthread_cor_fn

void sc_cthread_cor_fn ( void *  )
friend

◆ sc_module

friend class sc_module
friend

Definition at line 48 of file sc_cthread_process.h.

◆ sc_process_handle

friend class sc_process_handle
friend

Definition at line 49 of file sc_cthread_process.h.

◆ sc_process_table

friend class sc_process_table
friend

Definition at line 50 of file sc_cthread_process.h.

◆ sc_simcontext

friend class sc_simcontext
friend

Definition at line 52 of file sc_cthread_process.h.

◆ sc_thread_process

friend class sc_thread_process
friend

Definition at line 51 of file sc_cthread_process.h.


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