Lines Matching refs:db

131   cacher_t *db = (cacher_t*)ptr;  in cacher_read()  local
138 if ( db->len == db->start ) /* if cache is empty */ in cacher_read()
142 if (db->eos) in cacher_read()
144 if ( count-bytes > db->cache_size / 2) in cacher_read()
146 len = db->src->proc_buf(db->src->data, buf+bytes, count-bytes); in cacher_read()
149 db->eos = 1; in cacher_read()
155 if ( db->cache_size < count ) in cacher_read()
156 db->cache_size = count; in cacher_read()
157 if ( db->cache_size < - len ) in cacher_read()
158 db->cache_size = - len; in cacher_read()
159 if ( db->cache_size > db->size ) in cacher_read()
160 db->cache_size = db->size; in cacher_read()
161 db->start = 0; in cacher_read()
162 len = db->src->proc_buf(db->src->data, db->buf,db->cache_size); in cacher_read()
163 if (len < 0 && db->cache_size < - len ) in cacher_read()
166 db->cache_size = - len; in cacher_read()
167 if ( db->cache_size > db->size ) in cacher_read()
176 Nlm_MemFree(db->buf); in cacher_read()
177 db->buf = newb; in cacher_read()
178 db->size = - len; in cacher_read()
180 len = db->src->proc_buf(db->src->data, db->buf,db->cache_size); in cacher_read()
182 db->cache_size *= 2; in cacher_read()
186 db->eos = 1 ; in cacher_read()
187 db->len = len; in cacher_read()
190 if ( db->len - db->start > 0 ) in cacher_read()
192 int sz = db->len - db->start; in cacher_read()
195 memcpy(buf+bytes, db->buf + db->start, sz ); in cacher_read()
196 db->start +=sz; in cacher_read()
208 cacher_t *db = (cacher_t*)ptr; in cacher_write() local
215 if ( db->cache_size < count ) in cacher_write()
217 db->cache_size = count; in cacher_write()
218 if ( db->cache_size > db->size ) in cacher_write()
219 db->cache_size = db->size; in cacher_write()
225 if ( db->len == db->cache_size || /* if cache is full */ in cacher_write()
226 count-bytes > db->size / 2 ) /* or new data is too large for this cache */ in cacher_write()
228 if (db->len > 0) in cacher_write()
229 len = db->src->proc_buf(db->src->data, db->buf,db->len); in cacher_write()
230 if (len != db->len) in cacher_write()
232 … ErrPostEx(SEV_ERROR,0,0,"Failure to write data from cache (%d of %d written)",len,db->len); in cacher_write()
235 db->cache_size *=2; in cacher_write()
236 if ( db->cache_size < 2 * count ) in cacher_write()
237 db->cache_size = 2 * count; in cacher_write()
238 if ( db->cache_size > db->size ) in cacher_write()
239 db->cache_size = db->size; in cacher_write()
240 db->start = db->len = 0; in cacher_write()
242 if ( count - bytes > db->cache_size && db->len) /* if there are a lot of data */ in cacher_write()
244 len = db->src->proc_buf(db->src->data, buf+bytes,count-bytes); in cacher_write()
252 len = db->cache_size - db->len; in cacher_write()
256 memcpy(db->buf + db->len, buf+bytes, len); in cacher_write()
257 db->len += len ; in cacher_write()
267 cacher_t *db = (cacher_t*)ptr; in cacher_close() local
270 if (!db->read) in cacher_close()
272 Int4 len, len1 = db->len-db->start; in cacher_close()
275 len = db->src->proc_buf(db->src->data, db->buf+db->start,len1); in cacher_close()
280 if(db->src->close) in cacher_close()
281 rc = db->src->close(db->src->data,commit); in cacher_close()
284 Nlm_MemFree(db->src); in cacher_close()
285 Nlm_MemFree(db->buf); in cacher_close()
286 Nlm_MemFree(db); in cacher_close()
290 db->len = db->start = db->cache_size = db->eos = 0 ; in cacher_close()
335 compressor_header(compressor_t *db,UcharPtr header,int read) in compressor_header() argument
352 db->compr_size = val; in compressor_header()
355 db->decomp_size = val; in compressor_header()
357 …fprintf (stderr,"decompr(%x-%d)-->%x-%d\n",db->compr_size,db->compr_size,db->decomp_size,db->decom… in compressor_header()
361 compressor_header(db,buf,0); in compressor_header()
369 val = db->compr_size; in compressor_header()
372 val = db->decomp_size; in compressor_header()
376 fprintf (stderr,"compr(%x)-->%x ",db->decomp_size,db->compr_size); in compressor_header()
383 Int4 dc = db->decomp_size, cm = db->compr_size; in compressor_header()
384 compressor_header(db,header,2); in compressor_header()
385 assert(cm == db->compr_size); in compressor_header()
386 assert(dc == db->decomp_size); in compressor_header()
395 compressor_t *db = (compressor_t*)ptr ; in compressor_read() local
399 switch(db->mode) in compressor_read()
403 bytes = db->src->proc_buf(db->src->data, (CharPtr)obuf,4); in compressor_read()
408 db->mode=1; /* compresseed mode */ in compressor_read()
411 db->mode=-1; /*uncompresseed mode */ in compressor_read()
417 rc = db->src->proc_buf(db->src->data, (CharPtr)obuf,count); in compressor_read()
426 assert(db->mode == 1); in compressor_read()
427 if ( db->compr_size == 0 ) in compressor_read()
429 bytes = db->src->proc_buf(db->src->data, (CharPtr)lens,8); in compressor_read()
433 compressor_header(db,lens,1); in compressor_read()
435 if ( db->decomp_size > count ) in compressor_read()
439 __FILE__,__LINE__,count,db->decomp_size); in compressor_read()
441 return - db->decomp_size ; /* unsufficient space problem */ in compressor_read()
443 if ( db->compr_size > db->bsize) in compressor_read()
445 unsigned char *nb = (unsigned char*)Nlm_MemNew(db->compr_size); in compressor_read()
449 __FILE__,__LINE__,db->compr_size); in compressor_read()
450 return -db->compr_size; in compressor_read()
452 Nlm_MemFree(db->dbuf); in compressor_read()
453 db->dbuf = nb; in compressor_read()
454 db->bsize = db->compr_size; in compressor_read()
456 bytes = db->src->proc_buf(db->src->data, (CharPtr)db->dbuf,db->compr_size); in compressor_read()
457 if ( bytes < db->compr_size ) in compressor_read()
460 __FILE__,__LINE__,db->compr_size,bytes); in compressor_read()
463 assert (bytes == db->compr_size); in compressor_read()
464 if (Nlmzip_Uncompress (db->dbuf, db->compr_size,obuf,count,&bytes) != NLMZIP_OKAY ) in compressor_read()
469 assert(bytes==db->decomp_size); in compressor_read()
470 db->decomp_size=db->compr_size=0; /* clean buffer reading lock */ in compressor_read()
477 compressor_t *db = (compressor_t*)ptr ; in compressor_write() local
483 switch (db->mode) in compressor_write()
486 bytes = db->src->proc_buf(db->src->data,(char*)"ZIP",4); in compressor_write()
489 db->mode=1; /* compresseed mode */ in compressor_write()
492 return db->src->proc_buf(db->src->data, (CharPtr)buf,count); in compressor_write()
498 while (Nlmzip_Compress (buf, count,db->dbuf+8,db->bsize-8,&bytes) !=NLMZIP_OKAY) in compressor_write()
500 unsigned char *nb = (unsigned char*)Nlm_MemNew(2*db->bsize); in compressor_write()
504 __FILE__,__LINE__,db->compr_size); in compressor_write()
505 return -db->compr_size; in compressor_write()
507 Nlm_MemFree(db->dbuf); in compressor_write()
508 db->dbuf = nb; in compressor_write()
509 db->bsize *=2; in compressor_write()
512 db->decomp_size = count; in compressor_write()
513 db->compr_size = bytes; in compressor_write()
515 compressor_header(db,db->dbuf,0); in compressor_write()
516 bytes = db->src->proc_buf(db->src->data, (CharPtr)db->dbuf,db->compr_size+8); in compressor_write()
517 if ( bytes != db->compr_size+8) in compressor_write()
529 compressor_t *db = (compressor_t*)ptr; in compressor_close() local
532 if(db->src->close) in compressor_close()
533 rc = db->src->close(db->src->data,commit); in compressor_close()
536 if (db->src) in compressor_close()
537 Nlm_MemFree(db->src); in compressor_close()
538 if (db->dbuf) in compressor_close()
539 Nlm_MemFree(db->dbuf); in compressor_close()
540 Nlm_MemFree(db); in compressor_close()
544 db->mode = 0; in compressor_close()
545 db->decomp_size=db->compr_size=0; /* clean buffer reading lock */ in compressor_close()