Home | History | Annotate | Line # | Download | only in dist
      1  1.1  mrg /*
      2  1.1  mrg  * Copyright 2008-2009 Katholieke Universiteit Leuven
      3  1.1  mrg  *
      4  1.1  mrg  * Use of this software is governed by the MIT license
      5  1.1  mrg  *
      6  1.1  mrg  * Written by Sven Verdoolaege, K.U.Leuven, Departement
      7  1.1  mrg  * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
      8  1.1  mrg  */
      9  1.1  mrg 
     10  1.1  mrg #ifndef ISL_BLK_H
     11  1.1  mrg #define ISL_BLK_H
     12  1.1  mrg 
     13  1.1  mrg #include <isl_int.h>
     14  1.1  mrg 
     15  1.1  mrg #if defined(__cplusplus)
     16  1.1  mrg extern "C" {
     17  1.1  mrg #endif
     18  1.1  mrg 
     19  1.1  mrg struct isl_blk {
     20  1.1  mrg 	size_t size;
     21  1.1  mrg 	isl_int *data;
     22  1.1  mrg };
     23  1.1  mrg 
     24  1.1  mrg #define ISL_BLK_CACHE_SIZE	20
     25  1.1  mrg 
     26  1.1  mrg struct isl_ctx;
     27  1.1  mrg 
     28  1.1  mrg struct isl_blk isl_blk_alloc(struct isl_ctx *ctx, size_t n);
     29  1.1  mrg struct isl_blk isl_blk_empty(void);
     30  1.1  mrg int isl_blk_is_error(struct isl_blk block);
     31  1.1  mrg struct isl_blk isl_blk_extend(struct isl_ctx *ctx, struct isl_blk block,
     32  1.1  mrg 				size_t new_n);
     33  1.1  mrg void isl_blk_free(struct isl_ctx *ctx, struct isl_blk block);
     34  1.1  mrg void isl_blk_clear_cache(struct isl_ctx *ctx);
     35  1.1  mrg 
     36  1.1  mrg #if defined(__cplusplus)
     37  1.1  mrg }
     38  1.1  mrg #endif
     39  1.1  mrg 
     40  1.1  mrg #endif
     41