#include <rc_reconfigurable_module.h>
rc_reconfigurable_module represents a reconfigurable module, as it encapsulates an SC_MODULE and an rc_reconfigurable.
Using rc_reconfigurable_module for the creation of reconfigurable modules is more convenient and, furthermore, also is a requirement for some more advanced ReChannel features to work.
The first template parameter specified the module that has to be derived from, as described in Rendering a Given Module Reconfigurable and Creating a Reconfigurable Module from Scratch.
The second boolean template paramter is internally used to detect whether the inherited module already implements rc_resettable, or not. The rc_reconfigurable_module is guaranteed to implement rc_resettable and therefore always is "resettable".
rc_reconfigurable_module automatically inherits all constructors of M with up to ten arguments. This is made possible by ten templated constructor variants with different parameter count.
Definition at line 310 of file rc_reconfigurable_module.h.
Public Types | |
typedef Module | module_type |
The type of the inherited module. | |
Public Member Functions | |
rc_reconfigurable_module () | |
Default constructor. | |
rc_reconfigurable_module (sc_module_name module_name) | |
Default module constructor. | |
template<class A1> | |
rc_reconfigurable_module (A1 a1) | |
template<class A1, class A2> | |
rc_reconfigurable_module (A1 a1, A2 a2) | |
template<class A1, class A2, class A3> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3) | |
template<class A1, class A2, class A3, class A4> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4) | |
template<class A1, class A2, class A3, class A4, class A5> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4, A5 a5) | |
template<class A1, class A2, class A3, class A4, class A5, class A6> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6) | |
template<class A1, class A2, class A3, class A4, class A5, class A6, class A7> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7) | |
template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8) | |
template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9) | |
template<class A1, class A2, class A3, class A4, class A5, class A6, class A7, class A8, class A9, class A10> | |
rc_reconfigurable_module (A1 a1, A2 a2, A3 a3, A4 a4, A5 a5, A6 a6, A7 a7, A8 a8, A9 a9, A10 a10) | |
Protected Member Functions | |
virtual void | rc_on_reset () |
Called to request the object for an immediate reset. | |
virtual void | rc_on_init_resettable () |
Called when the object shall store its state. | |
sc_object * | rc_find_object (const char *obj_name, const sc_object *rel_obj=NULL) |
Finds SystemC objects by their name. | |
void | next_trigger () |
Calls ReChannel::rc_next_trigger(). | |
void | next_trigger (const sc_event &e) |
void | next_trigger (sc_event_or_list &el) |
void | next_trigger (sc_event_and_list &el) |
void | next_trigger (const sc_time &t) |
void | next_trigger (double v, sc_time_unit tu) |
void | next_trigger (const sc_time &t, const sc_event &e) |
void | next_trigger (double v, sc_time_unit tu, const sc_event &e) |
void | next_trigger (const sc_time &t, sc_event_or_list &el) |
void | next_trigger (double v, sc_time_unit t, sc_event_or_list &el) |
void | next_trigger (const sc_time &t, sc_event_and_list &el) |
void | next_trigger (double v, sc_time_unit tu, sc_event_and_list &el) |
void | wait () |
Calls ReChannel::rc_wait(). | |
void | wait (int n) |
void | wait (const sc_event &e) |
void | wait (sc_event_or_list &el) |
void | wait (sc_event_and_list &el) |
void | wait (const sc_time &t) |
void | wait (double v, sc_time_unit tu) |
void | wait (const sc_time &t, const sc_event &e) |
void | wait (double v, sc_time_unit tu, const sc_event &e) |
void | wait (const sc_time &t, sc_event_or_list &el) |
void | wait (double v, sc_time_unit t, sc_event_or_list &el) |
void | wait (const sc_time &t, sc_event_and_list &el) |
void | wait (double v, sc_time_unit tu, sc_event_and_list &el) |
Private Types | |
typedef internals::reconfigurable::begin_construction | begin_construction |
Private Member Functions | |
RC_STATIC_ASSERT_VALID_MODULE (Module) | |
Static assertion to check if Module is a valid module. |
typedef internals::reconfigurable::begin_construction begin_construction [private] |
Definition at line 325 of file rc_reconfigurable_module.h.
typedef Module module_type |
rc_reconfigurable_module | ( | ) | [inline] |
rc_reconfigurable_module | ( | sc_module_name | module_name | ) | [inline] |
rc_reconfigurable_module | ( | A1 | a1 | ) | [inline] |
Definition at line 626 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2 | |||
) | [inline] |
Definition at line 636 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3 | |||
) | [inline] |
Definition at line 647 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4 | |||
) | [inline] |
Definition at line 658 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4, | |||
A5 | a5 | |||
) | [inline] |
Definition at line 669 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4, | |||
A5 | a5, | |||
A6 | a6 | |||
) | [inline] |
Definition at line 680 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4, | |||
A5 | a5, | |||
A6 | a6, | |||
A7 | a7 | |||
) | [inline] |
Definition at line 692 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4, | |||
A5 | a5, | |||
A6 | a6, | |||
A7 | a7, | |||
A8 | a8 | |||
) | [inline] |
Definition at line 704 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4, | |||
A5 | a5, | |||
A6 | a6, | |||
A7 | a7, | |||
A8 | a8, | |||
A9 | a9 | |||
) | [inline] |
Definition at line 716 of file rc_reconfigurable_module.h.
rc_reconfigurable_module | ( | A1 | a1, | |
A2 | a2, | |||
A3 | a3, | |||
A4 | a4, | |||
A5 | a5, | |||
A6 | a6, | |||
A7 | a7, | |||
A8 | a8, | |||
A9 | a9, | |||
A10 | a10 | |||
) | [inline] |
Definition at line 728 of file rc_reconfigurable_module.h.
RC_STATIC_ASSERT_VALID_MODULE | ( | Module | ) | [private] |
Static assertion to check if Module is a valid module.
A valid module has to be derived from sc_core::sc_module.
virtual void rc_on_reset | ( | ) | [inline, protected, virtual] |
Called to request the object for an immediate reset.
rc_on_reset() is called every time a rc_reconfigurable is activated or deactivated during simulation phase, i.e. normally it will be called twice. An implementation is free to only reset itself either at activation or deactivation.
Implements rc_resettable.
Definition at line 387 of file rc_reconfigurable_module.h.
virtual void rc_on_init_resettable | ( | ) | [inline, protected, virtual] |
Called when the object shall store its state.
This callback method shall be invoked to give the object opportunity to store its initial state. A good point of time may be directly after SystemC's construction phase has finished.
Implements rc_resettable.
Definition at line 389 of file rc_reconfigurable_module.h.
sc_object * rc_find_object | ( | const char * | obj_name, | |
const sc_object * | rel_obj = NULL | |||
) | [inline, protected] |
Finds SystemC objects by their name.
This method redirects to the global rc_find_object() function. Relative name resolution is supported. If rel_obj is not provided or equals NULL, the rc_reconfigurable_module instance, this method is called for, is specified as the name resolution base.
Definition at line 741 of file rc_reconfigurable_module.h.
void next_trigger | ( | ) | [inline, protected] |
void next_trigger | ( | const sc_event & | e | ) | [inline, protected] |
Definition at line 412 of file rc_reconfigurable_module.h.
void next_trigger | ( | sc_event_or_list & | el | ) | [inline, protected] |
Definition at line 415 of file rc_reconfigurable_module.h.
void next_trigger | ( | sc_event_and_list & | el | ) | [inline, protected] |
Definition at line 418 of file rc_reconfigurable_module.h.
void next_trigger | ( | const sc_time & | t | ) | [inline, protected] |
Definition at line 421 of file rc_reconfigurable_module.h.
void next_trigger | ( | double | v, | |
sc_time_unit | tu | |||
) | [inline, protected] |
Definition at line 424 of file rc_reconfigurable_module.h.
void next_trigger | ( | const sc_time & | t, | |
const sc_event & | e | |||
) | [inline, protected] |
Definition at line 427 of file rc_reconfigurable_module.h.
void next_trigger | ( | double | v, | |
sc_time_unit | tu, | |||
const sc_event & | e | |||
) | [inline, protected] |
Definition at line 430 of file rc_reconfigurable_module.h.
void next_trigger | ( | const sc_time & | t, | |
sc_event_or_list & | el | |||
) | [inline, protected] |
Definition at line 433 of file rc_reconfigurable_module.h.
void next_trigger | ( | double | v, | |
sc_time_unit | t, | |||
sc_event_or_list & | el | |||
) | [inline, protected] |
Definition at line 436 of file rc_reconfigurable_module.h.
void next_trigger | ( | const sc_time & | t, | |
sc_event_and_list & | el | |||
) | [inline, protected] |
Definition at line 440 of file rc_reconfigurable_module.h.
void next_trigger | ( | double | v, | |
sc_time_unit | tu, | |||
sc_event_and_list & | el | |||
) | [inline, protected] |
Definition at line 443 of file rc_reconfigurable_module.h.
void wait | ( | ) | [inline, protected] |
void wait | ( | int | n | ) | [inline, protected] |
Definition at line 455 of file rc_reconfigurable_module.h.
void wait | ( | const sc_event & | e | ) | [inline, protected] |
Definition at line 458 of file rc_reconfigurable_module.h.
void wait | ( | sc_event_or_list & | el | ) | [inline, protected] |
Definition at line 461 of file rc_reconfigurable_module.h.
void wait | ( | sc_event_and_list & | el | ) | [inline, protected] |
Definition at line 464 of file rc_reconfigurable_module.h.
void wait | ( | const sc_time & | t | ) | [inline, protected] |
Definition at line 467 of file rc_reconfigurable_module.h.
void wait | ( | double | v, | |
sc_time_unit | tu | |||
) | [inline, protected] |
Definition at line 470 of file rc_reconfigurable_module.h.
void wait | ( | const sc_time & | t, | |
const sc_event & | e | |||
) | [inline, protected] |
Definition at line 473 of file rc_reconfigurable_module.h.
void wait | ( | double | v, | |
sc_time_unit | tu, | |||
const sc_event & | e | |||
) | [inline, protected] |
Definition at line 476 of file rc_reconfigurable_module.h.
void wait | ( | const sc_time & | t, | |
sc_event_or_list & | el | |||
) | [inline, protected] |
Definition at line 479 of file rc_reconfigurable_module.h.
void wait | ( | double | v, | |
sc_time_unit | t, | |||
sc_event_or_list & | el | |||
) | [inline, protected] |
Definition at line 482 of file rc_reconfigurable_module.h.
void wait | ( | const sc_time & | t, | |
sc_event_and_list & | el | |||
) | [inline, protected] |
Definition at line 485 of file rc_reconfigurable_module.h.
void wait | ( | double | v, | |
sc_time_unit | tu, | |||
sc_event_and_list & | el | |||
) | [inline, protected] |
Definition at line 488 of file rc_reconfigurable_module.h.