SystemC 3.0.0
Accellera SystemC proof-of-concept library
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
sc_core::sc_port_base Class Referenceabstract

#include <sysc/communication/sc_port.h>

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

Public Types

typedef sc_port_base this_type
 

Public Member Functions

int bind_count ()
 
virtual sc_interfaceget_interface ()=0
 
virtual const sc_interfaceget_interface () const =0
 
virtual const char * kind () const
 
virtual std::type_index get_interface_type () const =0
 
- 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 ()
 

Protected Member Functions

 sc_port_base (int max_size_, sc_port_policy policy=SC_ONE_OR_MORE_BOUND)
 
 sc_port_base (const char *name_, int max_size_, sc_port_policy policy=SC_ONE_OR_MORE_BOUND)
 
virtual ~sc_port_base ()
 
void bind (sc_interface &interface_)
 
void bind (this_type &parent_)
 
virtual int vbind (sc_interface &)=0
 
virtual int vbind (sc_port_base &)=0
 
virtual void before_end_of_elaboration ()
 
virtual void end_of_elaboration ()
 
virtual void start_of_simulation ()
 
virtual void end_of_simulation ()
 
void report_error (const char *id, const char *add_msg=0) const
 
virtual void make_sensitive (sc_thread_handle, sc_event_finder *=0) const
 
virtual void make_sensitive (sc_method_handle, sc_event_finder *=0) const
 
void add_static_event (sc_method_handle process_p, const sc_event &event) const
 
void add_static_event (sc_thread_handle process_p, const sc_event &event) const
 
- 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 ()
 

Protected Attributes

sc_bind_info * m_bind_info
 

Friends

class sc_module
 
class sc_port_registry
 
class sc_sensitive
 
class sc_sensitive_pos
 
class sc_sensitive_neg
 

Detailed Description

Definition at line 72 of file sc_port.h.

Member Typedef Documentation

◆ this_type

Definition at line 85 of file sc_port.h.

Constructor & Destructor Documentation

◆ sc_port_base() [1/2]

sc_core::sc_port_base::sc_port_base ( int  max_size_,
sc_port_policy  policy = SC_ONE_OR_MORE_BOUND 
)
explicitprotected

◆ sc_port_base() [2/2]

sc_core::sc_port_base::sc_port_base ( const char *  name_,
int  max_size_,
sc_port_policy  policy = SC_ONE_OR_MORE_BOUND 
)
protected

◆ ~sc_port_base()

virtual sc_core::sc_port_base::~sc_port_base ( )
protectedvirtual

Member Function Documentation

◆ add_static_event() [1/2]

void sc_core::sc_port_base::add_static_event ( sc_method_handle  process_p,
const sc_event event 
) const
protected

◆ add_static_event() [2/2]

void sc_core::sc_port_base::add_static_event ( sc_thread_handle  process_p,
const sc_event event 
) const
protected

◆ before_end_of_elaboration()

virtual void sc_core::sc_port_base::before_end_of_elaboration ( )
protectedvirtual

◆ bind() [1/2]

void sc_core::sc_port_base::bind ( sc_interface interface_)
protected

◆ bind() [2/2]

void sc_core::sc_port_base::bind ( this_type parent_)
protected

◆ bind_count()

int sc_core::sc_port_base::bind_count ( )

◆ end_of_elaboration()

virtual void sc_core::sc_port_base::end_of_elaboration ( )
protectedvirtual

◆ end_of_simulation()

virtual void sc_core::sc_port_base::end_of_simulation ( )
protectedvirtual

◆ get_interface() [1/2]

virtual const sc_interface * sc_core::sc_port_base::get_interface ( ) const
pure virtual

◆ get_interface() [2/2]

virtual sc_interface * sc_core::sc_port_base::get_interface ( )
pure virtual

◆ get_interface_type()

virtual std::type_index sc_core::sc_port_base::get_interface_type ( ) const
pure virtual

◆ kind()

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

◆ make_sensitive() [1/2]

virtual void sc_core::sc_port_base::make_sensitive ( sc_method_handle  ,
sc_event_finder = 0 
) const
protectedvirtual

◆ make_sensitive() [2/2]

virtual void sc_core::sc_port_base::make_sensitive ( sc_thread_handle  ,
sc_event_finder = 0 
) const
protectedvirtual

◆ report_error()

void sc_core::sc_port_base::report_error ( const char *  id,
const char *  add_msg = 0 
) const
protected

◆ start_of_simulation()

virtual void sc_core::sc_port_base::start_of_simulation ( )
protectedvirtual

◆ vbind() [1/2]

virtual int sc_core::sc_port_base::vbind ( sc_interface )
protectedpure virtual

◆ vbind() [2/2]

virtual int sc_core::sc_port_base::vbind ( sc_port_base )
protectedpure virtual

Friends And Related Function Documentation

◆ sc_module

friend class sc_module
friend

Definition at line 75 of file sc_port.h.

◆ sc_port_registry

friend class sc_port_registry
friend

Definition at line 76 of file sc_port.h.

◆ sc_sensitive

friend class sc_sensitive
friend

Definition at line 77 of file sc_port.h.

◆ sc_sensitive_neg

friend class sc_sensitive_neg
friend

Definition at line 79 of file sc_port.h.

◆ sc_sensitive_pos

friend class sc_sensitive_pos
friend

Definition at line 78 of file sc_port.h.

Member Data Documentation

◆ m_bind_info

sc_bind_info* sc_core::sc_port_base::m_bind_info
protected

Definition at line 184 of file sc_port.h.


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