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

The sc_mutex primitive channel class. More...

#include <sysc/communication/sc_mutex.h>

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

Public Member Functions

 sc_mutex ()
 
 sc_mutex (const char *name_)
 
virtual ~sc_mutex ()
 
virtual int lock (int=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
virtual int trylock ()
 
virtual int unlock ()
 
virtual const char * kind () const
 
- Public Member Functions inherited from sc_core::sc_interface
virtual void register_port (sc_port_base &port_, const char *if_typename_)
 
virtual const sc_eventdefault_event () const
 
virtual ~sc_interface ()
 
- 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
 
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

bool in_use () const
 
- Protected Member Functions inherited from sc_core::sc_mutex_if
 sc_mutex_if ()
 
- Protected Member Functions inherited from sc_core::sc_interface
 sc_interface ()
 
- 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 ~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)
 

Protected Attributes

sc_process_bm_owner
 
sc_event m_free
 
CHNL_MTX_TYPE_ m_mutex
 A lock to protect concurrent communication through sc_mutex. More...
 

Additional Inherited Members

- Public Types inherited from sc_core::sc_object
typedef unsigned phase_cb_mask
 

Detailed Description

The sc_mutex primitive channel class.

Definition at line 46 of file sc_mutex.h.

Constructor & Destructor Documentation

sc_core::sc_mutex::sc_mutex ( )
sc_core::sc_mutex::sc_mutex ( const char *  name_)
explicit
virtual sc_core::sc_mutex::~sc_mutex ( )
virtual

Member Function Documentation

bool sc_core::sc_mutex::in_use ( ) const
inlineprotected

Definition at line 83 of file sc_mutex.h.

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

Reimplemented from sc_core::sc_object.

Definition at line 76 of file sc_mutex.h.

virtual int sc_core::sc_mutex::lock ( int  = -1)
virtual

A new parameter segment ID is added for the out-of-order simulation.

Implements sc_core::sc_mutex_if.

virtual int sc_core::sc_mutex::trylock ( )
virtual

Implements sc_core::sc_mutex_if.

virtual int sc_core::sc_mutex::unlock ( )
virtual

Implements sc_core::sc_mutex_if.

Member Data Documentation

sc_event sc_core::sc_mutex::m_free
protected

Definition at line 89 of file sc_mutex.h.

CHNL_MTX_TYPE_ sc_core::sc_mutex::m_mutex
mutableprotected

A lock to protect concurrent communication through sc_mutex.

Definition at line 95 of file sc_mutex.h.

sc_process_b* sc_core::sc_mutex::m_owner
protected

Definition at line 88 of file sc_mutex.h.


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