+/* 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, xbt_maxmin_float_t size);
+ surf_action_t(*wait) (void *workstation, xbt_maxmin_float_t size);
+ e_surf_cpu_state_t(*get_state) (void *workstation);
+ surf_action_t(*communicate) (void *workstation_src,
+ void *workstation_dst,
+ xbt_maxmin_float_t 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(const char *filename);
+