X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fmfile.h;h=c4a67e885bbf50ddc4714070c0bad1f7d0fb6264;hb=c5c1c56eebe056a12b7683e54af64c4717e77ff0;hp=864632b12a90cc351005402a403d21e1dedc5005;hpb=6d4e6112c30d94d01367397cd39a62134cce2cae;p=idzebra-moved-to-github.git diff --git a/include/mfile.h b/include/mfile.h index 864632b..c4a67e8 100644 --- a/include/mfile.h +++ b/include/mfile.h @@ -1,24 +1,9 @@ /* - * Copyright (C) 1994-1995, Index Data I/S + * Copyright (C) 1994-1999, Index Data * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * - * $Log: mfile.h,v $ - * Revision 1.5 1995-12-05 11:15:03 quinn - * Fixed FILENAME_MAX for some Sun systems, hopefully. - * - * Revision 1.4 1995/11/30 08:33:30 adam - * Started work on commit facility. - * - * Revision 1.3 1995/09/04 12:33:35 adam - * Various cleanup. YAZ util used instead. - * - * Revision 1.2 1994/09/14 13:10:36 quinn - * Small changes - * - * Revision 1.1 1994/08/23 14:41:46 quinn - * First functional version of mfile. - * + * $Id: mfile.h,v 1.12 1999-12-08 15:03:11 adam Exp $ */ #ifndef MFILE_H @@ -26,15 +11,16 @@ #include -#include - #ifndef FILENAME_MAX #include #define FILENAME_MAX MAXPATHLEN #endif +#ifdef __cplusplus +extern "C" { +#endif + #define MF_MIN_BLOCKS_CREAT 1 /* minimum free blocks in new dir */ -#define MF_DEFAULT_AREA "register" /* Use if no mf_init */ #define MF_MAX_PARTS 28 /* max # of part-files per metafile */ #define mf_blocksize(mf) ((mf)->blocksize) @@ -87,12 +73,12 @@ typedef struct MFile_area_struct /* * Open an area, cotaining metafiles in directories. */ -MFile_area mf_init(const char *name); +MFile_area mf_init(const char *name, const char *spec); /* * Release an area. */ -int mf_dispose(MFile_area ma); +void mf_destroy(MFile_area ma); /* * Open a metafile. @@ -107,21 +93,30 @@ int mf_close(MFile mf); /* * Read one block from a metafile. Interface mirrors bfile. */ -int mf_read(MFile mf, int no, int offset, int num, void *buf); +int mf_read(MFile mf, int no, int offset, int nbytes, void *buf); /* * Same. */ -int mf_write(MFile mf, int no, int offset, int num, const void *buf); +int mf_write(MFile mf, int no, int offset, int nbytes, const void *buf); /* * Destroy a metafile, unlinking component files. File must be open. */ int mf_unlink(MFile mf); + +/* + * Destroy all metafiles. No files may be opened. + */ +void mf_reset(MFile_area ma); + /* * Unlink the file by name, rather than MFile-handle. */ int mf_unlink_name(MFile_area, const char *name); +#ifdef __cplusplus +} +#endif #endif