Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Clean surf
[simgrid.git] / src / include / surf / surf.h
index 162e610..196cb15 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2004-2013. The SimGrid Team.
+/* Copyright (c) 2004-2014. The SimGrid Team.
  * All rights reserved.                                                     */
 
 /* This program is free software; you can redistribute it and/or modify it
@@ -82,7 +82,7 @@ typedef struct RoutingEdge RoutingEdge;
 typedef struct RoutingPlatf RoutingPlatf;
 #endif
 
-/** \ingroup SURF_models
+/** @ingroup SURF_c_bindings
  *  \brief Model datatype
  *
  *  Generic data structure for a model. The workstations,
@@ -102,7 +102,7 @@ typedef WorkstationCLM03 *surf_workstation_CLM03_t;
 typedef NetworkCm02Link *surf_network_link_t;
 typedef Cpu *surf_cpu_t;
 
-/** \ingroup SURF_actions
+/** @ingroup SURF_c_bindings 
  *  \brief Action structure
  *
  *  Never create s_surf_action_t by yourself ! The actions are created
@@ -111,8 +111,6 @@ typedef Cpu *surf_cpu_t;
  *  \see e_surf_action_state_t
  */
 typedef Action *surf_action_t;
-typedef ActionLmm *surf_action_lmm_t;
-typedef StorageActionLmm *surf_storage_action_lmm_t;
 
 typedef As *AS_t;
 typedef RoutingEdge *routing_edge_t;
@@ -188,6 +186,7 @@ typedef enum {
 /***************************/
 /* Generic model object */
 /***************************/
+
 //FIXME:REMOVE typedef struct s_routing_platf s_routing_platf_t, *routing_platf_t;
 XBT_PUBLIC_DATA(routing_platf_t) routing_platf;
 
@@ -571,7 +570,7 @@ XBT_PUBLIC(void) surf_vm_workstation_set_bound(surf_resource_t resource, double
  * 
  * @param resource [description]
  * @param cpu [description]
- * @param long [description]
+ * @param mask [description]
  */
 XBT_PUBLIC(void) surf_vm_workstation_set_affinity(surf_resource_t resource, surf_resource_t cpu, unsigned long mask);
 
@@ -598,7 +597,7 @@ XBT_PUBLIC(surf_action_t) surf_cpu_sleep(surf_resource_t cpu, double duration);
  * @brief Get the workstation power peak
  * @details [long description]
  * 
- * @param resource The surf workstation
+ * @param host The surf workstation
  * @return The power peak
  */
 XBT_PUBLIC(double) surf_workstation_get_current_power_peak(surf_resource_t host);
@@ -607,7 +606,7 @@ XBT_PUBLIC(double) surf_workstation_get_current_power_peak(surf_resource_t host)
  * @brief [brief description]
  * @details [long description]
  * 
- * @param resource [description]
+ * @param host [description]
  * @param pstate_index [description]
  * 
  * @return [description]
@@ -618,7 +617,7 @@ XBT_PUBLIC(double) surf_workstation_get_power_peak_at(surf_resource_t host, int
  * @brief [brief description]
  * @details [long description]
  * 
- * @param resource [description]
+ * @param host [description]
  * @return [description]
  */
 XBT_PUBLIC(int) surf_workstation_get_nb_pstates(surf_resource_t host);
@@ -627,7 +626,7 @@ XBT_PUBLIC(int) surf_workstation_get_nb_pstates(surf_resource_t host);
  * @brief [brief description]
  * @details [long description]
  * 
- * @param resource [description]
+ * @param host [description]
  * @param pstate_index [description]
  */
 XBT_PUBLIC(void) surf_workstation_set_power_peak_at(surf_resource_t host, int pstate_index);
@@ -635,7 +634,7 @@ XBT_PUBLIC(void) surf_workstation_set_power_peak_at(surf_resource_t host, int ps
 /**
  * @brief Get the consumed energy (in joules) of a workstation
  * 
- * @param resource The surf workstation
+ * @param host The surf workstation
  * @return The consumed energy
  */
 XBT_PUBLIC(double) surf_workstation_get_consumed_energy(surf_resource_t host);
@@ -854,7 +853,7 @@ XBT_PUBLIC(e_surf_action_state_t) surf_action_get_state(surf_action_t action);
  * @param action The surf action
  * @return The cost of the action
  */
-XBT_PUBLIC(int) surf_action_get_cost(surf_action_t action);
+XBT_PUBLIC(double) surf_action_get_cost(surf_action_t action);
 
 /**
  * @brief [brief desrciption]
@@ -862,7 +861,7 @@ XBT_PUBLIC(int) surf_action_get_cost(surf_action_t action);
  * 
  * @param action The surf cpu action
  * @param cpu [description]
- * @param long [description]
+ * @param mask [description]
  */
 XBT_PUBLIC(void) surf_cpu_action_set_affinity(surf_action_t action, surf_resource_t cpu, unsigned long mask);
 
@@ -875,6 +874,14 @@ XBT_PUBLIC(void) surf_cpu_action_set_affinity(surf_action_t action, surf_resourc
  */
 XBT_PUBLIC(void) surf_cpu_action_set_bound(surf_action_t action, double bound);
 
+/**
+ * @brief [brief description]
+ * @details [long description]
+ *
+ * @param action The surf network action
+ */
+XBT_PUBLIC(double) surf_network_action_get_latency_limited(surf_action_t action);
+
 /**
  * @brief Get the file associated to a storage action
  * 
@@ -1258,6 +1265,9 @@ XBT_PUBLIC(void) surf_exit(void);
 /* Prototypes of the functions that handle the properties */
 XBT_PUBLIC_DATA(xbt_dict_t) current_property_set;       /* the prop set for the currently parsed element (also used in SIMIX) */
 
+/* The same for model_prop set*/
+XBT_PUBLIC_DATA(xbt_dict_t) current_model_property_set;
+
 /* surf parse file related (public because called from a test suite) */
 XBT_PUBLIC(void) parse_platform_file(const char *file);