#define SIMDAG_DATATYPES_H
/* Link */
-typedef struct SG_link {
- void *data;
- char *name;
- double capacity;
- double current_bandwidth;
- double current_latency;
-} s_SG_link_t, *SG_link_t;
+typedef struct SD_link_data *SD_link_data_t;
+
+typedef struct SD_link {
+ SD_link_data_t sd_data; /* SD internal data */
+ void *data; /* user data */
+} s_SD_link_t, *SD_link_t;
/* Workstation */
-typedef struct SG_workstation {
- void *data;
- char *name;
- double power;
- double available_power;
- /* TODO: route */
-} s_SG_workstation_t, *SG_workstation_t;
+typedef struct SD_workstation_data *SD_workstation_data_t;
+
+typedef struct SD_workstation {
+ SD_workstation_data_t sd_data; /* SD internal data */
+ void *data; /* user data */
+} s_SD_workstation_t, *SD_workstation_t;
/* Task state */
typedef enum {
- SG_SCHEDULED,
- SG_RUNNING,
- SG_DONE,
- SG_FAILED
-} SG_task_state_t;
+ SD_SCHEDULED,
+ SD_RUNNING,
+ SD_DONE,
+ SD_FAILED
+} SD_task_state_t;
/* Task */
-typedef struct SG_task {
- void *data;
- char *name;
- double amount;
- double remaining_amount;
- SG_task_state_t state;
- /* TODO: dependencies + watch */
-} s_SG_task_t, *SG_task_t;
+typedef struct SD_task_data *SD_task_data_t;
+
+typedef struct SD_task {
+ SD_task_data_t sd_data; /* SD internal data */
+ void *data; /* user data */
+} s_SD_task_t, *SD_task_t;
#endif