#include <rc_process_support.h>

rc_process_reset is a reset channel that implements rc_reset_channel_if. In constrast to normal reset signals it is attached to process by method reset_is(). Another difference is that it does not possess an active level. Instead rc_process_reset only provides a trigger() method that can be called to trigger a single discrete reset and, thus, get_current_level() will always return false. The reset will occur in same delta cycle as the trigger call.
Example:
rc_process_reset preset; // declaration at class scope [...] RC_THREAD(proc); // creation of the thread process reset_is(preset); // proc is reset by preset now [...] preset.trigger(); // trigger the reset (e.g. from another process)
Definition at line 266 of file rc_process_support.h.
Public Member Functions | |
| rc_process_reset () | |
| rc_process_reset (const char *name_) | |
| virtual void | trigger () |
| Trigger a reset on this object. | |
Protected Member Functions | |
| virtual void | register_process_control (rc_process_control &pctrl, bool active_level) const |
| Registers a process control at the channel's reset list. | |
| virtual void | unregister_process_control (rc_process_control &pctrl) const |
| Unregisters a process control from the channel's reset list. | |
| virtual bool | get_current_level () const |
| Returns the reset channel's current level. | |
| virtual const sc_signal< bool > * | get_underlying_reset_signal () const |
| Returns the underlying SystemC signal (if such exists). | |
Private Types | |
| typedef std::set < rc_process_control * > | pctrl_set |
Private Attributes | |
| pctrl_set | p_pctrl_set |
Friends | |
| class | internals::process_support |
| Grants the process functionality access to the protected interface methods. | |
typedef std::set<rc_process_control*> pctrl_set [private] |
Definition at line 273 of file rc_process_support.h.
| rc_process_reset | ( | ) | [explicit] |
Definition at line 636 of file rc_process_support.cpp.
| rc_process_reset | ( | const char * | name_ | ) | [explicit] |
Definition at line 640 of file rc_process_support.cpp.
| void trigger | ( | ) | [virtual] |
| void register_process_control | ( | rc_process_control & | pctrl, | |
| bool | active_level | |||
| ) | const [protected, virtual] |
Registers a process control at the channel's reset list.
| pctrl | The process control object that shall be deactivated in case of a reset. | |
| active_level | The reset trigger level (high or low). |
Implements rc_reset_channel_if.
Definition at line 665 of file rc_process_support.cpp.
| void unregister_process_control | ( | rc_process_control & | pctrl | ) | const [protected, virtual] |
Unregisters a process control from the channel's reset list.
| pctrl | The process control object that shall be unregistered |
Implements rc_reset_channel_if.
Definition at line 675 of file rc_process_support.cpp.
| virtual bool get_current_level | ( | ) | const [inline, protected, virtual] |
Returns the reset channel's current level.
Implements rc_reset_channel_if.
Definition at line 296 of file rc_process_support.h.
| virtual const sc_signal<bool>* get_underlying_reset_signal | ( | ) | const [inline, protected, virtual] |
Returns the underlying SystemC signal (if such exists).
Implements rc_reset_channel_if.
Definition at line 300 of file rc_process_support.h.
friend class internals::process_support [friend] |
Grants the process functionality access to the protected interface methods.
Reimplemented from rc_reset_channel_if.
Definition at line 270 of file rc_process_support.h.
pctrl_set p_pctrl_set [mutable, private] |
Definition at line 304 of file rc_process_support.h.
Referenced by rc_process_reset::register_process_control(), rc_process_reset::trigger(), and rc_process_reset::unregister_process_control().
1.5.3