scc 2025.09
SystemC components library
scc::sc_out_opt< T > Class Template Reference

A template class for an optional input port with optimized binding. More...

#include <signal_opt_ports.h>

Inheritance diagram for scc::sc_out_opt< T >:
Collaboration diagram for scc::sc_out_opt< T >:

Public Types

typedef T data_type
typedef sc_out_opt< data_type > this_type
typedef sc_inout_opt< data_type > base_type
typedef base_type::in_if_type in_if_type
typedef base_type::in_port_type in_port_type
typedef base_type::inout_if_type inout_if_type
typedef base_type::inout_port_type inout_port_type
Public Types inherited from scc::sc_inout_opt< T >
typedef T data_type
typedef sc_core::sc_signal_inout_if< data_type > if_type
typedef sc_core::sc_port< if_type, 1, sc_core::SC_ZERO_OR_MORE_BOUND > base_type
typedef sc_inout_opt< data_type > this_type
typedef sc_core::sc_signal_in_if< data_type > in_if_type
typedef sc_core::sc_port< in_if_type, 1, sc_core::SC_ZERO_OR_MORE_BOUND > in_port_type
typedef if_type inout_if_type
typedef base_type inout_port_type

Public Member Functions

 sc_out_opt (const char *name_)
 sc_out_opt (inout_if_type &interface_)
 sc_out_opt (const char *name_, inout_if_type &interface_)
 sc_out_opt (inout_port_type &parent_)
 sc_out_opt (const char *name_, inout_port_type &parent_)
 sc_out_opt (this_type &parent_)
 sc_out_opt (const char *name_, this_type &parent_)
this_type & operator= (const data_type &value_)
this_type & operator= (const in_if_type &interface_)
this_type & operator= (const in_port_type &port_)
this_type & operator= (const inout_port_type &port_)
this_type & operator= (const this_type &port_)
virtual const char * kind () const override
Public Member Functions inherited from scc::sc_inout_opt< T >
 sc_inout_opt (const char *name_)
 sc_inout_opt (inout_if_type &interface_)
 sc_inout_opt (const char *name_, inout_if_type &interface_)
 sc_inout_opt (inout_port_type &parent_)
 sc_inout_opt (const char *name_, inout_port_type &parent_)
 sc_inout_opt (this_type &parent_)
 sc_inout_opt (const char *name_, this_type &parent_)
 sc_inout_opt (const this_type &)=delete
const sc_core::sc_event & default_event () const
const sc_core::sc_event & value_changed_event () const
const data_type & read () const
 operator const data_type & () const
bool event () const
void write (const data_type &value_)
this_type & operator= (const data_type &value_)
this_type & operator= (const in_if_type &interface_)
this_type & operator= (const in_port_type &port_)
this_type & operator= (const inout_port_type &port_)
this_type & operator= (const this_type &port_)
void initialize (const data_type &value_)
void initialize (const in_if_type &interface_)
void end_of_elaboration () override

Additional Inherited Members

Protected Attributes inherited from scc::sc_inout_opt< T >
data_type * m_init_val

Detailed Description

template<class T>
class scc::sc_out_opt< T >

A template class for an optional input port with optimized binding.

The sc_out_opt class is a specialization of sc_core::sc_out that allows optional binding of 1 port or signal at max.

Template Parameters
TThe data type of the input port.

Definition at line 705 of file signal_opt_ports.h.

Member Typedef Documentation

◆ base_type

template<class T>
typedef sc_inout_opt<data_type> scc::sc_out_opt< T >::base_type

Definition at line 710 of file signal_opt_ports.h.

◆ data_type

template<class T>
typedef T scc::sc_out_opt< T >::data_type

Definition at line 707 of file signal_opt_ports.h.

◆ in_if_type

template<class T>
typedef base_type::in_if_type scc::sc_out_opt< T >::in_if_type

Definition at line 712 of file signal_opt_ports.h.

◆ in_port_type

template<class T>
typedef base_type::in_port_type scc::sc_out_opt< T >::in_port_type

Definition at line 713 of file signal_opt_ports.h.

◆ inout_if_type

template<class T>
typedef base_type::inout_if_type scc::sc_out_opt< T >::inout_if_type

Definition at line 714 of file signal_opt_ports.h.

◆ inout_port_type

template<class T>
typedef base_type::inout_port_type scc::sc_out_opt< T >::inout_port_type

Definition at line 715 of file signal_opt_ports.h.

◆ this_type

template<class T>
typedef sc_out_opt<data_type> scc::sc_out_opt< T >::this_type

Definition at line 709 of file signal_opt_ports.h.

Constructor & Destructor Documentation

◆ sc_out_opt() [1/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( )
inline

Definition at line 718 of file signal_opt_ports.h.

◆ sc_out_opt() [2/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( const char * name_)
inlineexplicit

Definition at line 721 of file signal_opt_ports.h.

◆ sc_out_opt() [3/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( inout_if_type & interface_)
inlineexplicit

Definition at line 724 of file signal_opt_ports.h.

◆ sc_out_opt() [4/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( const char * name_,
inout_if_type & interface_ )
inline

Definition at line 727 of file signal_opt_ports.h.

◆ sc_out_opt() [5/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( inout_port_type & parent_)
inlineexplicit

Definition at line 730 of file signal_opt_ports.h.

◆ sc_out_opt() [6/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( const char * name_,
inout_port_type & parent_ )
inline

Definition at line 733 of file signal_opt_ports.h.

◆ sc_out_opt() [7/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( this_type & parent_)
inline

Definition at line 736 of file signal_opt_ports.h.

◆ sc_out_opt() [8/8]

template<class T>
scc::sc_out_opt< T >::sc_out_opt ( const char * name_,
this_type & parent_ )
inline

Definition at line 739 of file signal_opt_ports.h.

◆ ~sc_out_opt()

template<class T>
virtual scc::sc_out_opt< T >::~sc_out_opt ( )
inlinevirtual

Definition at line 742 of file signal_opt_ports.h.

Member Function Documentation

◆ kind()

template<class T>
virtual const char * scc::sc_out_opt< T >::kind ( ) const
inlineoverridevirtual

Reimplemented from scc::sc_inout_opt< T >.

Definition at line 769 of file signal_opt_ports.h.

◆ operator=() [1/5]

template<class T>
this_type & scc::sc_out_opt< T >::operator= ( const data_type & value_)
inline

Definition at line 744 of file signal_opt_ports.h.

◆ operator=() [2/5]

template<class T>
this_type & scc::sc_out_opt< T >::operator= ( const in_if_type & interface_)
inline

Definition at line 749 of file signal_opt_ports.h.

◆ operator=() [3/5]

template<class T>
this_type & scc::sc_out_opt< T >::operator= ( const in_port_type & port_)
inline

Definition at line 754 of file signal_opt_ports.h.

◆ operator=() [4/5]

template<class T>
this_type & scc::sc_out_opt< T >::operator= ( const inout_port_type & port_)
inline

Definition at line 759 of file signal_opt_ports.h.

◆ operator=() [5/5]

template<class T>
this_type & scc::sc_out_opt< T >::operator= ( const this_type & port_)
inline

Definition at line 764 of file signal_opt_ports.h.


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