X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fbfile.h;h=69a3b5b2c47e7442d5f678f14cc9745adf85149e;hb=e89f9552c15bc7f95c0495457a36ac45914fcb40;hp=101a4ac592fc116bd19a922dd4ff3ccdb2248d57;hpb=4b748c85825d964add98d53b85b4f01292cef4b4;p=idzebra-moved-to-github.git diff --git a/include/bfile.h b/include/bfile.h index 101a4ac..69a3b5b 100644 --- a/include/bfile.h +++ b/include/bfile.h @@ -1,10 +1,18 @@ /* - * Copyright (C) 1994-1995, Index Data I/S + * Copyright (C) 1994-1997, Index Data I/S * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: bfile.h,v $ - * Revision 1.13 1996-10-29 13:43:07 adam + * Revision 1.15 1997-09-17 12:19:07 adam + * Zebra version corresponds to YAZ version 1.4. + * Changed Zebra server so that it doesn't depend on global common_resource. + * + * Revision 1.14 1997/09/05 15:29:58 adam + * Changed prototype for chr_map_input - added const. + * Added support for C++, headers uses extern "C" for public definitions. + * + * Revision 1.13 1996/10/29 13:43:07 adam * Added a few comments. * * Revision 1.12 1996/03/26 16:00:44 adam @@ -45,8 +53,17 @@ #include +#ifdef __cplusplus +extern "C" { +#endif + #define bf_blocksize(bf) mf_blocksize(bf->mf) +typedef struct BFiles_struct *BFiles; + +BFiles bfs_create (const char *spec); +void bfs_destroy (BFiles bfiles); + typedef struct BFile_struct { MFile mf; @@ -62,7 +79,7 @@ int bf_close (BFile); opens bfile with name 'name' and with 'block_size' as block size. returns bfile handle is successful; NULL otherwise */ -BFile bf_open (const char *name, int block_size, int wflag); +BFile bf_open (BFiles bfs, const char *name, int block_size, int wflag); /* bf_read: reads bytes from bfile 'bf'. reads 'num' bytes (or whole block if 0) from offset 'offset' from @@ -78,19 +95,23 @@ int bf_read (BFile bf, int no, int offset, int num, void *buf); */ int bf_write (BFile bf, int no, int offset, int num, const void *buf); -/* bf_cache: enables/disables bfile cache */ -void bf_cache (int enableFlag); +/* bf_cache: enables bfile cache if spec is not NULL */ +void bf_cache (BFiles bfs, const char *spec); /* bf_lockDir: specifies locking directory for the cache system */ -void bf_lockDir (const char *lockDir); +void bf_lockDir (BFiles bfs, const char *lockDir); /* bf_commitExists: returns 1 if commit is pending; 0 otherwise */ -int bf_commitExists (void); +int bf_commitExists (BFiles bfs); /* bf_commitExec: executes commit */ -void bf_commitExec (void); +void bf_commitExec (BFiles bfs); /* bf_commitClean: cleans commit files, etc */ -void bf_commitClean (void); +void bf_commitClean (BFiles bfs, const char *spec); + +#ifdef __cplusplus +} +#endif #endif