SystemC  Recoding Infrastructure for SystemC v0.6.2 derived from Accellera SystemC 2.3.1
Accellera SystemC proof-of-concept library
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
sc_core::sc_signal< T, POL > Class Template Reference

#include <sysc/communication/sc_signal.h>

Inheritance diagram for sc_core::sc_signal< T, POL >:
Inheritance graph
[legend]
Collaboration diagram for sc_core::sc_signal< T, POL >:
Collaboration graph
[legend]

Public Member Functions

 sc_signal ()
 
 sc_signal (const char *name_)
 
 sc_signal (const char *name_, const T &initial_value_)
 
virtual ~sc_signal ()
 
virtual void register_port (sc_port_base &, const char *)
 
virtual sc_writer_policy get_writer_policy () const
 
virtual const sc_eventdefault_event () const
 
virtual const sc_eventvalue_changed_event () const
 
virtual const T & read () const
 
virtual const T & get_data_ref () const
 
virtual bool event () const
 
virtual void write (const T &)
 
 operator const T & () const
 
this_typeoperator= (const T &a)
 
this_typeoperator= (const sc_signal_in_if< T > &a)
 
this_typeoperator= (const this_type &a)
 
const T & get_new_value () const
 
void trace (sc_trace_file *tf) const
 
virtual void print (::std::ostream &=::std::cout) const
 
virtual void dump (::std::ostream &=::std::cout) const
 
virtual const char * kind () const
 
- Public Member Functions inherited from sc_core::sc_interface
virtual ~sc_interface ()
 
- Public Member Functions inherited from sc_core::sc_signal_write_if< T >
 sc_signal_write_if ()
 
- Public Member Functions inherited from sc_core::sc_prim_channel
bool update_requested ()
 
void request_update ()
 
void async_request_update ()
 
- Public Member Functions inherited from sc_core::sc_object
const char * name () const
 
const char * basename () 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 Types

typedef sc_signal_inout_if< T > if_type
 
typedef sc_signal< T, POL > this_type
 
typedef sc_writer_policy_check
< POL > 
policy_type
 

Protected Member Functions

virtual void update ()
 The update method (does nothing by default). More...
 
void do_update ()
 
- Protected Member Functions inherited from sc_core::sc_signal_inout_if< T >
 sc_signal_inout_if ()
 
- Protected Member Functions inherited from sc_core::sc_signal_in_if< T >
 sc_signal_in_if ()
 
- Protected Member Functions inherited from sc_core::sc_interface
 sc_interface ()
 
- Protected Member Functions inherited from sc_core::sc_prim_channel
 sc_prim_channel ()
 
 sc_prim_channel (const char *)
 
virtual ~sc_prim_channel ()
 
virtual void before_end_of_elaboration ()
 
virtual void end_of_elaboration ()
 
virtual void start_of_simulation ()
 
virtual void end_of_simulation ()
 
void wait (int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_event &e, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_event_or_list &el, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_event_and_list &el, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_time &t, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (double v, sc_time_unit tu, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_time &t, const sc_event &e, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (double v, sc_time_unit tu, const sc_event &e, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_time &t, const sc_event_or_list &el, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (double v, sc_time_unit tu, const sc_event_or_list &el, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (const sc_time &t, const sc_event_and_list &el, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (double v, sc_time_unit tu, const sc_event_and_list &el, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void wait (int n, int seg_id=-1)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger ()
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_event &e)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_event_or_list &el)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_event_and_list &el)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_time &t)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (double v, sc_time_unit tu)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_time &t, const sc_event &e)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (double v, sc_time_unit tu, const sc_event &e)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_time &t, const sc_event_or_list &el)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (double v, sc_time_unit tu, const sc_event_or_list &el)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (const sc_time &t, const sc_event_and_list &el)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
void next_trigger (double v, sc_time_unit tu, const sc_event_and_list &el)
 A new parameter segment ID is added for the out-of-order simulation. More...
 
bool timed_out ()
 
- 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_eventm_change_event_p
 
m_cur_val
 
sc_dt::uint64 m_change_stamp
 
m_new_val
 
- Protected Attributes inherited from sc_core::sc_prim_channel
CHNL_MTX_TYPE_ m_mutex
 A mutex to protect concurrent communication. More...
 

Additional Inherited Members

- Public Types inherited from sc_core::sc_prim_channel
enum  { list_end = 0xdb }
 
- Public Types inherited from sc_core::sc_object
typedef unsigned phase_cb_mask
 

Detailed Description

template<class T, sc_writer_policy POL>
class sc_core::sc_signal< T, POL >

Definition at line 72 of file sc_signal.h.

Member Typedef Documentation

template<class T, sc_writer_policy POL>
typedef sc_signal_inout_if<T> sc_core::sc_signal< T, POL >::if_type
protected

Definition at line 78 of file sc_signal.h.

template<class T, sc_writer_policy POL>
typedef sc_writer_policy_check<POL> sc_core::sc_signal< T, POL >::policy_type
protected

Definition at line 80 of file sc_signal.h.

template<class T, sc_writer_policy POL>
typedef sc_signal<T,POL> sc_core::sc_signal< T, POL >::this_type
protected

Definition at line 79 of file sc_signal.h.

Constructor & Destructor Documentation

template<class T, sc_writer_policy POL>
sc_core::sc_signal< T, POL >::sc_signal ( )
inline

Definition at line 84 of file sc_signal.h.

template<class T, sc_writer_policy POL>
sc_core::sc_signal< T, POL >::sc_signal ( const char *  name_)
inlineexplicit

Definition at line 90 of file sc_signal.h.

template<class T, sc_writer_policy POL>
sc_core::sc_signal< T, POL >::sc_signal ( const char *  name_,
const T &  initial_value_ 
)
inline

Definition at line 96 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual sc_core::sc_signal< T, POL >::~sc_signal ( )
inlinevirtual

Definition at line 104 of file sc_signal.h.

Member Function Documentation

template<class T, sc_writer_policy POL>
virtual const sc_event& sc_core::sc_signal< T, POL >::default_event ( ) const
inlinevirtual

Reimplemented from sc_core::sc_interface.

Definition at line 118 of file sc_signal.h.

template<class T , sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::do_update ( )
protected

Definition at line 294 of file sc_signal.h.

template<class T , sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::dump ( ::std::ostream &  os = ::std::cout) const
virtual

Reimplemented from sc_core::sc_object.

Definition at line 269 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual bool sc_core::sc_signal< T, POL >::event ( ) const
inlinevirtual

Implements sc_core::sc_signal_in_if< T >.

Definition at line 150 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual const T& sc_core::sc_signal< T, POL >::get_data_ref ( ) const
inlinevirtual

Implements sc_core::sc_signal_in_if< T >.

Definition at line 138 of file sc_signal.h.

template<class T, sc_writer_policy POL>
const T& sc_core::sc_signal< T, POL >::get_new_value ( ) const
inline

Definition at line 173 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual sc_writer_policy sc_core::sc_signal< T, POL >::get_writer_policy ( ) const
inlinevirtual

Reimplemented from sc_core::sc_signal_write_if< T >.

Definition at line 114 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual const char* sc_core::sc_signal< T, POL >::kind ( ) const
inlinevirtual
template<class T, sc_writer_policy POL>
sc_core::sc_signal< T, POL >::operator const T & ( ) const
inline

Definition at line 159 of file sc_signal.h.

template<class T, sc_writer_policy POL>
this_type& sc_core::sc_signal< T, POL >::operator= ( const T &  a)
inline

Definition at line 163 of file sc_signal.h.

template<class T, sc_writer_policy POL>
this_type& sc_core::sc_signal< T, POL >::operator= ( const sc_signal_in_if< T > &  a)
inline

Definition at line 166 of file sc_signal.h.

template<class T, sc_writer_policy POL>
this_type& sc_core::sc_signal< T, POL >::operator= ( const this_type a)
inline

Definition at line 169 of file sc_signal.h.

template<class T , sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::print ( ::std::ostream &  os = ::std::cout) const
inlinevirtual

Reimplemented from sc_core::sc_object.

Definition at line 262 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual const T& sc_core::sc_signal< T, POL >::read ( ) const
inlinevirtual

Implements sc_core::sc_signal_in_if< T >.

Definition at line 134 of file sc_signal.h.

template<class T , sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::register_port ( sc_port_base port_,
const char *  if_typename_ 
)
inlinevirtual

Reimplemented from sc_core::sc_interface.

Reimplemented in sc_core::sc_signal_rv< W >, sc_core::sc_clock, and sc_core::sc_signal_resolved.

Definition at line 227 of file sc_signal.h.

template<class T, sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::trace ( sc_trace_file tf) const
inlinevirtual

Reimplemented from sc_core::sc_object.

Definition at line 185 of file sc_signal.h.

template<class T , sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::update ( )
protectedvirtual

The update method (does nothing by default).

This function is not supported by the out-of-order simulation in the current release.

Reimplemented from sc_core::sc_prim_channel.

Reimplemented in sc_core::sc_signal_rv< W >, sc_core::sc_signal_resolved, and sc_core::sc_buffer< T, POL >.

Definition at line 284 of file sc_signal.h.

template<class T, sc_writer_policy POL>
virtual const sc_event& sc_core::sc_signal< T, POL >::value_changed_event ( ) const
inlinevirtual

Implements sc_core::sc_signal_in_if< T >.

Definition at line 122 of file sc_signal.h.

template<class T, sc_writer_policy POL>
void sc_core::sc_signal< T, POL >::write ( const T &  value_)
inlinevirtual

Member Data Documentation

template<class T, sc_writer_policy POL>
sc_event* sc_core::sc_signal< T, POL >::m_change_event_p
mutableprotected

Definition at line 209 of file sc_signal.h.

template<class T, sc_writer_policy POL>
sc_dt::uint64 sc_core::sc_signal< T, POL >::m_change_stamp
protected

Definition at line 211 of file sc_signal.h.

template<class T, sc_writer_policy POL>
T sc_core::sc_signal< T, POL >::m_cur_val
protected

Definition at line 210 of file sc_signal.h.

template<class T, sc_writer_policy POL>
T sc_core::sc_signal< T, POL >::m_new_val
protected

Definition at line 212 of file sc_signal.h.


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