SystemC  Recoding Infrastructure for SystemC v0.6.3 derived from Accellera SystemC 2.3.1
Accellera SystemC proof-of-concept library
Classes | Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
sc_core::sc_object Class Reference

Abstract base class of all SystemC `simulation' objects. More...

#include <sysc/kernel/sc_object.h>

Inheritance diagram for sc_core::sc_object:
Inheritance graph
[legend]

Classes

class  hierarchy_scope
 

Public Types

typedef unsigned phase_cb_mask
 

Public Member Functions

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
 

Protected Member Functions

 sc_object ()
 
 sc_object (const char *nm)
 
 sc_object (const sc_object &)
 
sc_objectoperator= (const sc_object &)
 
virtual ~sc_object ()
 
virtual void add_child_event (sc_event *event_p)
 
virtual void add_child_object (sc_object *object_p)
 
virtual bool remove_child_event (sc_event *event_p)
 
virtual bool remove_child_object (sc_object *object_p)
 
phase_cb_mask register_simulation_phase_callback (phase_cb_mask)
 
phase_cb_mask unregister_simulation_phase_callback (phase_cb_mask)
 

Friends

class sc_event
 
class sc_module
 
class sc_channel
 
struct sc_invoke_method
 
class sc_module_dynalloc_list
 
class sc_object_manager
 
class sc_phase_callback_registry
 
class sc_process_b
 
class sc_runnable
 
class sc_simcontext
 
class sc_trace_file_base
 

Detailed Description

Abstract base class of all SystemC `simulation' objects.

Definition at line 51 of file sc_object.h.

Member Typedef Documentation

Definition at line 69 of file sc_object.h.

Constructor & Destructor Documentation

sc_core::sc_object::sc_object ( )
protected
sc_core::sc_object::sc_object ( const char *  nm)
protected
sc_core::sc_object::sc_object ( const sc_object )
protected
virtual sc_core::sc_object::~sc_object ( )
protectedvirtual

Member Function Documentation

bool sc_core::sc_object::add_attribute ( sc_attr_base )
virtual void sc_core::sc_object::add_child_event ( sc_event event_p)
protectedvirtual
virtual void sc_core::sc_object::add_child_object ( sc_object object_p)
protectedvirtual

Reimplemented in sc_core::sc_process_b.

sc_attr_cltn& sc_core::sc_object::attr_cltn ( )
const sc_attr_cltn& sc_core::sc_object::attr_cltn ( ) const
const char* sc_core::sc_object::basename ( ) const
virtual void sc_core::sc_object::dump ( ::std::ostream &  os = ::std::cout) const
virtual
sc_attr_base* sc_core::sc_object::get_attribute ( const std::string &  name_)
const sc_attr_base* sc_core::sc_object::get_attribute ( const std::string &  name_) const
virtual const std::vector<sc_event*>& sc_core::sc_object::get_child_events ( ) const
inlinevirtual

Definition at line 108 of file sc_object.h.

virtual const std::vector<sc_object*>& sc_core::sc_object::get_child_objects ( ) const
inlinevirtual

Reimplemented in sc_core::sc_process_b, and sc_core::sc_module.

Definition at line 111 of file sc_object.h.

sc_object* sc_core::sc_object::get_parent ( ) const
sc_object* sc_core::sc_object::get_parent_object ( ) const
inline

Definition at line 115 of file sc_object.h.

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

Reimplemented in sc_core::sc_out< T >, sc_core::sc_out< bool >, sc_core::sc_inout< sc_dt::sc_logic >, sc_core::sc_inout< bool >, sc_core::sc_inout< T >, sc_core::sc_inout< sc_dt::sc_lv< W > >, sc_core::sc_in< sc_dt::sc_logic >, sc_core::sc_channel, sc_core::sc_signal< sc_dt::sc_logic, POL >, sc_core::sc_in< bool >, sc_core::sc_signal< bool, POL >, sc_core::sc_port< IF, N, P >, sc_core::sc_port< sc_signal_inout_if< T >, 1, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_signal_in_if< bool >, 1, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_fifo_out_if< T >, 0, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_signal_inout_if< sc_dt::sc_logic >, 1, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_signal_inout_if< bool >, 1, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_signal_in_if< T >, 1, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_signal_in_if< sc_dt::sc_logic >, 1, SC_ONE_OR_MORE_BOUND >, sc_core::sc_port< sc_fifo_in_if< T >, 0, SC_ONE_OR_MORE_BOUND >, sc_core::sc_out_rv< W >, sc_core::sc_out_resolved, sc_core::sc_fifo_out< T >, sc_core::sc_in< T >, sc_core::sc_in< sc_dt::sc_lv< W > >, sc_core::sc_inout_rv< W >, sc_core::sc_inout_resolved, sc_core::sc_signal< T, POL >, sc_core::sc_signal< sc_dt::sc_lv< W >, SC_MANY_WRITERS >, sc_core::sc_signal< bool, SC_ONE_WRITER >, sc_core::sc_signal< sc_dt::sc_logic, SC_MANY_WRITERS >, sc_core::sc_export< IF >, sc_core::sc_fifo< T >, sc_core::sc_fifo_in< T >, sc_core::sc_method_process, sc_core::sc_signal_rv< W >, sc_core::sc_thread_process, sc_core::sc_in_rv< W >, sc_core::sc_vector_base, sc_core::sc_in_resolved, sc_core::sc_clock, sc_core::sc_module, sc_core::sc_event_queue, sc_core::sc_signal_resolved, sc_core::sc_port_base, sc_core::sc_prim_channel, sc_core::sc_buffer< T, POL >, sc_core::sc_semaphore, sc_core::sc_mutex, and sc_core::sc_cthread_process.

Definition at line 83 of file sc_object.h.

const char* sc_core::sc_object::name ( ) const
inline

Definition at line 71 of file sc_object.h.

int sc_core::sc_object::num_attributes ( ) const
sc_object & sc_core::sc_object::operator= ( const sc_object )
inlineprotected

Definition at line 160 of file sc_object.h.

virtual void sc_core::sc_object::print ( ::std::ostream &  os = ::std::cout) const
virtual
phase_cb_mask sc_core::sc_object::register_simulation_phase_callback ( phase_cb_mask  )
protected
void sc_core::sc_object::remove_all_attributes ( )
sc_attr_base* sc_core::sc_object::remove_attribute ( const std::string &  name_)
virtual bool sc_core::sc_object::remove_child_event ( sc_event event_p)
protectedvirtual
virtual bool sc_core::sc_object::remove_child_object ( sc_object object_p)
protectedvirtual

Reimplemented in sc_core::sc_process_b.

sc_simcontext* sc_core::sc_object::simcontext ( ) const
inline

Definition at line 85 of file sc_object.h.

virtual void sc_core::sc_object::trace ( sc_trace_file tf) const
virtual
phase_cb_mask sc_core::sc_object::unregister_simulation_phase_callback ( phase_cb_mask  )
protected

Friends And Related Function Documentation

friend class sc_channel
friend

Definition at line 57 of file sc_object.h.

friend class sc_event
friend

Definition at line 53 of file sc_object.h.

friend struct sc_invoke_method
friend

Definition at line 59 of file sc_object.h.

friend class sc_module
friend

Definition at line 54 of file sc_object.h.

friend class sc_module_dynalloc_list
friend

Definition at line 60 of file sc_object.h.

friend class sc_object_manager
friend

Definition at line 61 of file sc_object.h.

friend class sc_phase_callback_registry
friend

Definition at line 62 of file sc_object.h.

friend class sc_process_b
friend

Definition at line 63 of file sc_object.h.

friend class sc_runnable
friend

Definition at line 64 of file sc_object.h.

friend class sc_simcontext
friend

Definition at line 65 of file sc_object.h.

friend class sc_trace_file_base
friend

Definition at line 66 of file sc_object.h.


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