/* * bitmaps.h * * Created on: 24/08/2014 * Author: Pedro */ #ifndef SRC_BITMAPS_H_ #define SRC_BITMAPS_H_ #include "domains.h" void b_check_and_update_bounds(unsigned int d_min, unsigned int d_max); void b_new_val(bitmap *d, unsigned int val); void b_new_range(bitmap *d, unsigned int min, unsigned int max); void b_new_vals(bitmap *d, unsigned int *d_vals, unsigned int n_vals); void b_set_val(bitmap *d, unsigned int val); void b_clear(bitmap *d); bool b_is_empty(bitmap *d); bool b_contains_val(bitmap *d, unsigned int val); bool bs_eq(bitmap *d1, bitmap *d2); unsigned int b_get_nth_val(bitmap *d, unsigned int nth); void b_copy(bitmap *d_dest, bitmap *d_src); unsigned int b_cnt_vals(bitmap *d); int b_get_min_val(bitmap *d); int b_get_max_val(bitmap *d); bool b_intersect_b(bitmap *d1, bitmap *d2); bool b_union_b(bitmap *d1, bitmap *d2); bool b_del_singl_val(bitmap *d_to_chg, bitmap *d); bool b_del_lt(bitmap *d, unsigned int val); bool b_del_le(bitmap *d, unsigned int val); bool b_del_gt(bitmap *d, unsigned int val); bool b_del_ge(bitmap *d, unsigned int val); bool b_del_val(bitmap *d, unsigned int val); bool b_del_all_except_val(bitmap *d, unsigned int val); void b_print_domain(bitmap *d); void b_copy_dev_to_host(bitmap *host_b, void **dev_bs, unsigned int bitmap_n); #endif /* SRC_BITMAPS_H_ */