SystemC  2.3.2
Accellera SystemC proof-of-concept library
sc_core Namespace Reference

Namespaces

 sc_meta
 

Classes

struct  SC_API_VERSION_STRING
 
class  sc_attr_base
 Attribute base class. More...
 
class  sc_attr_cltn
 Attribute collection class. More...
 
class  sc_attribute
 
struct  sc_bind_proxy
 Struct for temporarily storing a pointer to an interface or port. More...
 
class  sc_buffer
 
class  sc_byte_heap
 
class  sc_clock
 The clock channel. More...
 
class  sc_clock_negedge_callback
 
class  sc_clock_posedge_callback
 
class  sc_cor
 Coroutine abstract base class. More...
 
class  sc_cor_pkg
 Coroutine package abstract base class. More...
 
class  sc_cor_pkg_qt
 Coroutine package class implemented with QuickThreads. More...
 
class  sc_cor_qt
 Coroutine class implemented with QuickThreads. More...
 
class  sc_cthread_process
 
struct  sc_curr_proc_info
 
struct  sc_direct_access
 
class  sc_event
 The event class. More...
 
class  sc_event_and_list
 AND list of events. More...
 
class  sc_event_expr
 The event expression class. More...
 
class  sc_event_finder
 Event finder base class. More...
 
class  sc_event_finder_t
 
class  sc_event_list
 Base class for lists of events. More...
 
class  sc_event_or_list
 OR list of events. More...
 
class  sc_event_queue
 
class  sc_event_queue_if
 
class  sc_event_timed
 
class  sc_export
 
class  sc_export_base
 
class  sc_export_registry
 Registry for all exports. More...
 
class  sc_fifo
 
class  sc_fifo_blocking_in_if
 
class  sc_fifo_blocking_out_if
 
class  sc_fifo_in
 
class  sc_fifo_in_if
 
class  sc_fifo_nonblocking_in_if
 
class  sc_fifo_nonblocking_out_if
 
class  sc_fifo_out
 
class  sc_fifo_out_if
 
class  sc_halt
 
class  sc_host_mutex
 The sc_host_mutex class, wrapping an OS mutex on the simulation host. More...
 
class  sc_host_semaphore
 
class  sc_in
 
class  sc_in< bool >
 Specialization of sc_in<T> for type bool. More...
 
class  sc_in< sc_dt::sc_logic >
 Specialization of sc_in<T> for type sc_dt::sc_logic. More...
 
class  sc_in_resolved
 The sc_signal_resolved input port class. More...
 
class  sc_in_rv
 
class  sc_inout
 
class  sc_inout< bool >
 Specialization of sc_inout<T> for type bool. More...
 
class  sc_inout< sc_dt::sc_logic >
 Specialization of sc_inout<T> for type sc_dt::sc_logic. More...
 
class  sc_inout_resolved
 The sc_signal_resolved input/output port class. More...
 
class  sc_inout_rv
 
class  sc_interface
 Abstract base class of all interface classes. More...
 
class  sc_join
 
class  sc_kill
 
class  sc_lv_resolve
 
class  sc_member_access
 
class  sc_mempool
 
class  sc_method_process
 
class  sc_module
 Base class for all structural entities. More...
 
class  sc_module_name
 Module name class. More...
 
class  sc_module_registry
 Registry for all modules. More...
 
class  sc_mpobject
 
struct  sc_msg_def
 Exception message definition structure. More...
 
class  sc_mutex
 The sc_mutex primitive channel class. More...
 
class  sc_mutex_if
 The sc_mutex_if interface class. More...
 
class  sc_name_gen
 Unique name generator class. More...
 
class  sc_object
 Abstract base class of all SystemC `simulation' objects. More...
 
class  sc_object_manager
 Manager of objects. More...
 
class  sc_out
 
class  sc_out_resolved
 The sc_signal_resolved output port class. More...
 
class  sc_out_rv
 
class  sc_pdhash
 
class  sc_pdhash_iter
 
class  sc_phase_callback_registry
 
class  sc_phash
 
class  sc_phash_base
 
class  sc_phash_base_iter
 
class  sc_phash_iter
 
class  sc_plist
 
class  sc_plist_base
 
class  sc_plist_base_iter
 
class  sc_plist_iter
 
class  sc_port
 Generic port class and base class for other port classes. More...
 
class  sc_port_b
 Abstract base class for class sc_port. More...
 
class  sc_port_base
 Abstract base class for class sc_port_b. More...
 
class  sc_port_registry
 Registry for all ports. More...
 
class  sc_ppq
 
class  sc_ppq_base
 Priority queue base class. More...
 
class  sc_prim_channel
 Abstract base class of all primitive channel classes. More...
 
class  sc_prim_channel_registry
 Registry for all primitive channels. More...
 
class  sc_process_b
 
class  sc_process_handle
 
class  sc_process_host
 
class  sc_process_monitor
 
class  sc_pvector
 
class  sc_report
 Exception reporting. More...
 
class  sc_report_handler
 
class  sc_reset
 
class  sc_reset_finder
 
class  sc_reset_target
 
class  sc_runnable
 
class  sc_scoped_lock
 The sc_scoped_lock class to lock (and automatically release) a mutex. More...
 
class  sc_semaphore
 The sc_semaphore primitive channel class. More...
 
class  sc_semaphore_if
 The sc_semaphore_if interface class. More...
 
class  sc_sensitive
 Static sensitivity class for events. More...
 
class  sc_sensitive_neg
 Static sensitivity class for negative edge events. More...
 
class  sc_sensitive_pos
 Static sensitivity class for positive edge events. More...
 
class  sc_signal
 
class  sc_signal< bool, POL >
 
class  sc_signal< sc_dt::sc_logic, POL >
 
class  sc_signal_channel
 
class  sc_signal_in_if
 
class  sc_signal_in_if< bool >
 Specialization of sc_signal_in_if<T> for type bool. More...
 
class  sc_signal_in_if< sc_dt::sc_logic >
 Specialization of sc_signal_in_if<T> for type sc_dt::sc_logic. More...
 
class  sc_signal_inout_if
 
class  sc_signal_resolved
 The resolved signal class. More...
 
class  sc_signal_rv
 
class  sc_signal_t
 
class  sc_signal_write_if
 
class  sc_simcontext
 The simulation context. More...
 
class  sc_spawn_object
 
class  sc_spawn_object_v
 
class  sc_spawn_options
 
class  sc_spawn_reset
 
class  sc_strhash
 
class  sc_strhash_iter
 
class  sc_thread_process
 
class  sc_throw_it
 
class  sc_throw_it_helper
 
class  sc_time
 The time class. More...
 
struct  sc_time_params
 Struct that holds the time resolution and default time unit. More...
 
class  sc_time_tuple
 
class  sc_trace_file
 
class  sc_trace_file_base
 
struct  sc_trace_params
 Struct for storing the trace file and object name of an sc_trace call. More...
 
class  sc_type_index
 
class  sc_unwind_exception
 
class  sc_user
 
class  sc_vector
 
class  sc_vector_assembly
 
class  sc_vector_base
 
class  sc_vector_iter
 
class  sc_vpool
 
struct  sc_writer_policy_check
 
struct  sc_writer_policy_check< SC_MANY_WRITERS >
 
struct  sc_writer_policy_check< SC_ONE_WRITER >
 
struct  sc_writer_policy_check< SC_UNCHECKED_WRITERS >
 
struct  sc_writer_policy_check_delta
 
struct  sc_writer_policy_check_port
 
struct  sc_writer_policy_check_write
 
struct  sc_writer_policy_nocheck_port
 
struct  sc_writer_policy_nocheck_write
 
class  sc_zstring_view
 non-owning, const-ref to null-terminated string (implementation-defined) More...
 
struct  scoped_flag
 
class  vcd_T_trace
 
class  vcd_trace_file
 
class  wif_T_trace
 
class  wif_trace_file
 

Typedefs

typedef sc_in< bool > sc_in_clk
 
typedef sc_inout< bool > sc_inout_clk
 
typedef sc_out< bool > sc_out_clk
 
typedef sc_port< sc_event_queue_if, 1, SC_ONE_OR_MORE_BOUNDsc_event_queue_port
 
typedef std::vector< sc_trace_params * > sc_trace_params_vec
 
typedef void() sc_cor_fn(void *)
 Function type for creating coroutines. More...
 
typedef sc_cor_pkg_qt sc_cor_pkg_t
 
typedef sc_event_expr< sc_event_and_listsc_event_and_expr
 
typedef sc_event_expr< sc_event_or_listsc_event_or_expr
 
typedef sc_module sc_channel
 
typedef sc_module sc_behavior
 
typedef class sc_cthread_processsc_cthread_handle
 
typedef class sc_method_processsc_method_handle
 
typedef class sc_thread_processsc_thread_handle
 
typedef void(sc_process_host::* SC_ENTRY_FUNC) ()
 
typedef sc_process_b sc_process_b
 
typedef sc_plist< sc_process_b *> sc_process_list
 
typedef const sc_curr_proc_infosc_curr_proc_handle
 
typedef void(* sc_plist_map_fn) (void *data, void *arg)
 
typedef int(* CFT) (const void *, const void *)
 
typedef unsigned sc_actions
 
typedef std::exception sc_exception
 
typedef void(* sc_report_handler_proc) (const sc_report &, const sc_actions &)
 
typedef SC_STRING_VIEW_NS_::string_view sc_string_view
 non-owning, constant reference to a string (implementation-defined) More...
 

Enumerations

enum  sc_port_policy { SC_ONE_OR_MORE_BOUND, SC_ZERO_OR_MORE_BOUND, SC_ALL_BOUND }
 
enum  sc_writer_policy { SC_ONE_WRITER = 0, SC_MANY_WRITERS = 1, SC_UNCHECKED_WRITERS = 3 }
 
enum  sc_curr_proc_kind { SC_NO_PROC_, SC_METHOD_PROC_, SC_THREAD_PROC_, SC_CTHREAD_PROC_ }
 
enum  sc_descendant_inclusion_info { SC_NO_DESCENDANTS =0, SC_INCLUDE_DESCENDANTS, SC_INVALID_DESCENDANTS }
 
enum  sc_stop_mode { SC_STOP_FINISH_DELTA, SC_STOP_IMMEDIATE }
 
enum  sc_starvation_policy { SC_EXIT_ON_STARVATION, SC_RUN_TO_TIME }
 
enum  sc_status {
  SC_UNITIALIZED =0x00, SC_ELABORATION = 0x01, SC_BEFORE_END_OF_ELABORATION = 0x02, SC_END_OF_ELABORATION = 0x04,
  SC_START_OF_SIMULATION = 0x08, SC_RUNNING = 0x10, SC_PAUSED = 0x20, SC_STOPPED = 0x40,
  SC_END_OF_SIMULATION = 0x80, SC_END_OF_INITIALIZATION = 0x100, SC_END_OF_UPDATE = 0x400, SC_BEFORE_TIMESTEP = 0x800,
  SC_STATUS_LAST = SC_BEFORE_TIMESTEP, SC_STATUS_ANY = 0xdff
}
 
enum  sc_time_unit {
  SC_FS = 0, SC_PS, SC_NS, SC_US,
  SC_MS, SC_SEC
}
 Enumeration of time units. More...
 
enum  sc_severity {
  SC_INFO = 0, SC_WARNING, SC_ERROR, SC_FATAL,
  SC_MAX_SEVERITY
}
 Enumeration of possible exception severity levels. More...
 
enum  sc_verbosity {
  SC_NONE = 0, SC_LOW = 100, SC_MEDIUM = 200, SC_HIGH = 300,
  SC_FULL = 400, SC_DEBUG = 500
}
 
enum  {
  SC_UNSPECIFIED = 0x0000, SC_DO_NOTHING = 0x0001, SC_THROW = 0x0002, SC_LOG = 0x0004,
  SC_DISPLAY = 0x0008, SC_CACHE_REPORT = 0x0010, SC_INTERRUPT = 0x0020, SC_STOP = 0x0040,
  SC_ABORT = 0x0080, SC_DEFAULT_INFO_ACTIONS = SC_LOG | SC_DISPLAY, SC_DEFAULT_WARNING_ACTIONS = SC_LOG | SC_DISPLAY, SC_DEFAULT_ERROR_ACTIONS = SC_LOG | SC_CACHE_REPORT | SC_THROW,
  SC_DEFAULT_FATAL_ACTIONS = SC_LOG | SC_DISPLAY | SC_CACHE_REPORT | SC_ABORT, SC_DEFAULT_CATCH_ACTIONS = SC_DISPLAY
}
 

Functions

template<class T >
inline ::std::ostream & operator<< (::std::ostream &os, const sc_fifo< T > &a)
 
SC_API void sc_warn_port_constructor ()
 
inline ::std::ostream & operator<< (::std::ostream &os, const sc_signal_channel &a)
 
SC_API void sc_deprecated_add_trace ()
 
template<typename T >
::std::ostream & operator<< (::std::ostream &os, const sc_in< T > &a)
 
template<typename T >
::std::ostream & operator<< (::std::ostream &os, const sc_inout< T > &a)
 
template<class T >
void sc_trace (sc_trace_file *tf, const sc_in< T > &port, const std::string &name)
 
template<class T >
void sc_trace (sc_trace_file *tf, const sc_inout< T > &port, const std::string &name)
 
SC_API void sc_signal_invalid_writer (sc_object *target, sc_object *first_writer, sc_object *second_writer, bool check_delta)
 
void SC_API halt (sc_simcontext *)
 
void SC_API wait (int, sc_simcontext *)
 
SC_API int sc_notify_time_compare (const void *, const void *)
 
void notify (sc_event &e)
 
void notify (const sc_time &t, sc_event &e)
 
void notify (double v, sc_time_unit tu, sc_event &e)
 
sc_event_or_expr operator| (sc_event_or_expr expr, sc_event const &e)
 
sc_event_or_expr operator| (sc_event_or_expr expr, sc_event_or_list const &el)
 
sc_event_and_expr operator& (sc_event_and_expr expr, sc_event const &e)
 
sc_event_and_expr operator& (sc_event_and_expr expr, sc_event_and_list const &el)
 
void sc_thread_cor_fn (void *arg)
 
SC_API sc_reportsc_handle_exception ()
 
int sc_elab_and_sim (int argc, char *argv[])
 
int sc_argc ()
 
const char *const * sc_argv ()
 
void sc_method_cor_fn (void *)
 
void sc_cmethod_cor_fn (void *)
 
SC_API void sc_set_stack_size (sc_method_handle, std::size_t)
 
SC_API void next_trigger (sc_simcontext *)
 
SC_API void next_trigger (const sc_event &, sc_simcontext *)
 
SC_API void next_trigger (const sc_event_or_list &, sc_simcontext *)
 
SC_API void next_trigger (const sc_event_and_list &, sc_simcontext *)
 
SC_API void next_trigger (const sc_time &, sc_simcontext *)
 
SC_API void next_trigger (const sc_time &, const sc_event &, sc_simcontext *)
 
SC_API void next_trigger (const sc_time &, const sc_event_or_list &, sc_simcontext *)
 
SC_API void next_trigger (const sc_time &, const sc_event_and_list &, sc_simcontext *)
 
SC_API sc_modulesc_module_dynalloc (sc_module *)
 
sc_objectsc_get_parent (const sc_object *obj_p)
 
SC_API const char * sc_gen_unique_name (const char *, bool preserve_first)
 
SC_API sc_process_handle sc_get_current_process_handle ()
 
SC_API bool timed_out (sc_simcontext *)
 
SC_API void sc_set_stack_size (sc_thread_handle, std::size_t)
 
bool operator== (const sc_process_handle &left, const sc_process_handle &right)
 
bool operator!= (const sc_process_handle &left, const sc_process_handle &right)
 
bool operator< (const sc_process_handle &left, const sc_process_handle &right)
 
sc_process_handle sc_get_last_created_process_handle ()
 
std::ostream & operator<< (std::ostream &os, const sc_reset_target &target)
 
SC_API void sc_set_stop_mode (sc_stop_mode mode)
 
SC_API sc_stop_mode sc_get_stop_mode ()
 
SC_API void sc_start ()
 
SC_API void sc_start (const sc_time &duration, sc_starvation_policy p=SC_RUN_TO_TIME)
 
void sc_start (int duration, sc_time_unit unit, sc_starvation_policy p=SC_RUN_TO_TIME)
 
void sc_start (double duration, sc_time_unit unit, sc_starvation_policy p=SC_RUN_TO_TIME)
 
SC_API void sc_stop ()
 
SC_API sc_dt::uint64 sc_delta_count ()
 
SC_API sc_dt::uint64 sc_delta_count_at_current_time ()
 
SC_API const std::vector< sc_event * > & sc_get_top_level_events (const sc_simcontext *simc_p)
 
SC_API const std::vector< sc_object * > & sc_get_top_level_objects (const sc_simcontext *simc_p)
 
SC_API bool sc_is_running (const sc_simcontext *simc_p)
 
SC_API void sc_pause ()
 
SC_API bool sc_end_of_simulation_invoked ()
 
SC_API bool sc_start_of_simulation_invoked ()
 
SC_API void sc_set_time_resolution (double, sc_time_unit)
 
SC_API sc_time sc_get_time_resolution ()
 
SC_API void sc_set_default_time_unit (double, sc_time_unit)
 
SC_API sc_time sc_get_default_time_unit ()
 
SC_API bool sc_pending_activity_at_current_time (const sc_simcontext *)
 
SC_API bool sc_pending_activity_at_future_time (const sc_simcontext *)
 
SC_API sc_time sc_time_to_pending_activity (const sc_simcontext *)
 
sc_simcontextsc_get_curr_simcontext ()
 
sc_status sc_get_status ()
 
sc_objectsc_get_current_object ()
 
sc_process_bsc_get_current_process_b ()
 
SC_API sc_process_bsc_get_curr_process_handle ()
 
sc_curr_proc_kind sc_get_curr_process_kind ()
 
int sc_get_simulator_status ()
 
SC_API void sc_set_random_seed (unsigned int seed_)
 
SC_API void sc_initialize ()
 
SC_API const sc_timesc_max_time ()
 
SC_API const sc_timesc_time_stamp ()
 
SC_API double sc_simulation_time ()
 
SC_API sc_eventsc_find_event (const char *name)
 
SC_API sc_objectsc_find_object (const char *name)
 
SC_API bool sc_is_unwinding ()
 
bool sc_pending_activity (const sc_simcontext *simc_p=sc_get_curr_simcontext())
 
bool sc_hierarchical_name_exists (const char *name)
 
bool sc_hierarchical_name_exists (const sc_object *parent, const char *name)
 
const char * sc_get_hierarchical_name (const char *name)
 
const char * sc_get_hierarchical_name (const sc_object *parent, const char *name)
 
bool sc_register_hierarchical_name (const char *name)
 
bool sc_register_hierarchical_name (const sc_object *parent, const char *name)
 
bool sc_unregister_hierarchical_name (const char *name)
 
bool sc_unregister_hierarchical_name (const sc_object *parent, const char *name)
 
const char * sc_get_current_process_name (const char *if_empty=NULL)
 
SC_API void sc_defunct_process_function (sc_module *)
 
template<typename T >
sc_process_handle sc_spawn (T object, const char *name_p=0, const sc_spawn_options *opt_p=0)
 
template<typename T >
sc_process_handle sc_spawn (typename T::result_type *r_p, T object, const char *name_p=0, const sc_spawn_options *opt_p=0)
 
SC_API std::ostream & operator<< (std::ostream &, sc_status)
 
sc_corget_cor_pointer (sc_process_b *process_p)
 
SC_API void wait (sc_simcontext *)
 
SC_API void wait (const sc_event &, sc_simcontext *)
 
SC_API void wait (const sc_event_or_list &, sc_simcontext *)
 
SC_API void wait (const sc_event_and_list &, sc_simcontext *)
 
SC_API void wait (const sc_time &, sc_simcontext *)
 
SC_API void wait (const sc_time &, const sc_event &, sc_simcontext *)
 
SC_API void wait (const sc_time &, const sc_event_or_list &, sc_simcontext *)
 
SC_API void wait (const sc_time &, const sc_event_and_list &, sc_simcontext *)
 
const sc_time operator+ (const sc_time &, const sc_time &)
 
const sc_time operator- (const sc_time &, const sc_time &)
 
const sc_time operator* (const sc_time &, double)
 
const sc_time operator* (double, const sc_time &)
 
const sc_time operator/ (const sc_time &, double)
 
double operator/ (const sc_time &, const sc_time &)
 
inline ::std::ostream & operator<< (::std::ostream &, const sc_time &)
 
const sc_time operator% (const sc_time &t1, const sc_time &t2)
 
SC_API const char * sc_copyright ()
 
SC_API const char * sc_release ()
 
SC_API const char * sc_version ()
 
static SC_API_VERSION_STRING< &SC_DISABLE_VIRTUAL_BIND_CHECK_api_version_check (SC_DEFAULT_WRITER_POLICY)
 
SC_API void wait (double v, sc_time_unit tu, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void wait (double v, sc_time_unit tu, const sc_event &e, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void wait (double v, sc_time_unit tu, const sc_event_or_list &el, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void wait (double v, sc_time_unit tu, const sc_event_and_list &el, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void next_trigger (double v, sc_time_unit tu, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void next_trigger (double v, sc_time_unit tu, const sc_event &e, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void next_trigger (double v, sc_time_unit tu, const sc_event_or_list &el, sc_simcontext *simc=sc_get_curr_simcontext())
 
void next_trigger (double v, sc_time_unit tu, const sc_event_and_list &el, sc_simcontext *simc=sc_get_curr_simcontext())
 
SC_API void sc_set_location (const char *, int, sc_simcontext *=sc_get_curr_simcontext())
 
void at_posedge (const sc_signal_in_if< bool > &, sc_simcontext *=sc_get_curr_simcontext())
 
void at_posedge (const sc_signal_in_if< sc_dt::sc_logic > &, sc_simcontext *=sc_get_curr_simcontext())
 
void at_negedge (const sc_signal_in_if< bool > &, sc_simcontext *=sc_get_curr_simcontext())
 
void at_negedge (const sc_signal_in_if< sc_dt::sc_logic > &, sc_simcontext *=sc_get_curr_simcontext())
 
template<class T >
void sc_trace (sc_trace_file *tf, const sc_signal_in_if< T > &object, const std::string &name)
 
template<class T >
void sc_trace (sc_trace_file *tf, const sc_signal_in_if< T > &object, const char *name)
 
SC_API void sc_trace (sc_trace_file *tf, const sc_signal_in_if< char > &object, const std::string &name, int width)
 
SC_API void sc_trace (sc_trace_file *tf, const sc_signal_in_if< short > &object, const std::string &name, int width)
 
SC_API void sc_trace (sc_trace_file *tf, const sc_signal_in_if< int > &object, const std::string &name, int width)
 
SC_API void sc_trace (sc_trace_file *tf, const sc_signal_in_if< long > &object, const std::string &name, int width)
 
SC_API void sc_trace (sc_trace_file *tf, const unsigned int &object, const std::string &name, const char **enum_literals)
 
SC_API void sc_trace (sc_trace_file *tf, const void *object, const std::string &name)
 
SC_API void sc_trace_delta_cycles (sc_trace_file *tf, bool on=true)
 
SC_API void sc_write_comment (sc_trace_file *tf, const std::string &comment)
 
SC_API void tprintf (sc_trace_file *tf, const char *format,...)
 
SC_API sc_trace_filesc_create_vcd_trace_file (const char *name)
 
SC_API void sc_close_vcd_trace_file (sc_trace_file *tf)
 
SC_API sc_trace_filesc_create_wif_trace_file (const char *name)
 
SC_API void sc_close_wif_trace_file (sc_trace_file *tf)
 
SC_API std::string localtime_string ()
 
SC_API unsigned default_int_hash_fn (const void *)
 
SC_API unsigned default_ptr_hash_fn (const void *)
 
SC_API unsigned default_str_hash_fn (const void *)
 
SC_API int sc_strhash_cmp (const void *, const void *)
 
SC_API void sc_strhash_kfree (void *)
 
SC_API void * sc_strhash_kdup (const void *)
 
SC_API const std::string sc_report_compose_message (const sc_report &)
 
SC_NORETURN_ SC_API void sc_abort ()
 
SC_NORETURN_ SC_API void sc_assertion_failed (const char *msg, const char *file, int line)
 
SC_API bool sc_report_close_default_log ()
 
SC_API void sc_interrupt_here (const char *id, sc_severity severity)
 Debugging aid for interrupt warning, error, and fatal reports. More...
 
SC_API void sc_stop_here (const char *id, sc_severity severity)
 Debugging aid for warning, error, and fatal reports. More...
 
template<typename Container , typename ArgumentIterator >
Container::iterator sc_vector_do_bind (Container &cont, ArgumentIterator first, ArgumentIterator last, typename Container::iterator from)
 
template<typename Container , typename ArgumentIterator >
Container::iterator sc_vector_do_operator_paren (Container &cont, ArgumentIterator first, ArgumentIterator last, typename Container::iterator from)
 
template<typename T , typename MT >
sc_vector_assembly< T, MT > sc_assemble_vector (sc_vector< T > &vec, MT(T::*ptr))
 

Variables

SC_API const char SC_ID_REGISTER_ID_FAILED_ []
 
SC_API_TEMPLATE_DECL_ sc_ppq< sc_time *>
 
SC_API_TEMPLATE_DECL_ sc_port< sc_event_queue_if, 1, SC_ONE_OR_MORE_BOUND >
 
class SC_API sc_event
 
class SC_API sc_port_base
 
class SC_API sc_reset
 
SC_API_TEMPLATE_DECL_ sc_signal_t< bool, SC_ONE_WRITER >
 
SC_API_TEMPLATE_DECL_ sc_signal_t< bool, SC_MANY_WRITERS >
 
SC_API_TEMPLATE_DECL_ sc_signal_t< bool, SC_UNCHECKED_WRITERS >
 
SC_API_TEMPLATE_DECL_ sc_port< sc_signal_in_if< bool >, 1, SC_ONE_OR_MORE_BOUND >
 
SC_API_TEMPLATE_DECL_ sc_port< sc_signal_inout_if< bool >, 1, SC_ONE_OR_MORE_BOUND >
 
SC_API const sc_dt::sc_logic_value_t sc_logic_resolution_tbl [4][4]
 
sc_byte_heap SC_API sc_temp_heap
 
const int SC_DEFAULT_STACK_SIZE
 
SC_API const sc_bind_proxy SC_BIND_PROXY_NIL
 
class SC_API sc_module
 
class SC_API sc_simcontext
 
class SC_API sc_trace_file
 
class SC_API sc_trace_file_base
 
const char SC_HIERARCHY_CHAR
 
bool sc_enable_name_checking
 
SC_API bool sc_allow_process_control_corners
 
SC_API sc_simcontextsc_curr_simcontext
 
SC_API sc_simcontextsc_default_global_context
 
const int SC_SIM_OK = 0
 
const int SC_SIM_ERROR = 1
 
const int SC_SIM_USER_STOP = 2
 
class SC_API sc_time_tuple
 
SC_API const sc_time SC_ZERO_TIME
 
SC_API const unsigned int sc_version_major
 
SC_API const unsigned int sc_version_minor
 
SC_API const unsigned int sc_version_patch
 
SC_API const std::string sc_version_originator
 
SC_API const std::string sc_version_release_date
 
SC_API const std::string sc_version_prerelease
 
SC_API const bool sc_is_prerelease
 
SC_API const std::string sc_version_string
 
SC_API const std::string sc_copyright_string
 
const int SC_DISABLE_VIRTUAL_BIND_CHECK_
 
SC_TPLEXTERN_ template struct SC_API SC_API_VERSION_STRING< &SC_DISABLE_VIRTUAL_BIND_CHECK_ >
 
const int PHASH_DEFAULT_MAX_DENSITY = 5
 
const int PHASH_DEFAULT_INIT_TABLE_SIZE = 11
 
SC_API const double PHASH_DEFAULT_GROW_FACTOR
 
const bool PHASH_DEFAULT_REORDER_FLAG = true
 
SC_API const char SC_ID_UNKNOWN_ERROR_ []
 
SC_API const char SC_ID_WITHOUT_MESSAGE_ []
 
SC_API const char SC_ID_NOT_IMPLEMENTED_ []
 
SC_API const char SC_ID_INTERNAL_ERROR_ []
 
SC_API const char SC_ID_ASSERTION_FAILED_ []
 
SC_API const char SC_ID_OUT_OF_BOUNDS_ []
 
SC_API const char SC_ID_ABORT_ []
 

Typedef Documentation

◆ CFT

typedef int(* sc_core::CFT) (const void *, const void *)

Definition at line 41 of file sc_pvector.h.

◆ sc_actions

typedef unsigned sc_core::sc_actions

Definition at line 87 of file sc_report.h.

◆ sc_behavior

Definition at line 484 of file sc_module.h.

◆ sc_channel

TYPEDEFS

Definition at line 483 of file sc_module.h.

◆ sc_cor_fn

sc_core::sc_cor_fn

Function type for creating coroutines.

Definition at line 52 of file sc_cor.h.

◆ sc_cor_pkg_t

Definition at line 45 of file sc_cor_qt.h.

◆ sc_cthread_handle

Definition at line 65 of file sc_process.h.

◆ sc_curr_proc_handle

Definition at line 89 of file sc_simcontext.h.

◆ SC_ENTRY_FUNC

typedef void(sc_process_host::* sc_core::SC_ENTRY_FUNC) ()

Definition at line 152 of file sc_process.h.

◆ sc_event_and_expr

◆ sc_event_or_expr

◆ sc_event_queue_port

◆ sc_exception

typedef std::exception sc_core::sc_exception

Definition at line 198 of file sc_report.h.

◆ sc_in_clk

typedef sc_in<bool> sc_core::sc_in_clk

The clock ports.

(Provided for backward compatibility reasons.)

Definition at line 47 of file sc_clock_ports.h.

◆ sc_inout_clk

Definition at line 48 of file sc_clock_ports.h.

◆ sc_method_handle

Definition at line 66 of file sc_process.h.

◆ sc_out_clk

typedef sc_out<bool> sc_core::sc_out_clk

Definition at line 49 of file sc_clock_ports.h.

◆ sc_plist_map_fn

typedef void(* sc_core::sc_plist_map_fn) (void *data, void *arg)

Definition at line 45 of file sc_list.h.

◆ sc_process_b

Definition at line 458 of file sc_process.h.

◆ sc_process_list

Definition at line 79 of file sc_simcontext.h.

◆ sc_report_handler_proc

typedef void(* sc_core::sc_report_handler_proc) (const sc_report &, const sc_actions &)

Definition at line 56 of file sc_report_handler.h.

◆ sc_string_view

typedef SC_STRING_VIEW_NS_::string_view sc_core::sc_string_view

non-owning, constant reference to a string (implementation-defined)

Definition at line 66 of file sc_string_view.h.

◆ sc_thread_handle

Definition at line 67 of file sc_process.h.

◆ sc_trace_params_vec

Definition at line 76 of file sc_signal_ports.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
SC_UNSPECIFIED 

look for lower-priority rule

SC_DO_NOTHING 

take no action (ignore if other bits set)

SC_THROW 

throw an exception

SC_LOG 

add report to report log

SC_DISPLAY 

display report to screen

SC_CACHE_REPORT 

save report to cache

SC_INTERRUPT 

call sc_interrupt_here(...)

SC_STOP 

call sc_stop()

SC_ABORT 

call abort()

SC_DEFAULT_INFO_ACTIONS 
SC_DEFAULT_WARNING_ACTIONS 
SC_DEFAULT_ERROR_ACTIONS 
SC_DEFAULT_FATAL_ACTIONS 
SC_DEFAULT_CATCH_ACTIONS 

Definition at line 89 of file sc_report.h.

◆ sc_curr_proc_kind

Enumerator
SC_NO_PROC_ 
SC_METHOD_PROC_ 
SC_THREAD_PROC_ 
SC_CTHREAD_PROC_ 

Definition at line 72 of file sc_process.h.

◆ sc_descendant_inclusion_info

Enumerator
SC_NO_DESCENDANTS 
SC_INCLUDE_DESCENDANTS 
SC_INVALID_DESCENDANTS 

Definition at line 82 of file sc_process.h.

◆ sc_port_policy

Enumerator
SC_ONE_OR_MORE_BOUND 

Default.

SC_ZERO_OR_MORE_BOUND 
SC_ALL_BOUND 

Definition at line 62 of file sc_port.h.

◆ sc_severity

Enumeration of possible exception severity levels.

Enumerator
SC_INFO 

informative only

SC_WARNING 

indicates potentially incorrect condition

SC_ERROR 

indicates a definite problem

SC_FATAL 

indicates a problem from which we cannot recover

SC_MAX_SEVERITY 

Definition at line 58 of file sc_report.h.

◆ sc_starvation_policy

Enumerator
SC_EXIT_ON_STARVATION 
SC_RUN_TO_TIME 

Definition at line 98 of file sc_simcontext.h.

◆ sc_status

Enumerator
SC_UNITIALIZED 

initialize() not called yet

SC_ELABORATION 

during module hierarchy construction

SC_BEFORE_END_OF_ELABORATION 

during before_end_of_elaboration()

SC_END_OF_ELABORATION 

during end_of_elaboration()

SC_START_OF_SIMULATION 

during start_of_simulation()

SC_RUNNING 

initialization, evaluation or update

SC_PAUSED 

when scheduler stopped by sc_pause()

SC_STOPPED 

when scheduler stopped by sc_stop()

SC_END_OF_SIMULATION 

during end_of_simulation()

SC_END_OF_INITIALIZATION 

after initialization

SC_END_OF_UPDATE 

after update/notify phase

SC_BEFORE_TIMESTEP 

before next time step

SC_STATUS_LAST 
SC_STATUS_ANY 

Definition at line 48 of file sc_status.h.

◆ sc_stop_mode

Enumerator
SC_STOP_FINISH_DELTA 
SC_STOP_IMMEDIATE 

Definition at line 91 of file sc_simcontext.h.

◆ sc_time_unit

Enumeration of time units.

Enumerator
SC_FS 
SC_PS 
SC_NS 
SC_US 
SC_MS 
SC_SEC 

Definition at line 64 of file sc_time.h.

◆ sc_verbosity

Enumerator
SC_NONE 
SC_LOW 
SC_MEDIUM 
SC_HIGH 
SC_FULL 
SC_DEBUG 

Definition at line 72 of file sc_report.h.

◆ sc_writer_policy

Enumerator
SC_ONE_WRITER 

unique writer (from a unique port)

SC_MANY_WRITERS 

allow multiple writers (with different ports)

SC_UNCHECKED_WRITERS 

even allow delta cycle conflicts (non-standard)

Definition at line 68 of file sc_writer_policy.h.

Function Documentation

◆ api_version_check()

static SC_API_VERSION_STRING< & SC_DISABLE_VIRTUAL_BIND_CHECK_> sc_core::api_version_check ( SC_DEFAULT_WRITER_POLICY  )
static

◆ at_negedge() [1/2]

void sc_core::at_negedge ( const sc_signal_in_if< bool > &  ,
sc_simcontext = sc_get_curr_simcontext() 
)

◆ at_negedge() [2/2]

void sc_core::at_negedge ( const sc_signal_in_if< sc_dt::sc_logic > &  ,
sc_simcontext = sc_get_curr_simcontext() 
)

◆ at_posedge() [1/2]

void sc_core::at_posedge ( const sc_signal_in_if< bool > &  ,
sc_simcontext = sc_get_curr_simcontext() 
)

◆ at_posedge() [2/2]

void sc_core::at_posedge ( const sc_signal_in_if< sc_dt::sc_logic > &  ,
sc_simcontext = sc_get_curr_simcontext() 
)

◆ default_int_hash_fn()

SC_API unsigned sc_core::default_int_hash_fn ( const void *  )

◆ default_ptr_hash_fn()

SC_API unsigned sc_core::default_ptr_hash_fn ( const void *  )

◆ default_str_hash_fn()

SC_API unsigned sc_core::default_str_hash_fn ( const void *  )

◆ get_cor_pointer()

sc_cor * sc_core::get_cor_pointer ( sc_process_b process_p)
inline

Definition at line 445 of file sc_thread_process.h.

◆ halt()

SC_API void sc_core::halt ( sc_simcontext )

◆ localtime_string()

SC_API std::string sc_core::localtime_string ( )

◆ next_trigger() [1/12]

SC_API void sc_core::next_trigger ( sc_simcontext )

◆ next_trigger() [2/12]

SC_API void sc_core::next_trigger ( const sc_event ,
sc_simcontext  
)

◆ next_trigger() [3/12]

SC_API void sc_core::next_trigger ( const sc_event_or_list ,
sc_simcontext  
)

◆ next_trigger() [4/12]

SC_API void sc_core::next_trigger ( const sc_event_and_list ,
sc_simcontext  
)

◆ next_trigger() [5/12]

SC_API void sc_core::next_trigger ( const sc_time ,
sc_simcontext  
)

◆ next_trigger() [6/12]

SC_API void sc_core::next_trigger ( const sc_time ,
const sc_event ,
sc_simcontext  
)

◆ next_trigger() [7/12]

SC_API void sc_core::next_trigger ( const sc_time ,
const sc_event_or_list ,
sc_simcontext  
)

◆ next_trigger() [8/12]

SC_API void sc_core::next_trigger ( const sc_time ,
const sc_event_and_list ,
sc_simcontext  
)

◆ next_trigger() [9/12]

SC_API void sc_core::next_trigger ( double  v,
sc_time_unit  tu,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 163 of file sc_wait.h.

◆ next_trigger() [10/12]

SC_API void sc_core::next_trigger ( double  v,
sc_time_unit  tu,
const sc_event e,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 177 of file sc_wait.h.

◆ next_trigger() [11/12]

SC_API void sc_core::next_trigger ( double  v,
sc_time_unit  tu,
const sc_event_or_list el,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 192 of file sc_wait.h.

◆ next_trigger() [12/12]

void sc_core::next_trigger ( double  v,
sc_time_unit  tu,
const sc_event_and_list el,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 207 of file sc_wait.h.

◆ notify() [1/3]

void sc_core::notify ( sc_event e)

Deprecated functional notation for notifying events.

◆ notify() [2/3]

void sc_core::notify ( const sc_time t,
sc_event e 
)

◆ notify() [3/3]

void sc_core::notify ( double  v,
sc_time_unit  tu,
sc_event e 
)

◆ operator!=()

bool sc_core::operator!= ( const sc_process_handle left,
const sc_process_handle right 
)
inline

Definition at line 163 of file sc_process_handle.h.

◆ operator%()

const sc_time sc_core::operator% ( const sc_time t1,
const sc_time t2 
)
inline

Definition at line 428 of file sc_time.h.

◆ operator&() [1/2]

sc_event_and_expr sc_core::operator & ( sc_event_and_expr  expr,
sc_event const &  e 
)
inline

Definition at line 819 of file sc_event.h.

◆ operator&() [2/2]

sc_event_and_expr sc_core::operator & ( sc_event_and_expr  expr,
sc_event_and_list const &  el 
)
inline

Definition at line 827 of file sc_event.h.

◆ operator*() [1/2]

const sc_time sc_core::operator* ( const sc_time t,
double  d 
)
inline

Definition at line 397 of file sc_time.h.

◆ operator*() [2/2]

const sc_time sc_core::operator* ( double  d,
const sc_time t 
)
inline

Definition at line 405 of file sc_time.h.

◆ operator+()

const sc_time sc_core::operator+ ( const sc_time t1,
const sc_time t2 
)
inline

Definition at line 354 of file sc_time.h.

◆ operator-()

const sc_time sc_core::operator- ( const sc_time t1,
const sc_time t2 
)
inline

Definition at line 361 of file sc_time.h.

◆ operator/() [1/2]

const sc_time sc_core::operator/ ( const sc_time t,
double  d 
)
inline

Definition at line 413 of file sc_time.h.

◆ operator/() [2/2]

double sc_core::operator/ ( const sc_time t1,
const sc_time t2 
)
inline

Definition at line 421 of file sc_time.h.

◆ operator<()

bool sc_core::operator< ( const sc_process_handle left,
const sc_process_handle right 
)
inline

Definition at line 170 of file sc_process_handle.h.

◆ operator<<() [1/7]

std::ostream& sc_core::operator<< ( std::ostream &  os,
const sc_reset_target target 
)
inline

Definition at line 69 of file sc_reset.h.

◆ operator<<() [2/7]

SC_API std::ostream& sc_core::operator<< ( std::ostream &  ,
sc_status   
)

◆ operator<<() [3/7]

inline ::std::ostream& sc_core::operator<< ( ::std::ostream &  os,
const sc_signal_channel a 
)

Definition at line 144 of file sc_signal.h.

◆ operator<<() [4/7]

std::ostream & sc_core::operator<< ( ::std::ostream &  os,
const sc_time t 
)
inline

Definition at line 438 of file sc_time.h.

◆ operator<<() [5/7]

template<typename T >
::std::ostream& sc_core::operator<< ( ::std::ostream &  os,
const sc_in< T > &  a 
)

Definition at line 296 of file sc_signal_ports.h.

◆ operator<<() [6/7]

template<class T >
inline ::std::ostream& sc_core::operator<< ( ::std::ostream &  os,
const sc_fifo< T > &  a 
)

Definition at line 431 of file sc_fifo.h.

◆ operator<<() [7/7]

template<typename T >
::std::ostream& sc_core::operator<< ( ::std::ostream &  os,
const sc_inout< T > &  a 
)

Definition at line 1125 of file sc_signal_ports.h.

◆ operator==()

bool sc_core::operator== ( const sc_process_handle left,
const sc_process_handle right 
)
inline

Definition at line 156 of file sc_process_handle.h.

◆ operator|() [1/2]

sc_event_or_expr sc_core::operator| ( sc_event_or_expr  expr,
sc_event const &  e 
)
inline

Definition at line 701 of file sc_event.h.

◆ operator|() [2/2]

sc_event_or_expr sc_core::operator| ( sc_event_or_expr  expr,
sc_event_or_list const &  el 
)
inline

Definition at line 709 of file sc_event.h.

◆ sc_abort()

SC_NORETURN_ SC_API void sc_core::sc_abort ( )

◆ sc_argc()

int sc_core::sc_argc ( )

◆ sc_argv()

const char* const* sc_core::sc_argv ( )

◆ sc_assemble_vector()

template<typename T , typename MT >
sc_vector_assembly<T,MT> sc_core::sc_assemble_vector ( sc_vector< T > &  vec,
MT T::*  ptr 
)

Definition at line 661 of file sc_vector.h.

◆ sc_assertion_failed()

SC_NORETURN_ SC_API void sc_core::sc_assertion_failed ( const char *  msg,
const char *  file,
int  line 
)

◆ sc_close_vcd_trace_file()

SC_API void sc_core::sc_close_vcd_trace_file ( sc_trace_file tf)

◆ sc_close_wif_trace_file()

SC_API void sc_core::sc_close_wif_trace_file ( sc_trace_file tf)

◆ sc_cmethod_cor_fn()

void sc_core::sc_cmethod_cor_fn ( void *  )

◆ sc_copyright()

SC_API const char* sc_core::sc_copyright ( )

◆ sc_create_vcd_trace_file()

SC_API sc_trace_file* sc_core::sc_create_vcd_trace_file ( const char *  name)

◆ sc_create_wif_trace_file()

SC_API sc_trace_file* sc_core::sc_create_wif_trace_file ( const char *  name)

◆ sc_defunct_process_function()

SC_API void sc_core::sc_defunct_process_function ( sc_module )

◆ sc_delta_count()

sc_dt::uint64 sc_core::sc_delta_count ( )
inline

Definition at line 703 of file sc_simcontext.h.

◆ sc_delta_count_at_current_time()

sc_dt::uint64 sc_core::sc_delta_count_at_current_time ( )
inline

Definition at line 709 of file sc_simcontext.h.

◆ sc_deprecated_add_trace()

SC_API void sc_core::sc_deprecated_add_trace ( )

◆ sc_elab_and_sim()

int sc_core::sc_elab_and_sim ( int  argc,
char *  argv[] 
)

◆ sc_end_of_simulation_invoked()

bool sc_core::sc_end_of_simulation_invoked ( )
inline

Definition at line 761 of file sc_simcontext.h.

◆ sc_find_event()

SC_API sc_event* sc_core::sc_find_event ( const char *  name)

◆ sc_find_object()

SC_API sc_object* sc_core::sc_find_object ( const char *  name)

◆ sc_gen_unique_name()

SC_API const char * sc_core::sc_gen_unique_name ( const char *  ,
bool  preserve_first 
)

◆ sc_get_curr_process_handle()

SC_API sc_process_b* sc_core::sc_get_curr_process_handle ( )

◆ sc_get_curr_process_kind()

sc_curr_proc_kind sc_core::sc_get_curr_process_kind ( )
inline

Definition at line 654 of file sc_simcontext.h.

◆ sc_get_curr_simcontext()

sc_simcontext * sc_core::sc_get_curr_simcontext ( )
inline

Definition at line 421 of file sc_simcontext.h.

◆ sc_get_current_object()

sc_object* sc_core::sc_get_current_object ( )
inline

Definition at line 637 of file sc_simcontext.h.

◆ sc_get_current_process_b()

sc_process_b* sc_core::sc_get_current_process_b ( )
inline

Definition at line 644 of file sc_simcontext.h.

◆ sc_get_current_process_handle()

SC_API sc_process_handle sc_core::sc_get_current_process_handle ( )

◆ sc_get_current_process_name()

const char* sc_core::sc_get_current_process_name ( const char *  if_empty = NULL)
inline

Definition at line 70 of file sc_simcontext_int.h.

◆ sc_get_default_time_unit()

SC_API sc_time sc_core::sc_get_default_time_unit ( )

◆ sc_get_hierarchical_name() [1/2]

const char* sc_core::sc_get_hierarchical_name ( const char *  name)
inline

Definition at line 783 of file sc_simcontext.h.

◆ sc_get_hierarchical_name() [2/2]

const char* sc_core::sc_get_hierarchical_name ( const sc_object parent,
const char *  name 
)
inline

Definition at line 790 of file sc_simcontext.h.

◆ sc_get_last_created_process_handle()

sc_process_handle sc_core::sc_get_last_created_process_handle ( )
inline

Definition at line 529 of file sc_process_handle.h.

◆ sc_get_parent()

sc_object* sc_core::sc_get_parent ( const sc_object obj_p)
inline

Definition at line 177 of file sc_object.h.

◆ sc_get_simulator_status()

int sc_core::sc_get_simulator_status ( )
inline

Definition at line 660 of file sc_simcontext.h.

◆ sc_get_status()

sc_status sc_core::sc_get_status ( )
inline

Definition at line 432 of file sc_simcontext.h.

◆ sc_get_stop_mode()

SC_API sc_stop_mode sc_core::sc_get_stop_mode ( )

◆ sc_get_time_resolution()

SC_API sc_time sc_core::sc_get_time_resolution ( )

◆ sc_get_top_level_events()

const std::vector< sc_event * > & sc_core::sc_get_top_level_events ( const sc_simcontext simc_p = sc_get_curr_simcontext())
inline

Definition at line 685 of file sc_simcontext.h.

◆ sc_get_top_level_objects()

const std::vector< sc_object * > & sc_core::sc_get_top_level_objects ( const sc_simcontext simc_p = sc_get_curr_simcontext())
inline

Definition at line 692 of file sc_simcontext.h.

◆ sc_handle_exception()

SC_API sc_report* sc_core::sc_handle_exception ( )

◆ sc_hierarchical_name_exists() [1/2]

bool sc_core::sc_hierarchical_name_exists ( const char *  name)
inline

Definition at line 768 of file sc_simcontext.h.

◆ sc_hierarchical_name_exists() [2/2]

bool sc_core::sc_hierarchical_name_exists ( const sc_object parent,
const char *  name 
)
inline

Definition at line 775 of file sc_simcontext.h.

◆ sc_initialize()

SC_API void sc_core::sc_initialize ( )

◆ sc_interrupt_here()

SC_API void sc_core::sc_interrupt_here ( const char *  id,
sc_severity  severity 
)

Debugging aid for interrupt warning, error, and fatal reports.

◆ sc_is_running()

bool sc_core::sc_is_running ( const sc_simcontext simc_p = sc_get_curr_simcontext())
inline

Definition at line 715 of file sc_simcontext.h.

◆ sc_is_unwinding()

SC_API bool sc_core::sc_is_unwinding ( )

◆ sc_max_time()

SC_API const sc_time& sc_core::sc_max_time ( )

◆ sc_method_cor_fn()

void sc_core::sc_method_cor_fn ( void *  )

◆ sc_module_dynalloc()

SC_API sc_module* sc_core::sc_module_dynalloc ( sc_module )

◆ sc_notify_time_compare()

SC_API int sc_core::sc_notify_time_compare ( const void *  ,
const void *   
)

◆ sc_pause()

void sc_core::sc_pause ( )
inline

Definition at line 722 of file sc_simcontext.h.

◆ sc_pending_activity()

bool sc_core::sc_pending_activity ( const sc_simcontext simc_p = sc_get_curr_simcontext())
inline

Definition at line 748 of file sc_simcontext.h.

◆ sc_pending_activity_at_current_time()

bool sc_core::sc_pending_activity_at_current_time ( const sc_simcontext simc_p = sc_get_curr_simcontext())
inline

Definition at line 730 of file sc_simcontext.h.

◆ sc_pending_activity_at_future_time()

bool sc_core::sc_pending_activity_at_future_time ( const sc_simcontext simc_p = sc_get_curr_simcontext())
inline

Definition at line 738 of file sc_simcontext.h.

◆ sc_register_hierarchical_name() [1/2]

bool sc_core::sc_register_hierarchical_name ( const char *  name)
inline

Definition at line 797 of file sc_simcontext.h.

◆ sc_register_hierarchical_name() [2/2]

bool sc_core::sc_register_hierarchical_name ( const sc_object parent,
const char *  name 
)
inline

Definition at line 804 of file sc_simcontext.h.

◆ sc_release()

SC_API const char* sc_core::sc_release ( )

◆ sc_report_close_default_log()

SC_API bool sc_core::sc_report_close_default_log ( )

◆ sc_report_compose_message()

SC_API const std::string sc_core::sc_report_compose_message ( const sc_report )

◆ sc_set_default_time_unit()

SC_API void sc_core::sc_set_default_time_unit ( double  ,
sc_time_unit   
)

◆ sc_set_location()

SC_API void sc_core::sc_set_location ( const char *  ,
int  ,
sc_simcontext = sc_get_curr_simcontext() 
)

◆ sc_set_random_seed()

SC_API void sc_core::sc_set_random_seed ( unsigned int  seed_)

◆ sc_set_stack_size() [1/2]

SC_API void sc_core::sc_set_stack_size ( sc_method_handle  ,
std::size_t   
)

◆ sc_set_stack_size() [2/2]

SC_API void sc_core::sc_set_stack_size ( sc_thread_handle  ,
std::size_t   
)

◆ sc_set_stop_mode()

SC_API void sc_core::sc_set_stop_mode ( sc_stop_mode  mode)

◆ sc_set_time_resolution()

SC_API void sc_core::sc_set_time_resolution ( double  ,
sc_time_unit   
)

◆ sc_signal_invalid_writer()

SC_API void sc_core::sc_signal_invalid_writer ( sc_object target,
sc_object first_writer,
sc_object second_writer,
bool  check_delta 
)

◆ sc_simulation_time()

SC_API double sc_core::sc_simulation_time ( )

◆ sc_spawn() [1/2]

template<typename T >
sc_process_handle sc_core::sc_spawn ( object,
const char *  name_p = 0,
const sc_spawn_options opt_p = 0 
)
inline

Definition at line 108 of file sc_spawn.h.

◆ sc_spawn() [2/2]

template<typename T >
sc_process_handle sc_core::sc_spawn ( typename T::result_type *  r_p,
object,
const char *  name_p = 0,
const sc_spawn_options opt_p = 0 
)
inline

Definition at line 209 of file sc_spawn.h.

◆ sc_start() [1/4]

SC_API void sc_core::sc_start ( )

◆ sc_start() [2/4]

SC_API void sc_core::sc_start ( const sc_time duration,
sc_starvation_policy  p = SC_RUN_TO_TIME 
)

◆ sc_start() [3/4]

void sc_core::sc_start ( int  duration,
sc_time_unit  unit,
sc_starvation_policy  p = SC_RUN_TO_TIME 
)
inline

Definition at line 106 of file sc_simcontext.h.

◆ sc_start() [4/4]

void sc_core::sc_start ( double  duration,
sc_time_unit  unit,
sc_starvation_policy  p = SC_RUN_TO_TIME 
)
inline

Definition at line 112 of file sc_simcontext.h.

◆ sc_start_of_simulation_invoked()

bool sc_core::sc_start_of_simulation_invoked ( )
inline

Definition at line 825 of file sc_simcontext.h.

◆ sc_stop()

SC_API void sc_core::sc_stop ( )

◆ sc_stop_here()

SC_API void sc_core::sc_stop_here ( const char *  id,
sc_severity  severity 
)

Debugging aid for warning, error, and fatal reports.

◆ sc_strhash_cmp()

SC_API int sc_core::sc_strhash_cmp ( const void *  ,
const void *   
)

◆ sc_strhash_kdup()

SC_API void* sc_core::sc_strhash_kdup ( const void *  )

◆ sc_strhash_kfree()

SC_API void sc_core::sc_strhash_kfree ( void *  )

◆ sc_thread_cor_fn()

void sc_core::sc_thread_cor_fn ( void *  arg)

◆ sc_time_stamp()

SC_API const sc_time& sc_core::sc_time_stamp ( )

◆ sc_time_to_pending_activity()

SC_API sc_time sc_core::sc_time_to_pending_activity ( const sc_simcontext )

◆ sc_trace() [1/10]

template<class T >
void sc_core::sc_trace ( sc_trace_file tf,
const sc_signal_in_if< T > &  object,
const std::string &  name 
)
inline

Definition at line 265 of file sc_trace.h.

◆ sc_trace() [2/10]

template<class T >
void sc_core::sc_trace ( sc_trace_file tf,
const sc_signal_in_if< T > &  object,
const char *  name 
)
inline

Definition at line 275 of file sc_trace.h.

◆ sc_trace() [3/10]

SC_API void sc_core::sc_trace ( sc_trace_file tf,
const sc_signal_in_if< char > &  object,
const std::string &  name,
int  width 
)

◆ sc_trace() [4/10]

SC_API void sc_core::sc_trace ( sc_trace_file tf,
const sc_signal_in_if< short > &  object,
const std::string &  name,
int  width 
)

◆ sc_trace() [5/10]

SC_API void sc_core::sc_trace ( sc_trace_file tf,
const sc_signal_in_if< int > &  object,
const std::string &  name,
int  width 
)

◆ sc_trace() [6/10]

SC_API void sc_core::sc_trace ( sc_trace_file tf,
const sc_signal_in_if< long > &  object,
const std::string &  name,
int  width 
)

◆ sc_trace() [7/10]

SC_API void sc_core::sc_trace ( sc_trace_file tf,
const unsigned int &  object,
const std::string &  name,
const char **  enum_literals 
)

◆ sc_trace() [8/10]

SC_API void sc_core::sc_trace ( sc_trace_file tf,
const void *  object,
const std::string &  name 
)

◆ sc_trace() [9/10]

template<class T >
void sc_core::sc_trace ( sc_trace_file tf,
const sc_in< T > &  port,
const std::string &  name 
)
inline

Definition at line 1810 of file sc_signal_ports.h.

◆ sc_trace() [10/10]

template<class T >
void sc_core::sc_trace ( sc_trace_file tf,
const sc_inout< T > &  port,
const std::string &  name 
)
inline

Definition at line 1827 of file sc_signal_ports.h.

◆ sc_trace_delta_cycles()

SC_API void sc_core::sc_trace_delta_cycles ( sc_trace_file tf,
bool  on = true 
)
inline

Definition at line 334 of file sc_trace.h.

◆ sc_unregister_hierarchical_name() [1/2]

bool sc_core::sc_unregister_hierarchical_name ( const char *  name)
inline

Definition at line 811 of file sc_simcontext.h.

◆ sc_unregister_hierarchical_name() [2/2]

bool sc_core::sc_unregister_hierarchical_name ( const sc_object parent,
const char *  name 
)
inline

Definition at line 818 of file sc_simcontext.h.

◆ sc_vector_do_bind()

template<typename Container , typename ArgumentIterator >
Container::iterator sc_core::sc_vector_do_bind ( Container &  cont,
ArgumentIterator  first,
ArgumentIterator  last,
typename Container::iterator  from 
)

Definition at line 718 of file sc_vector.h.

◆ sc_vector_do_operator_paren()

template<typename Container , typename ArgumentIterator >
Container::iterator sc_core::sc_vector_do_operator_paren ( Container &  cont,
ArgumentIterator  first,
ArgumentIterator  last,
typename Container::iterator  from 
)

Definition at line 735 of file sc_vector.h.

◆ sc_version()

SC_API const char* sc_core::sc_version ( )

◆ sc_warn_port_constructor()

SC_API void sc_core::sc_warn_port_constructor ( )

◆ sc_write_comment()

SC_API void sc_core::sc_write_comment ( sc_trace_file tf,
const std::string &  comment 
)
inline

Definition at line 344 of file sc_trace.h.

◆ timed_out()

SC_API bool sc_core::timed_out ( sc_simcontext )

◆ tprintf()

SC_API void sc_core::tprintf ( sc_trace_file tf,
const char *  format,
  ... 
)

◆ wait() [1/13]

SC_API void sc_core::wait ( int  ,
sc_simcontext  
)

◆ wait() [2/13]

SC_API void sc_core::wait ( double  v,
sc_time_unit  tu,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 80 of file sc_wait.h.

◆ wait() [3/13]

SC_API void sc_core::wait ( sc_simcontext )

◆ wait() [4/13]

SC_API void sc_core::wait ( const sc_event ,
sc_simcontext  
)

◆ wait() [5/13]

SC_API void sc_core::wait ( const sc_event_or_list ,
sc_simcontext  
)

◆ wait() [6/13]

SC_API void sc_core::wait ( const sc_event_and_list ,
sc_simcontext  
)

◆ wait() [7/13]

SC_API void sc_core::wait ( const sc_time ,
sc_simcontext  
)

◆ wait() [8/13]

SC_API void sc_core::wait ( const sc_time ,
const sc_event ,
sc_simcontext  
)

◆ wait() [9/13]

SC_API void sc_core::wait ( const sc_time ,
const sc_event_or_list ,
sc_simcontext  
)

◆ wait() [10/13]

SC_API void sc_core::wait ( const sc_time ,
const sc_event_and_list ,
sc_simcontext  
)

◆ wait() [11/13]

SC_API void sc_core::wait ( double  v,
sc_time_unit  tu,
const sc_event e,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 94 of file sc_wait.h.

◆ wait() [12/13]

SC_API void sc_core::wait ( double  v,
sc_time_unit  tu,
const sc_event_or_list el,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 109 of file sc_wait.h.

◆ wait() [13/13]

SC_API void sc_core::wait ( double  v,
sc_time_unit  tu,
const sc_event_and_list el,
sc_simcontext simc = sc_get_curr_simcontext() 
)
inline

Definition at line 124 of file sc_wait.h.

Variable Documentation

◆ PHASH_DEFAULT_GROW_FACTOR

SC_API const double sc_core::PHASH_DEFAULT_GROW_FACTOR

◆ PHASH_DEFAULT_INIT_TABLE_SIZE

const int sc_core::PHASH_DEFAULT_INIT_TABLE_SIZE = 11

Definition at line 47 of file sc_hash.h.

◆ PHASH_DEFAULT_MAX_DENSITY

const int sc_core::PHASH_DEFAULT_MAX_DENSITY = 5

Definition at line 46 of file sc_hash.h.

◆ PHASH_DEFAULT_REORDER_FLAG

const bool sc_core::PHASH_DEFAULT_REORDER_FLAG = true

Definition at line 49 of file sc_hash.h.

◆ sc_allow_process_control_corners

SC_API bool sc_core::sc_allow_process_control_corners

Definition at line 834 of file sc_simcontext.h.

◆ SC_API_VERSION_STRING< &SC_DISABLE_VIRTUAL_BIND_CHECK_ >

◆ SC_BIND_PROXY_NIL

SC_API const sc_bind_proxy sc_core::SC_BIND_PROXY_NIL

◆ sc_copyright_string

SC_API const std::string sc_core::sc_copyright_string

◆ sc_curr_simcontext

SC_API sc_simcontext* sc_core::sc_curr_simcontext

◆ sc_default_global_context

SC_API sc_simcontext* sc_core::sc_default_global_context

◆ SC_DEFAULT_STACK_SIZE

const int sc_core::SC_DEFAULT_STACK_SIZE

◆ SC_DISABLE_VIRTUAL_BIND_CHECK_

const int sc_core::SC_DISABLE_VIRTUAL_BIND_CHECK_

◆ sc_enable_name_checking

bool sc_core::sc_enable_name_checking

◆ sc_event

Definition at line 40 of file sc_interface.h.

◆ SC_HIERARCHY_CHAR

const char sc_core::SC_HIERARCHY_CHAR

◆ SC_ID_ABORT_

SC_API const char sc_core::SC_ID_ABORT_[]

◆ SC_ID_ASSERTION_FAILED_

SC_API const char sc_core::SC_ID_ASSERTION_FAILED_[]

◆ SC_ID_INTERNAL_ERROR_

SC_API const char sc_core::SC_ID_INTERNAL_ERROR_[]

◆ SC_ID_NOT_IMPLEMENTED_

SC_API const char sc_core::SC_ID_NOT_IMPLEMENTED_[]

◆ SC_ID_OUT_OF_BOUNDS_

SC_API const char sc_core::SC_ID_OUT_OF_BOUNDS_[]

◆ SC_ID_REGISTER_ID_FAILED_

SC_API const char sc_core::SC_ID_REGISTER_ID_FAILED_

Definition at line 77 of file sc_bit_ids.h.

◆ SC_ID_UNKNOWN_ERROR_

SC_API const char sc_core::SC_ID_UNKNOWN_ERROR_[]

◆ SC_ID_WITHOUT_MESSAGE_

SC_API const char sc_core::SC_ID_WITHOUT_MESSAGE_[]

◆ sc_is_prerelease

SC_API const bool sc_core::sc_is_prerelease

◆ sc_logic_resolution_tbl

SC_API const sc_dt::sc_logic_value_t sc_core::sc_logic_resolution_tbl

Definition at line 41 of file sc_signal_rv.h.

◆ sc_module

Definition at line 48 of file sc_object.h.

◆ sc_port< sc_event_queue_if, 1, SC_ONE_OR_MORE_BOUND >

◆ sc_port< sc_signal_in_if< bool >, 1, SC_ONE_OR_MORE_BOUND >

◆ sc_port< sc_signal_inout_if< bool >, 1, SC_ONE_OR_MORE_BOUND >

◆ sc_port_base

Definition at line 41 of file sc_interface.h.

◆ sc_ppq< sc_time *>

◆ sc_reset

Definition at line 399 of file sc_signal.h.

◆ sc_signal_t< bool, SC_MANY_WRITERS >

◆ sc_signal_t< bool, SC_ONE_WRITER >

◆ sc_signal_t< bool, SC_UNCHECKED_WRITERS >

◆ SC_SIM_ERROR

const int sc_core::SC_SIM_ERROR = 1

Definition at line 45 of file sc_status.h.

◆ SC_SIM_OK

const int sc_core::SC_SIM_OK = 0

Definition at line 44 of file sc_status.h.

◆ SC_SIM_USER_STOP

const int sc_core::SC_SIM_USER_STOP = 2

Definition at line 46 of file sc_status.h.

◆ sc_simcontext

Definition at line 51 of file sc_object.h.

◆ sc_temp_heap

sc_byte_heap SC_API sc_core::sc_temp_heap

◆ sc_time_tuple

Definition at line 74 of file sc_time.h.

◆ sc_trace_file

Definition at line 52 of file sc_object.h.

◆ sc_trace_file_base

Definition at line 53 of file sc_object.h.

◆ sc_version_major

SC_API const unsigned int sc_core::sc_version_major

◆ sc_version_minor

SC_API const unsigned int sc_core::sc_version_minor

◆ sc_version_originator

SC_API const std::string sc_core::sc_version_originator

◆ sc_version_patch

SC_API const unsigned int sc_core::sc_version_patch

◆ sc_version_prerelease

SC_API const std::string sc_core::sc_version_prerelease

◆ sc_version_release_date

SC_API const std::string sc_core::sc_version_release_date

◆ sc_version_string

SC_API const std::string sc_core::sc_version_string

◆ SC_ZERO_TIME

SC_API const sc_time sc_core::SC_ZERO_TIME