3 /* process - GRAS process handling (common code for RL and SG) */
5 /* Authors: Martin Quinson */
6 /* Copyright (C) 2003,2004 da GRAS posse. */
8 /* This program is free software; you can redistribute it and/or modify it
9 under the terms of the license (GNU LGPL) which comes with this package. */
11 #include "gras_private.h"
12 #include "gras/Virtu/virtu_interface.h"
13 #include "gras/Msg/msg_interface.h" /* FIXME: Get rid of this cyclic */
15 GRAS_LOG_NEW_DEFAULT_SUBCATEGORY(process,gras,"Process manipulation code");
17 /* **************************************************************************
19 * **************************************************************************/
20 void *gras_userdata_get(void) {
21 gras_procdata_t *pd=gras_procdata_get();
25 void gras_userdata_set(void *ud) {
26 gras_procdata_t *pd=gras_procdata_get();
32 gras_procdata_init() {
33 gras_procdata_t *pd=gras_procdata_get();
35 gras_dynar_new(&(pd->msg_queue), sizeof(gras_msg_t), NULL);
36 gras_dynar_new(&(pd->cbl_list), sizeof(gras_cblist_t *),gras_cbl_free);
37 gras_dynar_new(&(pd->sockets), sizeof(gras_socket_t*), NULL);
41 gras_procdata_exit() {
42 gras_procdata_t *pd=gras_procdata_get();
44 gras_dynar_free(pd->msg_queue);
45 gras_dynar_free(pd->cbl_list);
46 gras_dynar_free(pd->sockets);
50 gras_socketset_get(void) {
51 return gras_procdata_get()->sockets;