SystemC  2.3.2
Accellera SystemC proof-of-concept library
sc_core::sc_in< T > Class Template Reference

#include <sysc/communication/sc_signal_ports.h>

Inheritance diagram for sc_core::sc_in< T >:
Collaboration diagram for sc_core::sc_in< T >:

Public Types

typedef T data_type
 
typedef sc_signal_in_if< data_typeif_type
 
typedef sc_port< if_type, 1, SC_ONE_OR_MORE_BOUNDbase_type
 
typedef sc_in< data_typethis_type
 
typedef base_type::port_type base_port_type
 
typedef if_type in_if_type
 
typedef base_type in_port_type
 
typedef sc_signal_inout_if< data_typeinout_if_type
 
typedef sc_port< inout_if_type, 1, SC_ONE_OR_MORE_BOUNDinout_port_type
 
typedef this_type port_type
 
typedef unsigned phase_cb_mask
 

Public Member Functions

 sc_in ()
 
 sc_in (const char *name_)
 
 sc_in (const in_if_type &interface_)
 
 sc_in (const char *name_, const in_if_type &interface_)
 
 sc_in (in_port_type &parent_)
 
 sc_in (const char *name_, in_port_type &parent_)
 
 sc_in (inout_port_type &parent_)
 
 sc_in (const char *name_, inout_port_type &parent_)
 
 sc_in (this_type &parent_)
 
 sc_in (const char *name_, this_type &parent_)
 
virtual ~sc_in ()
 
SC_VIRTUAL_ void bind (const in_if_type &interface_)
 
SC_VIRTUAL_ void bind (in_if_type &interface_)
 
void operator() (const in_if_type &interface_)
 
SC_VIRTUAL_ void bind (in_port_type &parent_)
 
void operator() (in_port_type &parent_)
 
SC_VIRTUAL_ void bind (inout_port_type &parent_)
 
void operator() (inout_port_type &parent_)
 
const sc_eventdefault_event () const
 
const sc_eventvalue_changed_event () const
 
const data_typeread () const
 
 operator const data_type & () const
 
bool event () const
 
sc_event_findervalue_changed () const
 
virtual void end_of_elaboration ()
 
virtual const char * kind () const
 
void add_trace (sc_trace_file *, const std::string &) const
 
void add_trace_internal (sc_trace_file *, const std::string &) const
 
SC_VIRTUAL_ void bind (sc_signal_in_if< T > &interface_)
 
void operator() (sc_signal_in_if< T > &interface_)
 
void operator() (port_type &parent_)
 
int size () const
 
sc_signal_in_if< T > * operator-> ()
 
const sc_signal_in_if< T > * operator-> () const
 
const sc_signal_in_if< T > * get_interface (int iface_i) const
 
sc_signal_in_if< T > * get_interface (int iface_i)
 
virtual sc_interfaceget_interface ()
 
virtual const sc_interfaceget_interface () const
 
sc_signal_in_if< T > * operator[] (int index_)
 
const sc_signal_in_if< T > * operator[] (int index_) const
 
virtual sc_type_index get_interface_type () const
 
int bind_count ()
 
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

void remove_traces () const
 
virtual int vbind (sc_interface &)
 
virtual int vbind (sc_port_base &)
 
SC_VIRTUAL_ void bind (base_port_type &parent_)
 
void bind (sc_interface &interface_)
 
virtual void make_sensitive (sc_thread_handle, sc_event_finder *=0) const
 
virtual void make_sensitive (sc_method_handle, sc_event_finder *=0) const
 
virtual void before_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
 
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
 
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_trace_params_vecm_traces
 
sc_bind_info * m_bind_info
 

Detailed Description

template<class T>
class sc_core::sc_in< T >

Definition at line 86 of file sc_signal_ports.h.

Member Typedef Documentation

◆ base_port_type

template<class T>
typedef base_type::port_type sc_core::sc_in< T >::base_port_type

Definition at line 98 of file sc_signal_ports.h.

◆ base_type

template<class T>
typedef sc_port<if_type,1,SC_ONE_OR_MORE_BOUND> sc_core::sc_in< T >::base_type

Definition at line 96 of file sc_signal_ports.h.

◆ data_type

template<class T>
typedef T sc_core::sc_in< T >::data_type

Definition at line 93 of file sc_signal_ports.h.

◆ if_type

template<class T>
typedef sc_signal_in_if<data_type> sc_core::sc_in< T >::if_type

Definition at line 95 of file sc_signal_ports.h.

◆ in_if_type

template<class T>
typedef if_type sc_core::sc_in< T >::in_if_type

Definition at line 100 of file sc_signal_ports.h.

◆ in_port_type

template<class T>
typedef base_type sc_core::sc_in< T >::in_port_type

Definition at line 101 of file sc_signal_ports.h.

◆ inout_if_type

template<class T>
typedef sc_signal_inout_if<data_type> sc_core::sc_in< T >::inout_if_type

Definition at line 102 of file sc_signal_ports.h.

◆ inout_port_type

Definition at line 103 of file sc_signal_ports.h.

◆ phase_cb_mask

typedef unsigned sc_core::sc_object::phase_cb_mask
inherited

Definition at line 75 of file sc_object.h.

◆ port_type

Definition at line 280 of file sc_port.h.

◆ this_type

template<class T>
typedef sc_in<data_type> sc_core::sc_in< T >::this_type

Definition at line 97 of file sc_signal_ports.h.

Constructor & Destructor Documentation

◆ sc_in() [1/10]

template<class T>
sc_core::sc_in< T >::sc_in ( )
inline

Definition at line 109 of file sc_signal_ports.h.

◆ sc_in() [2/10]

template<class T>
sc_core::sc_in< T >::sc_in ( const char *  name_)
inlineexplicit

Definition at line 114 of file sc_signal_ports.h.

◆ sc_in() [3/10]

template<class T>
sc_core::sc_in< T >::sc_in ( const in_if_type interface_)
inlineexplicit

Definition at line 119 of file sc_signal_ports.h.

◆ sc_in() [4/10]

template<class T>
sc_core::sc_in< T >::sc_in ( const char *  name_,
const in_if_type interface_ 
)
inline

Definition at line 124 of file sc_signal_ports.h.

◆ sc_in() [5/10]

template<class T>
sc_core::sc_in< T >::sc_in ( in_port_type parent_)
inlineexplicit

Definition at line 129 of file sc_signal_ports.h.

◆ sc_in() [6/10]

template<class T>
sc_core::sc_in< T >::sc_in ( const char *  name_,
in_port_type parent_ 
)
inline

Definition at line 134 of file sc_signal_ports.h.

◆ sc_in() [7/10]

template<class T>
sc_core::sc_in< T >::sc_in ( inout_port_type parent_)
inlineexplicit

Definition at line 139 of file sc_signal_ports.h.

◆ sc_in() [8/10]

template<class T>
sc_core::sc_in< T >::sc_in ( const char *  name_,
inout_port_type parent_ 
)
inline

Definition at line 144 of file sc_signal_ports.h.

◆ sc_in() [9/10]

template<class T>
sc_core::sc_in< T >::sc_in ( this_type parent_)
inline

Definition at line 149 of file sc_signal_ports.h.

◆ sc_in() [10/10]

template<class T>
sc_core::sc_in< T >::sc_in ( const char *  name_,
this_type parent_ 
)
inline

Definition at line 154 of file sc_signal_ports.h.

◆ ~sc_in()

template<class T>
virtual sc_core::sc_in< T >::~sc_in ( )
inlinevirtual

Definition at line 162 of file sc_signal_ports.h.

Member Function Documentation

◆ add_attribute()

bool sc_core::sc_object::add_attribute ( sc_attr_base )
inherited

◆ add_child_event()

virtual void sc_core::sc_object::add_child_event ( sc_event event_p)
protectedvirtualinherited

◆ add_child_object()

virtual void sc_core::sc_object::add_child_object ( sc_object object_p)
protectedvirtualinherited

Reimplemented in sc_core::sc_process_b.

◆ add_static_event() [1/2]

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

◆ add_static_event() [2/2]

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

◆ add_trace()

template<class T >
void sc_core::sc_in< T >::add_trace ( sc_trace_file tf_,
const std::string &  name_ 
) const
inline

Definition at line 341 of file sc_signal_ports.h.

◆ add_trace_internal()

template<class T >
void sc_core::sc_in< T >::add_trace_internal ( sc_trace_file tf_,
const std::string &  name_ 
) const
inline

Definition at line 327 of file sc_signal_ports.h.

◆ attr_cltn() [1/2]

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

◆ attr_cltn() [2/2]

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

◆ basename()

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

◆ before_end_of_elaboration()

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

◆ bind() [1/7]

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

◆ bind() [2/7]

template<class T>
SC_VIRTUAL_ void sc_core::sc_in< T >::bind ( const in_if_type interface_)
inline

Definition at line 171 of file sc_signal_ports.h.

◆ bind() [3/7]

template<class T>
SC_VIRTUAL_ void sc_core::sc_in< T >::bind ( in_if_type interface_)
inline

Definition at line 174 of file sc_signal_ports.h.

◆ bind() [4/7]

template<class T>
SC_VIRTUAL_ void sc_core::sc_in< T >::bind ( in_port_type parent_)
inline

Definition at line 183 of file sc_signal_ports.h.

◆ bind() [5/7]

template<class T>
SC_VIRTUAL_ void sc_core::sc_in< T >::bind ( inout_port_type parent_)
inline

Definition at line 192 of file sc_signal_ports.h.

◆ bind() [6/7]

template<class T>
SC_VIRTUAL_ void sc_core::sc_in< T >::bind ( base_port_type parent_)
inlineprotected

Definition at line 273 of file sc_signal_ports.h.

◆ bind() [7/7]

SC_VIRTUAL_ void sc_core::sc_port_b< sc_signal_in_if< T > >::bind ( sc_signal_in_if< T > &  interface_)
inlineinherited

Definition at line 286 of file sc_port.h.

◆ bind_count()

int sc_core::sc_port_base::bind_count ( )
inherited

◆ default_event()

template<class T>
const sc_event& sc_core::sc_in< T >::default_event ( ) const
inline

Definition at line 203 of file sc_signal_ports.h.

◆ dump()

virtual void sc_core::sc_object::dump ( ::std::ostream &  os = ::std::cout) const
virtualinherited

◆ end_of_elaboration()

template<class T >
void sc_core::sc_in< T >::end_of_elaboration ( )
inlinevirtual

Reimplemented from sc_core::sc_port_base.

Reimplemented in sc_core::sc_in_rv< W >.

Definition at line 309 of file sc_signal_ports.h.

◆ end_of_simulation()

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

◆ event()

template<class T>
bool sc_core::sc_in< T >::event ( ) const
inline

Definition at line 224 of file sc_signal_ports.h.

◆ get_attribute() [1/2]

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

◆ get_attribute() [2/2]

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

◆ get_child_events()

virtual const std::vector<sc_event*>& sc_core::sc_object::get_child_events ( ) const
inlinevirtualinherited

Definition at line 114 of file sc_object.h.

◆ get_child_objects()

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

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

Definition at line 117 of file sc_object.h.

◆ get_interface() [1/4]

const sc_signal_in_if< T > * sc_core::sc_port_b< sc_signal_in_if< T > >::get_interface ( int  iface_i) const
inlineinherited

Definition at line 508 of file sc_port.h.

◆ get_interface() [2/4]

sc_signal_in_if< T > * sc_core::sc_port_b< sc_signal_in_if< T > >::get_interface ( int  iface_i)
inlineinherited

Definition at line 493 of file sc_port.h.

◆ get_interface() [3/4]

virtual sc_interface* sc_core::sc_port_b< sc_signal_in_if< T > >::get_interface ( )
inlinevirtualinherited

Implements sc_core::sc_port_base.

Definition at line 324 of file sc_port.h.

◆ get_interface() [4/4]

virtual const sc_interface* sc_core::sc_port_b< sc_signal_in_if< T > >::get_interface ( ) const
inlinevirtualinherited

Implements sc_core::sc_port_base.

Definition at line 327 of file sc_port.h.

◆ get_interface_type()

sc_type_index sc_core::sc_port_b< sc_signal_in_if< T > >::get_interface_type ( ) const
inlinevirtualinherited

Implements sc_core::sc_port_base.

Definition at line 578 of file sc_port.h.

◆ get_parent()

sc_object* sc_core::sc_object::get_parent ( ) const
inherited

◆ get_parent_object()

sc_object* sc_core::sc_object::get_parent_object ( ) const
inlineinherited

Definition at line 121 of file sc_object.h.

◆ kind()

template<class T>
virtual const char* sc_core::sc_in< T >::kind ( ) const
inlinevirtual

◆ make_sensitive() [1/2]

void sc_core::sc_port_b< sc_signal_in_if< T > >::make_sensitive ( sc_thread_handle  handle_p,
sc_event_finder event_finder_ = 0 
) const
protectedvirtualinherited

Reimplemented from sc_core::sc_port_base.

Definition at line 593 of file sc_port.h.

◆ make_sensitive() [2/2]

void sc_core::sc_port_b< sc_signal_in_if< T > >::make_sensitive ( sc_method_handle  handle_p,
sc_event_finder event_finder_ = 0 
) const
protectedvirtualinherited

Reimplemented from sc_core::sc_port_base.

Definition at line 614 of file sc_port.h.

◆ name()

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

Definition at line 77 of file sc_object.h.

◆ num_attributes()

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

◆ operator const data_type &()

template<class T>
sc_core::sc_in< T >::operator const data_type & ( ) const
inline

Definition at line 218 of file sc_signal_ports.h.

◆ operator()() [1/5]

template<class T>
void sc_core::sc_in< T >::operator() ( const in_if_type interface_)
inline

Definition at line 177 of file sc_signal_ports.h.

◆ operator()() [2/5]

template<class T>
void sc_core::sc_in< T >::operator() ( in_port_type parent_)
inline

Definition at line 186 of file sc_signal_ports.h.

◆ operator()() [3/5]

template<class T>
void sc_core::sc_in< T >::operator() ( inout_port_type parent_)
inline

Definition at line 195 of file sc_signal_ports.h.

◆ operator()() [4/5]

void sc_core::sc_port_b< sc_signal_in_if< T > >::operator() ( sc_signal_in_if< T > &  interface_)
inlineinherited

Definition at line 289 of file sc_port.h.

◆ operator()() [5/5]

void sc_core::sc_port_b< sc_signal_in_if< T > >::operator() ( port_type parent_)
inlineinherited

Definition at line 298 of file sc_port.h.

◆ operator->() [1/2]

sc_signal_in_if< T > * sc_core::sc_port_b< sc_signal_in_if< T > >::operator-> ( )
inlineinherited

Definition at line 465 of file sc_port.h.

◆ operator->() [2/2]

const sc_signal_in_if< T > * sc_core::sc_port_b< sc_signal_in_if< T > >::operator-> ( ) const
inlineinherited

Definition at line 477 of file sc_port.h.

◆ operator[]() [1/2]

sc_signal_in_if< T > * sc_core::sc_port_b< sc_signal_in_if< T > >::operator[] ( int  index_)
inlineinherited

Definition at line 316 of file sc_port.h.

◆ operator[]() [2/2]

const sc_signal_in_if< T > * sc_core::sc_port_b< sc_signal_in_if< T > >::operator[] ( int  index_) const
inlineinherited

Definition at line 318 of file sc_port.h.

◆ print()

virtual void sc_core::sc_object::print ( ::std::ostream &  os = ::std::cout) const
virtualinherited

◆ read()

template<class T>
const data_type& sc_core::sc_in< T >::read ( ) const
inline

Definition at line 215 of file sc_signal_ports.h.

◆ register_simulation_phase_callback()

phase_cb_mask sc_core::sc_object::register_simulation_phase_callback ( phase_cb_mask  )
protectedinherited

◆ remove_all_attributes()

void sc_core::sc_object::remove_all_attributes ( )
inherited

◆ remove_attribute()

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

◆ remove_child_event()

virtual bool sc_core::sc_object::remove_child_event ( sc_event event_p)
protectedvirtualinherited

◆ remove_child_object()

virtual bool sc_core::sc_object::remove_child_object ( sc_object object_p)
protectedvirtualinherited

Reimplemented in sc_core::sc_process_b.

◆ remove_traces()

template<class T >
void sc_core::sc_in< T >::remove_traces ( ) const
inlineprotected

Definition at line 351 of file sc_signal_ports.h.

◆ report_error()

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

◆ simcontext()

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

Definition at line 91 of file sc_object.h.

◆ size()

int sc_core::sc_port_b< sc_signal_in_if< T > >::size ( ) const
inlineinherited

Definition at line 304 of file sc_port.h.

◆ start_of_simulation()

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

◆ trace()

virtual void sc_core::sc_object::trace ( sc_trace_file tf) const
virtualinherited

◆ unregister_simulation_phase_callback()

phase_cb_mask sc_core::sc_object::unregister_simulation_phase_callback ( phase_cb_mask  )
protectedinherited

◆ value_changed()

template<class T>
sc_event_finder& sc_core::sc_in< T >::value_changed ( ) const
inline

Definition at line 230 of file sc_signal_ports.h.

◆ value_changed_event()

template<class T>
const sc_event& sc_core::sc_in< T >::value_changed_event ( ) const
inline

Definition at line 209 of file sc_signal_ports.h.

◆ vbind() [1/2]

template<class T >
int sc_core::sc_in< T >::vbind ( sc_interface interface_)
inlineprotectedvirtual

Reimplemented from sc_core::sc_port_b< sc_signal_in_if< T > >.

Definition at line 368 of file sc_signal_ports.h.

◆ vbind() [2/2]

template<class T >
int sc_core::sc_in< T >::vbind ( sc_port_base parent_)
inlineprotectedvirtual

Reimplemented from sc_core::sc_port_b< sc_signal_in_if< T > >.

Definition at line 376 of file sc_signal_ports.h.

Member Data Documentation

◆ m_bind_info

sc_bind_info* sc_core::sc_port_base::m_bind_info
protectedinherited

Definition at line 190 of file sc_port.h.

◆ m_traces

template<class T>
sc_trace_params_vec* sc_core::sc_in< T >::m_traces
mutableprotected

Definition at line 260 of file sc_signal_ports.h.


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