X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=include%2Fmfile.h;h=c4a67e885bbf50ddc4714070c0bad1f7d0fb6264;hb=e5ac901438129e9164111e2eb8c21536d1cb34a9;hp=3bd05911517cfe373186ff20d408b0f97577b629;hpb=d75b9accf5a28bd5d8ffd70bbb33b3e8e009d079;p=idzebra-moved-to-github.git diff --git a/include/mfile.h b/include/mfile.h index 3bd0591..c4a67e8 100644 --- a/include/mfile.h +++ b/include/mfile.h @@ -1,21 +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.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 @@ -23,10 +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) @@ -79,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. @@ -99,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