sc_core::sc_method_process Class Reference

#include <sysc/kernel/sc_method_process.h>

Inheritance diagram for sc_core::sc_method_process:

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

Collaboration graph
[legend]

List of all members.

Public Types

enum  process_throw_type { THROW_NONE = 0, THROW_RESET }
enum  trigger_t {
  STATIC, EVENT, OR_LIST, AND_LIST,
  TIMEOUT, EVENT_TIMEOUT, OR_LIST_TIMEOUT, AND_LIST_TIMEOUT
}

Public Member Functions

 sc_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)
virtual ~sc_method_process ()
virtual const char * kind () const
bool dont_initialize () const
virtual void dont_initialize (bool dont)
const ::std::vector< sc_object * > & get_child_objects () const
 return child objects
sc_curr_proc_kind proc_kind () const
sc_eventterminated_event ()
const char * name () const
 return full name of sc_object
const char * basename () const
 return base name of sc_object (last part)
virtual void print (::std::ostream &os=::std::cout) const
 print object
virtual void dump (::std::ostream &os=::std::cout) const
 dump() is more detailed than print()
virtual void trace (sc_trace_file *tf) const
sc_simcontextsimcontext () const
bool add_attribute (sc_attr_base &)
 add attribute
sc_attr_baseget_attribute (const std::string &name_)
 get attribute by name
const sc_attr_baseget_attribute (const std::string &name_) const
 get attribute by name
sc_attr_baseremove_attribute (const std::string &name_)
 remove attribute by name
void remove_all_attributes ()
 remove all attributes
int num_attributes () const
 get the number of attributes
sc_attr_cltnattr_cltn ()
 get the attribute collection
const sc_attr_cltnattr_cltn () const
 get the attribute collection
sc_objectget_parent () const
 return parent object
sc_objectget_parent_object () const
 return parent object

Static Public Member Functions

static sc_process_handle last_created_process_handle ()

Public Attributes

const char * file
int lineno
int proc_id

Protected Member Functions

virtual void kill_process ()
sc_method_handle next_exist ()
sc_method_handle next_runnable ()
void clear_trigger ()
void next_trigger (const sc_event &)
void next_trigger (sc_event_or_list &)
void next_trigger (sc_event_and_list &)
void next_trigger (const sc_time &)
void next_trigger (const sc_time &, const sc_event &)
void next_trigger (const sc_time &, sc_event_or_list &)
void next_trigger (const sc_time &, sc_event_and_list &)
void set_next_exist (sc_method_handle next_p)
void set_next_runnable (sc_method_handle next_p)
void set_stack_size (std::size_t size)
bool trigger_dynamic (sc_event *)
bool timed_out () const
void add_static_event (const sc_event &)
bool dynamic () const
const char * gen_unique_name (const char *basename_, bool preserve_first)
sc_reportget_last_report ()
bool is_runnable ()
void set_last_report (sc_report *last_p)
void remove_static_events ()
bool trigger_static ()
void reset_changed ()
virtual bool terminated () const
void semantics ()

Static Protected Member Functions

static sc_process_blast_created_process_base ()

Protected Attributes

sc_corm_cor
std::size_t m_stack_size
std::vector< sc_process_monitor * > m_monitor_q
std::vector< sc_object * > m_child_objects
bool m_dont_init
bool m_dynamic_proc
const sc_eventm_event_p
int m_event_count
sc_event_listm_event_list_p
sc_process_bm_exist_p
bool m_free_host
sc_reportm_last_report_p
sc_name_genm_name_gen_p
sc_curr_proc_kind m_process_kind
int m_references_n
bool m_reset_level
sc_resetm_reset_p
sc_process_bm_runnable_p
sc_process_hostm_semantics_host_p
SC_ENTRY_FUNC m_semantics_method_p
std::vector< const sc_event * > m_static_events
sc_eventm_term_event_p
process_throw_type m_throw_type
bool m_timed_out
sc_eventm_timeout_event_p
trigger_t m_trigger_type
bool m_zombie

Static Protected Attributes

static sc_process_bm_delete_next_p = 0
static sc_process_bm_last_created_process_p = 0

Friends

class sc_event
class sc_module
class sc_process_table
class sc_process_handle
class sc_simcontext
class sc_runnable
void sc_method_cor_fn (void *)
void sc_cmethod_cor_fn (void *)
void sc_set_stack_size (sc_method_handle, std::size_t)
void next_trigger (sc_simcontext *)
void next_trigger (const sc_event &, sc_simcontext *)
void next_trigger (sc_event_or_list &, sc_simcontext *)
void next_trigger (sc_event_and_list &, sc_simcontext *)
void next_trigger (const sc_time &, sc_simcontext *)
void next_trigger (const sc_time &, const sc_event &, sc_simcontext *)
void next_trigger (const sc_time &, sc_event_or_list &, sc_simcontext *)
void next_trigger (const sc_time &, sc_event_and_list &, sc_simcontext *)


Detailed Description

Definition at line 96 of file sc_method_process.h.


Member Enumeration Documentation

Enumerator:
THROW_NONE 
THROW_RESET 

Definition at line 276 of file sc_process.h.

Enumerator:
STATIC 
EVENT 
OR_LIST 
AND_LIST 
TIMEOUT 
EVENT_TIMEOUT 
OR_LIST_TIMEOUT 
AND_LIST_TIMEOUT 

Definition at line 280 of file sc_process.h.


Constructor & Destructor Documentation

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

Definition at line 144 of file sc_method_process.cpp.

sc_core::sc_method_process::~sc_method_process (  )  [virtual]

Definition at line 208 of file sc_method_process.cpp.


Member Function Documentation

virtual const char* sc_core::sc_method_process::kind (  )  const [inline, virtual]

Reimplemented from sc_core::sc_object.

Definition at line 130 of file sc_method_process.h.

void sc_core::sc_method_process::kill_process (  )  [protected, virtual]

Reimplemented from sc_core::sc_process_b.

Definition at line 125 of file sc_method_process.cpp.

sc_method_handle sc_core::sc_method_process::next_exist (  )  [inline, protected]

Definition at line 247 of file sc_method_process.h.

sc_method_handle sc_core::sc_method_process::next_runnable (  )  [inline, protected]

Definition at line 260 of file sc_method_process.h.

void sc_core::sc_method_process::clear_trigger (  )  [protected]

Definition at line 68 of file sc_method_process.cpp.

void sc_core::sc_method_process::next_trigger ( const sc_event e  )  [inline, protected]

Definition at line 164 of file sc_method_process.h.

void sc_core::sc_method_process::next_trigger ( sc_event_or_list el  )  [inline, protected]

Definition at line 174 of file sc_method_process.h.

void sc_core::sc_method_process::next_trigger ( sc_event_and_list el  )  [inline, protected]

Definition at line 184 of file sc_method_process.h.

void sc_core::sc_method_process::next_trigger ( const sc_time t  )  [inline, protected]

Definition at line 195 of file sc_method_process.h.

void sc_core::sc_method_process::next_trigger ( const sc_time t,
const sc_event e 
) [inline, protected]

Definition at line 205 of file sc_method_process.h.

void sc_core::sc_method_process::next_trigger ( const sc_time t,
sc_event_or_list el 
) [inline, protected]

Definition at line 217 of file sc_method_process.h.

void sc_core::sc_method_process::next_trigger ( const sc_time t,
sc_event_and_list el 
) [inline, protected]

Definition at line 229 of file sc_method_process.h.

void sc_core::sc_method_process::set_next_exist ( sc_method_handle  next_p  )  [inline, protected]

Definition at line 241 of file sc_method_process.h.

void sc_core::sc_method_process::set_next_runnable ( sc_method_handle  next_p  )  [inline, protected]

Definition at line 254 of file sc_method_process.h.

void sc_core::sc_method_process::set_stack_size ( std::size_t  size  )  [protected]

bool sc_core::sc_method_process::trigger_dynamic ( sc_event e  )  [protected]

Definition at line 219 of file sc_method_process.cpp.

bool sc_core::sc_process_b::timed_out (  )  const [inline, protected, inherited]

Definition at line 535 of file sc_process.h.

bool sc_core::sc_process_b::dont_initialize (  )  const [inline, inherited]

Definition at line 299 of file sc_process.h.

void sc_core::sc_process_b::dont_initialize ( bool  dont  )  [virtual, inherited]

Reimplemented in sc_core::sc_cthread_process.

Definition at line 131 of file sc_process.cpp.

const ::std::vector< sc_object * > & sc_core::sc_process_b::get_child_objects (  )  const [inline, virtual, inherited]

return child objects

Reimplemented from sc_core::sc_object.

Definition at line 409 of file sc_process.h.

sc_curr_proc_kind sc_core::sc_process_b::proc_kind (  )  const [inline, inherited]

Definition at line 445 of file sc_process.h.

sc_event & sc_core::sc_process_b::terminated_event (  )  [inherited]

Definition at line 334 of file sc_process.cpp.

sc_process_handle sc_core::sc_process_b::last_created_process_handle (  )  [inline, static, inherited]

Definition at line 275 of file sc_process_handle.h.

void sc_core::sc_process_b::add_static_event ( const sc_event e  )  [protected, inherited]

Definition at line 88 of file sc_process.cpp.

bool sc_core::sc_process_b::dynamic (  )  const [inline, protected, inherited]

Definition at line 310 of file sc_process.h.

const char * sc_core::sc_process_b::gen_unique_name ( const char *  basename_,
bool  preserve_first 
) [protected, inherited]

Definition at line 142 of file sc_process.cpp.

sc_report* sc_core::sc_process_b::get_last_report (  )  [inline, protected, inherited]

Definition at line 312 of file sc_process.h.

bool sc_core::sc_process_b::is_runnable (  )  [inline, protected, inherited]

Definition at line 421 of file sc_process.h.

sc_process_b * sc_core::sc_process_b::last_created_process_base (  )  [inline, static, protected, inherited]

Definition at line 433 of file sc_process.h.

void sc_core::sc_process_b::set_last_report ( sc_report last_p  )  [inline, protected, inherited]

Definition at line 315 of file sc_process.h.

void sc_core::sc_process_b::remove_static_events (  )  [protected, inherited]

Definition at line 221 of file sc_process.cpp.

bool sc_core::sc_process_b::trigger_static (  )  [inline, protected, inherited]

Definition at line 551 of file sc_process.h.

void sc_core::sc_process_b::reset_changed (  )  [inline, protected, inherited]

Definition at line 492 of file sc_process.h.

bool sc_core::sc_process_b::terminated (  )  const [inline, protected, virtual, inherited]

Definition at line 524 of file sc_process.h.

void sc_core::sc_process_b::semantics (  )  [inline, protected, inherited]

Definition at line 506 of file sc_process.h.

const char* sc_core::sc_object::name (  )  const [inline, inherited]

return full name of sc_object

Definition at line 80 of file sc_object.h.

const char * sc_core::sc_object::basename (  )  const [inherited]

return base name of sc_object (last part)

Definition at line 95 of file sc_object.cpp.

void sc_core::sc_object::print ( ::std::ostream &  os = ::std::cout  )  const [virtual, inherited]

void sc_core::sc_object::dump ( ::std::ostream &  os = ::std::cout  )  const [virtual, inherited]

void sc_core::sc_object::trace ( sc_trace_file tf  )  const [virtual, inherited]

sc_simcontext* sc_core::sc_object::simcontext (  )  const [inline, inherited]

Definition at line 95 of file sc_object.h.

bool sc_core::sc_object::add_attribute ( sc_attr_base attribute_  )  [inherited]

add attribute

Definition at line 311 of file sc_object.cpp.

sc_attr_base * sc_core::sc_object::get_attribute ( const std::string &  name_  )  [inherited]

get attribute by name

Definition at line 321 of file sc_object.cpp.

const sc_attr_base * sc_core::sc_object::get_attribute ( const std::string &  name_  )  const [inherited]

get attribute by name

Definition at line 328 of file sc_object.cpp.

sc_attr_base * sc_core::sc_object::remove_attribute ( const std::string &  name_  )  [inherited]

remove attribute by name

Definition at line 338 of file sc_object.cpp.

void sc_core::sc_object::remove_all_attributes (  )  [inherited]

remove all attributes

Definition at line 350 of file sc_object.cpp.

int sc_core::sc_object::num_attributes (  )  const [inherited]

get the number of attributes

Definition at line 360 of file sc_object.cpp.

sc_attr_cltn & sc_core::sc_object::attr_cltn (  )  [inherited]

get the attribute collection

Definition at line 372 of file sc_object.cpp.

const sc_attr_cltn & sc_core::sc_object::attr_cltn (  )  const [inherited]

get the attribute collection

Definition at line 379 of file sc_object.cpp.

sc_object* sc_core::sc_object::get_parent (  )  const [inline, inherited]

return parent object

Definition at line 125 of file sc_object.h.

sc_object* sc_core::sc_object::get_parent_object (  )  const [inline, inherited]

return parent object

Definition at line 127 of file sc_object.h.


Friends And Related Function Documentation

friend class sc_event [friend]

Definition at line 100 of file sc_method_process.h.

friend class sc_module [friend]

Reimplemented from sc_core::sc_process_b.

Definition at line 101 of file sc_method_process.h.

friend class sc_process_table [friend]

Definition at line 102 of file sc_method_process.h.

friend class sc_process_handle [friend]

Reimplemented from sc_core::sc_process_b.

Definition at line 103 of file sc_method_process.h.

friend class sc_simcontext [friend]

Reimplemented from sc_core::sc_process_b.

Definition at line 104 of file sc_method_process.h.

friend class sc_runnable [friend]

Reimplemented from sc_core::sc_process_b.

Definition at line 105 of file sc_method_process.h.

void sc_method_cor_fn ( void *   )  [friend]

void sc_cmethod_cor_fn ( void *   )  [friend]

void sc_set_stack_size ( sc_method_handle  ,
std::size_t   
) [friend]

void next_trigger ( sc_simcontext  )  [friend]

void next_trigger ( const sc_event ,
sc_simcontext  
) [friend]

void next_trigger ( sc_event_or_list ,
sc_simcontext  
) [friend]

void next_trigger ( sc_event_and_list ,
sc_simcontext  
) [friend]

void next_trigger ( const sc_time ,
sc_simcontext  
) [friend]

void next_trigger ( const sc_time ,
const sc_event ,
sc_simcontext  
) [friend]

void next_trigger ( const sc_time ,
sc_event_or_list ,
sc_simcontext  
) [friend]

void next_trigger ( const sc_time ,
sc_event_and_list ,
sc_simcontext  
) [friend]


Member Data Documentation

Definition at line 151 of file sc_method_process.h.

Definition at line 152 of file sc_method_process.h.

Definition at line 153 of file sc_method_process.h.

const char* sc_core::sc_process_b::file [inherited]

Definition at line 344 of file sc_process.h.

Definition at line 345 of file sc_process.h.

Definition at line 346 of file sc_process.h.

std::vector<sc_object*> sc_core::sc_process_b::m_child_objects [protected, inherited]

Definition at line 349 of file sc_process.h.

bool sc_core::sc_process_b::m_dont_init [protected, inherited]

Definition at line 350 of file sc_process.h.

bool sc_core::sc_process_b::m_dynamic_proc [protected, inherited]

Definition at line 351 of file sc_process.h.

const sc_event* sc_core::sc_process_b::m_event_p [protected, inherited]

Definition at line 352 of file sc_process.h.

int sc_core::sc_process_b::m_event_count [protected, inherited]

Definition at line 353 of file sc_process.h.

Definition at line 354 of file sc_process.h.

Definition at line 355 of file sc_process.h.

bool sc_core::sc_process_b::m_free_host [protected, inherited]

Definition at line 356 of file sc_process.h.

Definition at line 357 of file sc_process.h.

Definition at line 358 of file sc_process.h.

Definition at line 359 of file sc_process.h.

int sc_core::sc_process_b::m_references_n [protected, inherited]

Definition at line 360 of file sc_process.h.

bool sc_core::sc_process_b::m_reset_level [protected, inherited]

Definition at line 361 of file sc_process.h.

sc_reset* sc_core::sc_process_b::m_reset_p [protected, inherited]

Definition at line 362 of file sc_process.h.

Definition at line 363 of file sc_process.h.

Definition at line 364 of file sc_process.h.

Definition at line 365 of file sc_process.h.

std::vector<const sc_event*> sc_core::sc_process_b::m_static_events [protected, inherited]

Definition at line 366 of file sc_process.h.

Definition at line 367 of file sc_process.h.

Definition at line 368 of file sc_process.h.

bool sc_core::sc_process_b::m_timed_out [protected, inherited]

Definition at line 369 of file sc_process.h.

Definition at line 370 of file sc_process.h.

Definition at line 371 of file sc_process.h.

bool sc_core::sc_process_b::m_zombie [protected, inherited]

Definition at line 372 of file sc_process.h.

sc_process_b * sc_core::sc_process_b::m_delete_next_p = 0 [static, protected, inherited]

Definition at line 375 of file sc_process.h.

sc_process_b * sc_core::sc_process_b::m_last_created_process_p = 0 [static, protected, inherited]

Definition at line 376 of file sc_process.h.


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

Generated on Wed Jan 21 15:32:14 2009 for SystemC by  doxygen 1.5.5