Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
stop loading surf.h from C files
[simgrid.git] / src / include / surf / surf.h
index 532f1cf..9fc3d95 100644 (file)
 #include "simgrid/datatypes.h"
 #include "simgrid/forward.h"
 
+#ifndef __cplusplus
+#error This is a C++ only file, now
+#endif
+
 #ifdef __cplusplus
 
 namespace simgrid {
@@ -26,7 +30,6 @@ class CpuModel;
 class HostModel;
 class NetworkModel;
 class StorageModel;
-class Resource;
 class NetworkCm02Link;
 class Action;
 }
@@ -34,23 +37,18 @@ class Action;
 
 typedef simgrid::surf::Model surf_Model;
 typedef simgrid::surf::CpuModel surf_CpuModel;
-typedef simgrid::surf::Cpu surf_Cpu;
 typedef simgrid::surf::HostModel surf_HostModel;
 typedef simgrid::surf::NetworkModel surf_NetworkModel;
 typedef simgrid::surf::StorageModel surf_StorageModel;
-typedef simgrid::surf::Resource surf_Resource;
 typedef simgrid::surf::Action surf_Action;
 
 #else
 
 typedef struct surf_Model surf_Model;
 typedef struct surf_CpuModel surf_CpuModel;
-typedef struct surf_Cpu surf_Cpu;
 typedef struct surf_HostModel surf_HostModel;
 typedef struct surf_NetworkModel surf_NetworkModel;
 typedef struct surf_StorageModel surf_StorageModel;
-typedef struct surf_Resource surf_Resource;
-typedef struct surf_Host surf_Host;
 typedef struct surf_Action surf_Action;
 
 #endif
@@ -95,10 +93,11 @@ struct surf_model_description {
   const char *description;
   void_f_void_t model_init_preparse;
 };
-typedef struct surf_model_description  s_surf_model_description_t;
-typedef struct surf_model_description* surf_model_description_t;
+typedef struct surf_model_description s_surf_model_description_t;
 
-XBT_PUBLIC(int) find_model_description(s_surf_model_description_t * table, const char *name);
+#ifdef __cplusplus
+XBT_PUBLIC(int) find_model_description(s_surf_model_description_t* table, std::string name);
+#endif
 XBT_PUBLIC(void) model_help(const char *category, s_surf_model_description_t * table);
 
 /***************************/
@@ -424,22 +423,12 @@ XBT_PUBLIC(void) surf_exit();
 /* surf parse file related (public because called from a test suite) */
 XBT_PUBLIC(void) parse_platform_file(const char *file);
 
-/*
- * Returns the initial path. On Windows the initial path is the current directory for the current process in the other
- * case the function returns "./" that represents the current directory on Unix/Linux platforms.
- */
-const char *__surf_get_initial_path();
-
 /********** Tracing **********/
 /* from surf_instr.c */
 void TRACE_surf_action(surf_action_t surf_action, const char *category);
 
 /* instr_routing.c */
 void instr_routing_define_callbacks ();
-void instr_new_variable_type (const char *new_typename, const char *color);
-void instr_new_user_variable_type  (const char *father_type, const char *new_typename, const char *color);
-void instr_new_user_state_type (const char *father_type, const char *new_typename);
-void instr_new_value_for_user_state_type (const char *_typename, const char *value, const char *color);
 int instr_platform_traced ();
 xbt_graph_t instr_routing_platform_graph ();
 void instr_routing_platform_graph_export_graphviz (xbt_graph_t g, const char *filename);