#include <rc_process_support.h>
Resettable processes can only be used if a process support object is available at a modules scope.
The macro RC_HAS_PROCESS() can be invoked within resettable modules to add an process_support object as a member of this module. Resettable processes may now be declared by the respective process declaration macros. Furthermore rc_spawn() will be available within that module.
Definition at line 68 of file rc_process_support.h.
Public Member Functions | |
| process_support () | |
| bool | has_reconfigurable_context () const |
| bool | has_non_reconfigurable_context () const |
| rc_reconfigurable & | get_context () const |
| rc_reconfigurable * | get_reconfigurable_context () const |
| void | declare_process (const sc_object &host, const boost::function< void(void)> &declare_proc_callback, const boost::function< void(void)> &func, sc_sensitive &sensitive, bool is_thread=false, bool dont_initialize=false, bool has_sync_reset=false) |
| void | method_process () |
| void | thread_process () |
| void | dont_initialize (const sc_object &host) const |
| rc_process_handle | rc_spawn (boost::function< void(void)> func, const char *name_p=NULL, rc_spawn_options *opt_p=NULL) |
| void | terminate () |
| bool | reset_signal_is (const sc_object &host, const sc_in< bool > &port_, bool active_level) |
| bool | reset_signal_is (const sc_object &host, const sc_signal< bool > &signal_, bool active_level) |
| const sc_signal< bool > * | reset_channel_is (const sc_object &host, rc_reset_channel_if &reset_, bool active_level) |
| void | reset_is (const sc_object &host, rc_process_reset &process_reset) |
| void | set_sync_reset (const sc_object &host, bool b) const |
| rc_process_behavior_change | disable_process_control () const |
Protected Member Functions | |
| void | before_end_of_elaboration () |
Private Types | |
| typedef rc_hash_map < sc_object *, process_info * > | process_info_map |
Private Member Functions | |
| process_info * | _rc_find_process_info (sc_object *proc_obj) const |
| process_info * | _rc_fetch_process_info (sc_object *proc_obj) |
| bool | _rc_check_valid_last_proc (const sc_object &host) const |
Static Private Member Functions | |
| static rc_reconfigurable & | _rc_find_context (sc_object *start_search) |
| static void | register_process_control (const rc_reset_channel_if &reset_channel, rc_process_control &pctrl, bool active_level) |
| static void | unregister_process_control (const rc_reset_channel_if &reset_channel, rc_process_control &pctrl) |
| static bool | get_current_level (const rc_reset_channel_if &reset_channel) |
Private Attributes | |
| rc_reconfigurable & | p_reconf |
| process_info_map | p_reconf_pinfo_map |
| process_info * | p_last_pinfo |
| const sc_object * | p_last_host |
| unsigned int | p_last_host_child_count |
Classes | |
| class | process_info |
| This class is used to store additional process information (internally used). More... | |
typedef rc_hash_map<sc_object*, process_info*> process_info_map [private] |
Definition at line 72 of file rc_process_support.h.
| process_support | ( | ) |
Definition at line 179 of file rc_process_support.cpp.
| bool has_reconfigurable_context | ( | ) | const [inline] |
Definition at line 80 of file rc_process_support.h.
| bool has_non_reconfigurable_context | ( | ) | const [inline] |
Definition at line 83 of file rc_process_support.h.
| rc_reconfigurable& get_context | ( | ) | const [inline] |
Definition at line 86 of file rc_process_support.h.
| rc_reconfigurable * get_reconfigurable_context | ( | ) | const [inline] |
Definition at line 312 of file rc_process_support.h.
| void declare_process | ( | const sc_object & | host, | |
| const boost::function< void(void)> & | declare_proc_callback, | |||
| const boost::function< void(void)> & | func, | |||
| sc_sensitive & | sensitive, | |||
| bool | is_thread = false, |
|||
| bool | dont_initialize = false, |
|||
| bool | has_sync_reset = false | |||
| ) |
Definition at line 201 of file rc_process_support.cpp.
| void method_process | ( | ) |
| void thread_process | ( | ) |
| void dont_initialize | ( | const sc_object & | host | ) | const |
| rc_process_handle rc_spawn | ( | boost::function< void(void)> | func, | |
| const char * | name_p = NULL, |
|||
| rc_spawn_options * | opt_p = NULL | |||
| ) |
Definition at line 386 of file rc_process_support.cpp.
| void terminate | ( | ) |
Definition at line 475 of file rc_process_support.cpp.
| bool reset_signal_is | ( | const sc_object & | host, | |
| const sc_in< bool > & | port_, | |||
| bool | active_level | |||
| ) |
Definition at line 486 of file rc_process_support.cpp.
| bool reset_signal_is | ( | const sc_object & | host, | |
| const sc_signal< bool > & | signal_, | |||
| bool | active_level | |||
| ) |
Definition at line 501 of file rc_process_support.cpp.
| const sc_signal< bool > * reset_channel_is | ( | const sc_object & | host, | |
| rc_reset_channel_if & | reset_, | |||
| bool | active_level | |||
| ) |
Definition at line 516 of file rc_process_support.cpp.
| void reset_is | ( | const sc_object & | host, | |
| rc_process_reset & | process_reset | |||
| ) |
Definition at line 537 of file rc_process_support.cpp.
| void set_sync_reset | ( | const sc_object & | host, | |
| bool | b | |||
| ) | const |
Definition at line 550 of file rc_process_support.cpp.
| rc_process_behavior_change disable_process_control | ( | ) | const |
Definition at line 569 of file rc_process_support.cpp.
| void before_end_of_elaboration | ( | ) | [protected] |
Definition at line 581 of file rc_process_support.cpp.
| process_support::process_info * _rc_find_process_info | ( | sc_object * | proc_obj | ) | const [private] |
Definition at line 591 of file rc_process_support.cpp.
Referenced by process_support::method_process().
| process_support::process_info * _rc_fetch_process_info | ( | sc_object * | proc_obj | ) | [private] |
Definition at line 599 of file rc_process_support.cpp.
| bool _rc_check_valid_last_proc | ( | const sc_object & | host | ) | const [private] |
Definition at line 613 of file rc_process_support.cpp.
Referenced by process_support::dont_initialize().
| rc_reconfigurable & _rc_find_context | ( | sc_object * | start_search | ) | [static, private] |
Definition at line 621 of file rc_process_support.cpp.
| static void register_process_control | ( | const rc_reset_channel_if & | reset_channel, | |
| rc_process_control & | pctrl, | |||
| bool | active_level | |||
| ) | [inline, static, private] |
Definition at line 142 of file rc_process_support.h.
Referenced by process_support::process_info::register_reset_channel().
| static void unregister_process_control | ( | const rc_reset_channel_if & | reset_channel, | |
| rc_process_control & | pctrl | |||
| ) | [inline, static, private] |
Definition at line 147 of file rc_process_support.h.
Referenced by process_support::process_info::~process_info().
| static bool get_current_level | ( | const rc_reset_channel_if & | reset_channel | ) | [inline, static, private] |
Definition at line 152 of file rc_process_support.h.
Referenced by process_support::process_info::update_process_control_state().
rc_reconfigurable& p_reconf [private] |
Definition at line 157 of file rc_process_support.h.
Referenced by process_support::declare_process(), process_support::disable_process_control(), process_support::get_context(), process_support::get_reconfigurable_context(), process_support::has_non_reconfigurable_context(), process_support::has_reconfigurable_context(), process_support::method_process(), process_support::rc_spawn(), and process_support::thread_process().
process_info_map p_reconf_pinfo_map [private] |
Definition at line 158 of file rc_process_support.h.
Referenced by process_support::_rc_fetch_process_info(), process_support::_rc_find_process_info(), process_support::before_end_of_elaboration(), process_support::declare_process(), and process_support::rc_spawn().
process_info* p_last_pinfo [private] |
Definition at line 159 of file rc_process_support.h.
Referenced by process_support::_rc_check_valid_last_proc(), process_support::declare_process(), process_support::dont_initialize(), process_support::reset_channel_is(), process_support::reset_is(), process_support::reset_signal_is(), and process_support::set_sync_reset().
const sc_object* p_last_host [private] |
Definition at line 160 of file rc_process_support.h.
Referenced by process_support::_rc_check_valid_last_proc(), and process_support::declare_process().
unsigned int p_last_host_child_count [private] |
Definition at line 161 of file rc_process_support.h.
Referenced by process_support::_rc_check_valid_last_proc(), process_support::declare_process(), and process_support::reset_signal_is().
1.5.3