diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-21 16:06:41 +0200 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2012-05-21 16:06:41 +0200 |
commit | 5ff0441b18582d072e2b6b82b75fbd41e3a26bee (patch) | |
tree | fdcd1226e742f4f7e2dc95f56b989bb19fa3b118 | |
parent | 376544017bf7627b5d5e0fa180778ef209591144 (diff) | |
download | edoors-5ff0441b18582d072e2b6b82b75fbd41e3a26bee.zip edoors-5ff0441b18582d072e2b6b82b75fbd41e3a26bee.tar.gz |
add minimal implementation
-rw-r--r-- | src/lib/eiotas_board.c | 38 | ||||
-rw-r--r-- | src/lib/eiotas_door.c | 38 | ||||
-rw-r--r-- | src/lib/eiotas_iota.c | 46 | ||||
-rw-r--r-- | src/lib/eiotas_main.c | 47 | ||||
-rw-r--r-- | src/lib/eiotas_private.h | 71 | ||||
-rw-r--r-- | src/lib/eiotas_room.c | 38 | ||||
-rw-r--r-- | src/lib/eiotas_spin.c | 39 |
7 files changed, 317 insertions, 0 deletions
diff --git a/src/lib/eiotas_board.c b/src/lib/eiotas_board.c new file mode 100644 index 0000000..060373d --- /dev/null +++ b/src/lib/eiotas_board.c @@ -0,0 +1,38 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifdef HAVE_CONFIG_H +# include "eina_config.h" +#endif + +#include "eiotas_board.h" +#include "eiotas_private.h" + +EAPI Eiotas_Board* +eiotas_board_add(const char* name, Eiotas_Room *parent, Eiotas_User_Bits *user_bits) +{ + // TODO + return NULL; +} + +void eiotas_board_free(Eiotas_Board *board) +{ + DBG("Door free 0x%X",board); + // TODO +} + diff --git a/src/lib/eiotas_door.c b/src/lib/eiotas_door.c new file mode 100644 index 0000000..4d58e4d --- /dev/null +++ b/src/lib/eiotas_door.c @@ -0,0 +1,38 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifdef HAVE_CONFIG_H +# include "eina_config.h" +#endif + +#include "eiotas_door.h" +#include "eiotas_private.h" + +EAPI Eiotas_Door* +eiotas_door_add(const char* name, Eiotas_Room *parent, Eiotas_User_Bits *user_bits) +{ + // TODO + return NULL; +} + +void eiotas_door_free(Eiotas_Door *door) +{ + DBG("Door free 0x%X",door); + // TODO +} + diff --git a/src/lib/eiotas_iota.c b/src/lib/eiotas_iota.c new file mode 100644 index 0000000..1e8e8d8 --- /dev/null +++ b/src/lib/eiotas_iota.c @@ -0,0 +1,46 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifdef HAVE_CONFIG_H +# include "eina_config.h" +#endif + +#include "eiotas_iota.h" +#include "eiotas_private.h" + +void eiotas_iota_init(Eiotas_Iota *iota, const char *name, Eiotas_Iota *parent, Eiotas_Type type) +{ + // TODO +} + +void eiotas_iota_desinit(Eiotas_Iota *iota) +{ + // TODO +} + +void eiotas_iota_free(Eiotas_Iota *iota) +{ + // TODO +} + +EAPI void +eiotas_iota_show(Eiotas_Iota *iota) +{ + DBG("Iota(%d) 0x%X : %s (%s) [0x%X])",iota->type,iota,iota->name,iota->path,iota->parent); +} + diff --git a/src/lib/eiotas_main.c b/src/lib/eiotas_main.c new file mode 100644 index 0000000..1fe87c3 --- /dev/null +++ b/src/lib/eiotas_main.c @@ -0,0 +1,47 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifdef HAVE_CONFIG_H +# include "eina_config.h" +#endif + +#include "eiotas_main.h" +#include "eiotas_private.h" +#include <stdio.h> + +int _eiotas_log_dom; + +static Eiotas_Version _version = { VMAJ, VMIN, VMIC }; + +EAPI Eiotas_Version *eiotas_version = &_version; + +EAPI int eiotas_init() +{ + if(!eina_init()) { + fprintf(stderr,"Error during the initialization of Eina_Log module\n"); + return EXIT_FAILURE; + } + _eiotas_log_dom = eina_log_domain_register("eiotas", EINA_COLOR_CYAN); + return EXIT_SUCCESS; +} + +EAPI int eiotas_shutdown() +{ + return eina_shutdown(); +} + diff --git a/src/lib/eiotas_private.h b/src/lib/eiotas_private.h new file mode 100644 index 0000000..272b16c --- /dev/null +++ b/src/lib/eiotas_private.h @@ -0,0 +1,71 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef __EIOTAS_PRIVATE_H__ +#define __EIOTAS_PRIVATE_H__ + +#include "eiotas_config.h" +#include "eiotas_main.h" + +#include <eina_log.h> +#undef EINA_LOG_DOMAIN_DEFAULT +#define EINA_LOG_DOMAIN_DEFAULT eiotas_log_dom +#define EIOTA_LOG_DOMAIN "eiotas" + +#define MAX_PATH_LENGTH 256 +#define PATH_SEP '/' + +#define CHECK_PARENT() \ + if(parent==NULL) { \ + EINA_LOG_ERR("NULL parent not allowed"); \ + return NULL; \ + } + +#define BUILD_INSTANCE(_type,_x) \ + _type *_x = (_type*)malloc(sizeof(_type)); \ + if(_x==NULL) { \ + EINA_LOG_ERR("malloc error"); \ + return NULL; \ + } + +#ifdef CRITICAL +#undef CRITICAL +#endif +#define CRITICAL(...) EINA_LOG_DOM_CRIT(_eiotas_log_dom, __VA_ARGS__) + +#ifdef ERR +#undef ERR +#endif +#define ERR(...) EINA_LOG_DOM_ERR(_eiotas_log_dom, __VA_ARGS__) + +#ifdef WRN +#undef WRN +#endif +#define WRN(...) EINA_LOG_DOM_WARN(_eiotas_log_dom, __VA_ARGS__) + +#ifdef INF +#undef INF +#endif +#define INF(...) EINA_LOG_DOM_INFO(_eiotas_log_dom, __VA_ARGS__) + +#ifdef DBG +#undef DBG +#endif +#define DBG(...) EINA_LOG_DOM_DBG(_eiotas_log_dom, __VA_ARGS__) + +#endif // __EIOTAS_PRIVATE_H__ diff --git a/src/lib/eiotas_room.c b/src/lib/eiotas_room.c new file mode 100644 index 0000000..9cc4170 --- /dev/null +++ b/src/lib/eiotas_room.c @@ -0,0 +1,38 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifdef HAVE_CONFIG_H +# include "eina_config.h" +#endif + +#include "eiotas_room.h" +#include "eiotas_private.h" + +EAPI Eiotas_Room* +eiotas_room_add(const char* name, Eiotas_Room *parent) +{ + // TODO + return NULL; +} + +void eiotas_room_free(Eiotas_Room *room) +{ + DBG("Room free 0x%X",room); + // TODO +} + diff --git a/src/lib/eiotas_spin.c b/src/lib/eiotas_spin.c new file mode 100644 index 0000000..296db70 --- /dev/null +++ b/src/lib/eiotas_spin.c @@ -0,0 +1,39 @@ +/* EIOTAS + * Copyright (C) 2012 Jérémy Zurcher + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; + * if not, see <http://www.gnu.org/licenses/>. + */ + +#ifdef HAVE_CONFIG_H +# include "eina_config.h" +#endif + +#include "eiotas_spin.h" +#include "eiotas_private.h" + +EAPI Eiotas_Spin* +eiotas_spin_add(const char* name, unsigned int step) +{ + // TODO + return NULL; +} + +EAPI void +eiotas_spin_free(Eiotas_Spin *spin) +{ + DBG("Spin free 0x%X",spin); + // TODO +} + |