RecoSim  1.0
 All Classes Files Functions Variables Enumerations
manager_interface.h
Go to the documentation of this file.
1 
21 #ifndef MANAGER_INTERFACE_H
22 #define MANAGER_INTERFACE_H
23 
24 #include <vector>
25 #include "module_implementation.h"
27 
29 
30 public:
31 
32  //
33  // ======= Computation time =======
34  //
35 
40  virtual vector<ModuleImplementation> get_implementation_vector(void) const = 0;
41 
46  virtual void set_current_implementation(string implementationName) = 0;
47 
52  virtual string get_current_implementation_fullname(void) = 0;
53 
59 
64  virtual bool has_current_implementation(void) = 0;
65 
66  //
67  // ======= Task properties =======
68  //
69 
75  virtual bool is_static(void) const = 0;
76 
77 
78  //
79  // ======= Misc =======
80  //
81 
85  virtual void set_request_time(void) = 0;
86 
91  virtual int get_nb_processed_transactions(void) const = 0;
92 
98  virtual void updateLists(int offset) = 0;
99 
105  virtual void update_algorithm_execution_mode(string mode) = 0;
106 
115  virtual bool use_context_switch_mode(string implementationName) = 0;
116 
120  virtual void send_start_algorithm_event(void) = 0;
121 
126  virtual int get_nb_transient_channels(void) = 0;
127 
128 };
129 
130 #endif
virtual ModuleImplementation get_current_implementation(void)=0
Get current implementation.
virtual void updateLists(int offset)=0
Update lists after the entire application has been defined. Called once by the reconfiguration manage...
Definition: task_to_schedule_interface.h:28
virtual void set_current_implementation(string implementationName)=0
Set current implementation for the module, based on its name ('implementationName').
virtual void update_algorithm_execution_mode(string mode)=0
Transmit algorithm execution mode from issued by the testbench to the module (e.g. change algorithm implementation to 'VHDL'.
virtual int get_nb_transient_channels(void)=0
Get number of transient channels within the module.
virtual bool use_context_switch_mode(string implementationName)=0
Check if context switch mode is enabled for the implementation named 'implementationName'. In this mode, specific to HW implementations, a context switch is performed each time the task is being replaced on a reconfigurable zone (not only when the task is being preempted).
Definition: module_implementation.h:37
virtual int get_nb_processed_transactions(void) const =0
Get the number of transactions processed so far.
virtual vector< ModuleImplementation > get_implementation_vector(void) const =0
Get task implementations (HW and SW implementations are merged)
virtual bool has_current_implementation(void)=0
Check if exist a current implementation.
Definition: manager_interface.h:28
virtual void send_start_algorithm_event(void)=0
Send a notification to the module in order to start the user algorithm.
virtual bool is_static(void) const =0
Check if the module has been defined static (i.e. always implemented on the FPGA) ...
virtual void set_request_time(void)=0
Set the time at which a configuration request has been made in order to update deadlines.
virtual string get_current_implementation_fullname(void)=0
Get current implementation ID.