gwenhywfar
4.3.1
|
00001 /*************************************************************************** 00002 begin : Mon Aug 11 2008 00003 copyright : (C) 2008 by Martin Preuss 00004 email : martin@libchipcard.de 00005 00006 *************************************************************************** 00007 * * 00008 * This library is free software; you can redistribute it and/or * 00009 * modify it under the terms of the GNU Lesser General Public * 00010 * License as published by the Free Software Foundation; either * 00011 * version 2.1 of the License, or (at your option) any later version. * 00012 * * 00013 * This library is distributed in the hope that it will be useful, * 00014 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00016 * Lesser General Public License for more details. * 00017 * * 00018 * You should have received a copy of the GNU Lesser General Public * 00019 * License along with this library; if not, write to the Free Software * 00020 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * 00021 * MA 02111-1307 USA * 00022 * * 00023 ***************************************************************************/ 00024 00025 00026 #ifndef GWENHYWFAR_CONFIGMGR_BE_H 00027 #define GWENHYWFAR_CONFIGMGR_BE_H 00028 00029 00030 #include <gwenhywfar/configmgr.h> 00031 #include <gwenhywfar/plugin.h> 00032 00033 00034 00035 GWENHYWFAR_API 00036 GWEN_CONFIGMGR *GWEN_ConfigMgr_new(const char *url); 00037 00038 00039 typedef int (*GWEN_CONFIGMGR_GETGROUP_FN)(GWEN_CONFIGMGR *mgr, 00040 const char *groupName, 00041 const char *subGroupName, 00042 GWEN_DB_NODE **pDb); 00043 00044 typedef int (*GWEN_CONFIGMGR_SETGROUP_FN)(GWEN_CONFIGMGR *mgr, 00045 const char *groupName, 00046 const char *subGroupName, 00047 GWEN_DB_NODE *db); 00048 00049 typedef int (*GWEN_CONFIGMGR_LOCKGROUP_FN)(GWEN_CONFIGMGR *mgr, 00050 const char *groupName, 00051 const char *subGroupName); 00052 00053 typedef int (*GWEN_CONFIGMGR_UNLOCKGROUP_FN)(GWEN_CONFIGMGR *mgr, 00054 const char *groupName, 00055 const char *subGroupName); 00056 00057 typedef int (*GWEN_CONFIGMGR_GETUNIQUEID_FN)(GWEN_CONFIGMGR *mgr, 00058 const char *groupName, 00059 char *buffer, 00060 uint32_t bufferLen); 00061 00062 typedef int (*GWEN_CONFIGMGR_DELETEGROUP_FN)(GWEN_CONFIGMGR *mgr, 00063 const char *groupName, 00064 const char *subGroupName); 00065 00066 typedef int (*GWEN_CONFIGMGR_LISTGROUPS_FN)(GWEN_CONFIGMGR *mgr, 00067 GWEN_STRINGLIST *sl); 00068 00069 typedef int (*GWEN_CONFIGMGR_LISTSUBGROUPS_FN)(GWEN_CONFIGMGR *mgr, 00070 const char *groupName, 00071 GWEN_STRINGLIST *sl); 00072 00073 00074 00075 GWENHYWFAR_API 00076 GWEN_CONFIGMGR_GETGROUP_FN GWEN_ConfigMgr_SetGetGroupFn(GWEN_CONFIGMGR *mgr, 00077 GWEN_CONFIGMGR_GETGROUP_FN f); 00078 00079 GWENHYWFAR_API 00080 GWEN_CONFIGMGR_SETGROUP_FN GWEN_ConfigMgr_SetSetGroupFn(GWEN_CONFIGMGR *mgr, 00081 GWEN_CONFIGMGR_SETGROUP_FN f); 00082 00083 GWENHYWFAR_API 00084 GWEN_CONFIGMGR_LOCKGROUP_FN GWEN_ConfigMgr_SetLockGroupFn(GWEN_CONFIGMGR *mgr, 00085 GWEN_CONFIGMGR_LOCKGROUP_FN f); 00086 00087 GWENHYWFAR_API 00088 GWEN_CONFIGMGR_UNLOCKGROUP_FN GWEN_ConfigMgr_SetUnlockGroupFn(GWEN_CONFIGMGR *mgr, 00089 GWEN_CONFIGMGR_UNLOCKGROUP_FN f); 00090 00091 GWENHYWFAR_API 00092 GWEN_CONFIGMGR_GETUNIQUEID_FN GWEN_ConfigMgr_SetGetUniqueIdFn(GWEN_CONFIGMGR *mgr, 00093 GWEN_CONFIGMGR_GETUNIQUEID_FN f); 00094 00095 GWENHYWFAR_API 00096 GWEN_CONFIGMGR_DELETEGROUP_FN GWEN_ConfigMgr_SetDeleteGroupFn(GWEN_CONFIGMGR *mgr, 00097 GWEN_CONFIGMGR_DELETEGROUP_FN f); 00098 00099 GWENHYWFAR_API 00100 GWEN_CONFIGMGR_LISTGROUPS_FN GWEN_ConfigMgr_SetListGroupsFn(GWEN_CONFIGMGR *mgr, 00101 GWEN_CONFIGMGR_LISTGROUPS_FN f); 00102 00103 GWENHYWFAR_API 00104 GWEN_CONFIGMGR_LISTSUBGROUPS_FN GWEN_ConfigMgr_SetListSubGroupsFn(GWEN_CONFIGMGR *mgr, 00105 GWEN_CONFIGMGR_LISTSUBGROUPS_FN f); 00106 00107 00108 00109 00110 00111 typedef GWEN_CONFIGMGR* (*GWEN_CONFIGMGR_PLUGIN_FACTORYFN)(GWEN_PLUGIN *pl, 00112 const char *url); 00113 00114 GWENHYWFAR_API 00115 GWEN_PLUGIN *GWEN_ConfigMgr_Plugin_new(GWEN_PLUGIN_MANAGER *pm, 00116 const char *name, 00117 const char *fileName); 00118 00119 GWENHYWFAR_API 00120 void GWEN_ConfigMgr_Plugin_SetFactoryFn(GWEN_PLUGIN *pl, 00121 GWEN_CONFIGMGR_PLUGIN_FACTORYFN f); 00122 00123 00124 00125 #endif 00126