X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fidzebra%2Fres.h;h=6164c5eb75358f6ef6c0dee37505582f695478bd;hb=4478d785b7769691261005c98063b98a5a5971b3;hp=e343e1936e189a396b16e0fa7cce26c93aecba0e;hpb=ec214819d7b9e2f5c362584d8e38f83e13aae600;p=idzebra-moved-to-github.git diff --git a/include/idzebra/res.h b/include/idzebra/res.h index e343e19..6164c5e 100644 --- a/include/idzebra/res.h +++ b/include/idzebra/res.h @@ -1,6 +1,6 @@ -/* $Id: res.h,v 1.1 2004-08-25 09:23:36 adam Exp $ - Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004 - Index Data Aps +/* $Id: res.h,v 1.10 2006-08-14 10:40:14 adam Exp $ + Copyright (C) 1995-2006 + Index Data ApS This file is part of the Zebra server. @@ -15,36 +15,90 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Zebra; see the file LICENSE.zebra. If not, write to the -Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ +#ifndef IDZEBRA_RES_H +#define IDZEBRA_RES_H +#include -#ifndef RES_H -#define RES_H +YAZ_BEGIN_CDECL -#ifdef __cplusplus -extern "C" { -#endif +typedef struct res_struct *Res; - typedef struct res_struct *Res; - - Res res_open (const char *name, Res res_def, Res over_res); - void res_close (Res r); - const char *res_get (Res r, const char *name); - const char *res_get_def (Res r, const char *name, const char *def); - int res_get_match (Res r, const char *name, const char *value, const char *s); - void res_set (Res r, const char *name, const char *value); - int res_trav (Res r, const char *prefix, void *p, - void (*f)(void *p, const char *name, const char *value)); - int res_write (Res r); - const char *res_get_prefix (Res r, const char *name, const char *prefix, - const char *def); - -#ifdef __cplusplus -} -#endif +YAZ_EXPORT +Res res_open(Res res_def, Res over_res); + +YAZ_EXPORT +void res_close(Res r); + +YAZ_EXPORT +ZEBRA_RES res_read_file(Res r, const char *fname); + +YAZ_EXPORT +ZEBRA_RES res_write_file(Res r, const char *fname); + +YAZ_EXPORT +void res_clear(Res r); + +YAZ_EXPORT +const char *res_get(Res r, const char *name); + +YAZ_EXPORT +const char *res_get_def(Res r, const char *name, const char *def); + +YAZ_EXPORT +int res_get_match(Res r, const char *name, const char *value, const char *s); + +YAZ_EXPORT +void res_set(Res r, const char *name, const char *value); + +YAZ_EXPORT +int res_trav(Res r, const char *prefix, void *p, + void (*f)(void *p, const char *name, const char *value)); + +YAZ_EXPORT +const char *res_get_prefix(Res r, const char *name, const char *prefix, + const char *def); + +YAZ_EXPORT +ZEBRA_RES res_get_int(Res r, const char *name, int *val); + + +/* == pop ================================================================= */ + +YAZ_EXPORT +Res res_add_over (Res p, Res t); + +YAZ_EXPORT +void res_remove_over (Res r); + +YAZ_EXPORT +void res_close_over (Res r); + +YAZ_EXPORT +void res_add (Res r, const char *name, const char *value); + +YAZ_EXPORT +char **res_2_array (Res r); + +YAZ_EXPORT +char **res_get_array(Res r, const char* name); + +YAZ_EXPORT +void res_dump (Res r, int level); + +YAZ_END_CDECL #endif +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +