#include "xbt/function_types.h"
-#include "simix/simix.h"
-#include "simix/context.h"
-#include "simix/private.h"
+#include "simgrid/simix.h"
+#include "smx_private.h"
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(bindings);
(*factory)->runall = NULL;
(*factory)->self = smx_ctx_base_self;
(*factory)->get_data = smx_ctx_base_get_data;
- (*factory)->get_thread_id = smx_ctx_base_get_thread_id;
(*factory)->name = "base context factory";
}
void smx_ctx_base_free(smx_context_t context)
{
int i;
-
if (context) {
/* free argv */
if (context->argv) {
for (i = 0; i < context->argc; i++)
- if (context->argv[i])
- free(context->argv[i]);
+ free(context->argv[i]);
free(context->argv);
}
void smx_ctx_base_stop(smx_context_t context)
{
if (context->cleanup_func)
- (*(context->cleanup_func)) (context->data);
+ context->cleanup_func(context->data);
context->iwannadie = 0;
- SIMIX_req_process_cleanup(context->data);
+ simcall_process_cleanup(context->data);
+ context->iwannadie = 1;
}
smx_context_t smx_ctx_base_self(void)
{
return context->data;
}
-
-int smx_ctx_base_get_thread_id()
-{
- return 0;
-}