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 +} +  | 
