-/* Timer resource */
-typedef struct surf_timer_resource {
- s_surf_resource_t resource;
- surf_action_t (*wait)(void *cpu, void *dst, xbt_maxmin_float_t size);
-} s_surf_timer_resource_t, surf_timer_resource_t;
-extern surf_timer_resource_t surf_timer_resource;
+extern surf_network_resource_t surf_network_resource;
+void surf_network_resource_init_CM02(const char *filename);
+
+/* Workstation resource */
+typedef struct surf_workstation_resource_extension_private
+*surf_workstation_resource_extension_private_t;
+typedef struct surf_workstation_resource_extension_public {
+ surf_action_t(*execute) (void *workstation, double size);
+ surf_action_t(*sleep) (void *workstation, double duration);
+ void (*suspend) (surf_action_t action);
+ void (*resume) (surf_action_t action);
+ int (*is_suspended) (surf_action_t action);
+ e_surf_cpu_state_t(*get_state) (void *workstation);
+ surf_action_t(*communicate) (void *workstation_src,
+ void *workstation_dst, double size);
+} s_surf_workstation_resource_extension_public_t,
+ *surf_workstation_resource_extension_public_t;
+
+typedef struct surf_workstation_resource {
+ surf_resource_private_t common_private;
+ surf_resource_public_t common_public;
+ surf_workstation_resource_extension_public_t extension_public;
+} s_surf_workstation_resource_t, *surf_workstation_resource_t;
+
+extern surf_workstation_resource_t surf_workstation_resource;
+void surf_workstation_resource_init_CLM03(const char *filename);
+void surf_workstation_resource_init_resource_init_KCCFLN05(const char *filename);
+extern xbt_dict_t workstation_set;