- const char *pc_data;
-} s_sg_platf_trace_cbarg_t;
-
-typedef struct s_sg_platf_trace_connect_cbarg *sg_platf_trace_connect_cbarg_t;
-typedef struct s_sg_platf_trace_connect_cbarg {
- e_surf_trace_connect_kind_t kind;
- const char *trace;
- const char *element;
-} s_sg_platf_trace_connect_cbarg_t;
-
-typedef struct s_sg_platf_process_cbarg *sg_platf_process_cbarg_t;
-typedef struct s_sg_platf_process_cbarg {
- const char **argv;
- int argc;
- std::map<std::string, std::string>* properties;
- const char *host;
- const char *function;
- double start_time;
- double kill_time;
- e_surf_process_on_failure_t on_failure;
-} s_sg_platf_process_cbarg_t;
-
-typedef struct s_sg_platf_AS_cbarg *sg_platf_AS_cbarg_t;
-typedef struct s_sg_platf_AS_cbarg {
- const char *id;
- int routing;
-} s_sg_platf_AS_cbarg_t;
+ std::string pc_data;
+};
+
+enum class TraceConnectKind { HOST_AVAIL, SPEED, LINK_AVAIL, BANDWIDTH, LATENCY };
+
+class TraceConnectCreationArgs {
+public:
+ TraceConnectKind kind;
+ std::string trace;
+ std::string element;
+};
+
+enum class ActorOnFailure { DIE, RESTART };
+
+class ActorCreationArgs {
+public:
+ std::vector<std::string> args;
+ std::map<std::string, std::string>* properties = nullptr;
+ const char* host = nullptr;
+ const char* function = nullptr;
+ double start_time = 0.0;
+ double kill_time = 0.0;
+ ActorOnFailure on_failure;
+};