X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a7729514e277aabe9422a2626541f889ad1af08b..3cf22df9688dee5cea0a742b75ffa97bae8bb722:/src/gras/Virtu/rl_process.c diff --git a/src/gras/Virtu/rl_process.c b/src/gras/Virtu/rl_process.c index 10066a6957..49f6e9032c 100644 --- a/src/gras/Virtu/rl_process.c +++ b/src/gras/Virtu/rl_process.c @@ -1,49 +1,44 @@ /* $Id$ */ -/* process_rl - GRAS process handling on real life */ +/* process_rl - GRAS process handling on real life */ -/* Authors: Martin Quinson */ -/* Copyright (C) 2003,2004 da GRAS posse. */ +/* Copyright (c) 2003, 2004 Martin Quinson. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it - under the terms of the license (GNU LGPL) which comes with this package. */ + * under the terms of the license (GNU LGPL) which comes with this package. */ -#include "Virtu/virtu_rl.h" +#include "gras_modinter.h" /* module initialization interface */ +#include "gras/Virtu/virtu_rl.h" +#include "portable.h" -GRAS_LOG_NEW_DEFAULT_SUBCATEGORY(process,GRAS); - /* globals */ -static gras_process_data_t *_gras_process_data; +static gras_procdata_t *_gras_procdata = NULL; +char const *_gras_procname = NULL; -gras_error_t gras_process_init() { - // gras_error_t errcode; - - if (!(_gras_process_data=(gras_process_data_t *)malloc(sizeof(gras_process_data_t)))) - RAISE_MALLOC; - - WARNING0("Implement message queue"); - /* - TRY(gras_dynar_new( &(_gras_process_data->msg_queue) )); - TRY(gras_dynar_new( &(_gras_process_data->cbl_list) )); - */ +void gras_process_init() { + _gras_procdata=xbt_new(gras_procdata_t,1); + gras_procdata_init(); +} +void gras_process_exit() { + gras_procdata_exit(); + free(_gras_procdata); +} - _gras_process_data->userdata = NULL; - return no_error; +const char *xbt_procname(void) { + if(_gras_procname) return _gras_procname; + else return ""; } -gras_error_t gras_process_exit() { - WARNING0("FIXME: not implemented (=> leaking on exit :)"); - return no_error; + +int gras_os_getpid(void) { + return getpid(); } /* ************************************************************************** * Process data * **************************************************************************/ -void *gras_userdata_get(void) { - return _gras_process_data->userdata; -} +gras_procdata_t *gras_procdata_get(void) { + xbt_assert0(_gras_procdata,"Run gras_process_init (ie, gras_init)!"); -void *gras_userdata_set(void *ud) { - _gras_process_data->userdata = ud; - return ud; + return _gras_procdata; }