/* * 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_ */