X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=isamc%2Fisamc-p.h;h=4abbc72787cce86cf500570223d779610f508d9c;hb=7107ed62f445c83a9c79b375158442f6b03f3ce6;hp=47015c048db10cbca3ce1bdbc3a2ac8c5480157d;hpb=932697e4b6d6dd00a210b84b285bd8c0000f379f;p=idzebra-moved-to-github.git diff --git a/isamc/isamc-p.h b/isamc/isamc-p.h index 47015c0..4abbc72 100644 --- a/isamc/isamc-p.h +++ b/isamc/isamc-p.h @@ -4,7 +4,10 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: isamc-p.h,v $ - * Revision 1.1 1996-10-29 13:40:47 adam + * Revision 1.2 1996-11-01 08:59:13 adam + * First version of isc_merge that supports update/delete. + * + * Revision 1.1 1996/10/29 13:40:47 adam * First work. * */ @@ -21,12 +24,19 @@ typedef struct ISAMC_file_s { ISAMC_head head; BFile bf; int head_is_dirty; + + int no_writes; + int no_reads; + int no_skip_writes; + int no_allocated; + int no_released; + int no_remap; } *ISAMC_file; struct ISAMC_s { int no_files; int max_cat; - char *r_buf; + char *merge_buf; ISAMC_M method; ISAMC_file files; }; @@ -40,6 +50,13 @@ struct ISAMC_PP_s { int next; ISAMC is; void *decodeClientData; + int deleteFlag; }; -#define ISAMC_BLOCK_OFFSET (sizeof(int)+sizeof(int)) +#define ISAMC_BLOCK_OFFSET (sizeof(int)+sizeof(int)) + +int isc_alloc_block (ISAMC is, int cat); +void isc_release_block (ISAMC is, int cat, int pos); +int isc_write_dblock (ISAMC is, int cat, int pos, char *src, + int nextpos, int offset); +