OpenSDN source code
bitvector.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  bit_vector_
 

Macros

#define BV_BAD_BITNUM   0xffffffff /* Illegal bit number */
 

Typedefs

typedef uint32_t bv_bitnum_t
 
typedef struct bit_vector_ bit_vector
 
typedef boolean(* bv_callback) (void *context, bv_bitnum_t bit_number, boolean new_bit_value, boolean old_bit_value)
 

Enumerations

enum  bv_callback_option { BV_CALL_CHANGE , BV_CALL_SET }
 

Functions

void bv_clean (bit_vector *bv)
 
int bv_set_bit (bit_vector *bv, bv_bitnum_t bit_number)
 
boolean bv_clear_bit (bit_vector *bv, bv_bitnum_t bit_number)
 
boolean bv_bit_is_set (bit_vector *bv, bv_bitnum_t bit_number)
 
void bv_init_vector (bit_vector *bv, boolean fast_vects)
 
int bv_and_vectors (bit_vector *first, bit_vector *second, bit_vector *result, bv_callback callback, void *context, bv_callback_option cb_opt)
 
int bv_or_vectors (bit_vector *first, bit_vector *second, bit_vector *result, bv_callback callback, void *context, bv_callback_option cb_opt)
 
int bv_xor_vectors (bit_vector *first, bit_vector *second, bit_vector *result, bv_callback callback, void *context, bv_callback_option cb_opt)
 
int bv_clear_vectors (bit_vector *first, bit_vector *second, bit_vector *result, bv_callback callback, void *context, bv_callback_option cb_opt)
 
int bv_copy_vector (bit_vector *src, bit_vector *dest, bv_callback callback, void *context, bv_callback_option cb_opt)
 
int bv_walk_vector (bit_vector *vect, bv_callback callback, void *context)
 
bv_bitnum_t bv_first_set_bit (bit_vector *bv)
 
boolean bv_empty (bit_vector *bv)
 
bv_bitnum_t bv_first_clear_bit (bit_vector *bv)
 
bv_bitnum_t bv_find_clear_bit (bit_vector *bv)
 
void bv_clear_all_bits (bit_vector *bv, bv_callback callback, void *context, bv_callback_option cb_opt)
 

Macro Definition Documentation

◆ BV_BAD_BITNUM

#define BV_BAD_BITNUM   0xffffffff /* Illegal bit number */

Definition at line 374 of file bitvector.h.

Typedef Documentation

◆ bit_vector

typedef struct bit_vector_ bit_vector

◆ bv_bitnum_t

typedef uint32_t bv_bitnum_t

Definition at line 373 of file bitvector.h.

◆ bv_callback

typedef boolean(* bv_callback) (void *context, bv_bitnum_t bit_number, boolean new_bit_value, boolean old_bit_value)

Definition at line 395 of file bitvector.h.

Enumeration Type Documentation

◆ bv_callback_option

Enumerator
BV_CALL_CHANGE 
BV_CALL_SET 

Definition at line 403 of file bitvector.h.

Function Documentation

◆ bv_and_vectors()

int bv_and_vectors ( bit_vector first,
bit_vector second,
bit_vector result,
bv_callback  callback,
void *  context,
bv_callback_option  cb_opt 
)

◆ bv_bit_is_set()

boolean bv_bit_is_set ( bit_vector bv,
bv_bitnum_t  bit_number 
)

◆ bv_clean()

void bv_clean ( bit_vector bv)

◆ bv_clear_all_bits()

void bv_clear_all_bits ( bit_vector bv,
bv_callback  callback,
void *  context,
bv_callback_option  cb_opt 
)

◆ bv_clear_bit()

boolean bv_clear_bit ( bit_vector bv,
bv_bitnum_t  bit_number 
)

◆ bv_clear_vectors()

int bv_clear_vectors ( bit_vector first,
bit_vector second,
bit_vector result,
bv_callback  callback,
void *  context,
bv_callback_option  cb_opt 
)

◆ bv_copy_vector()

int bv_copy_vector ( bit_vector src,
bit_vector dest,
bv_callback  callback,
void *  context,
bv_callback_option  cb_opt 
)

◆ bv_empty()

boolean bv_empty ( bit_vector bv)

◆ bv_find_clear_bit()

bv_bitnum_t bv_find_clear_bit ( bit_vector bv)

◆ bv_first_clear_bit()

bv_bitnum_t bv_first_clear_bit ( bit_vector bv)

◆ bv_first_set_bit()

bv_bitnum_t bv_first_set_bit ( bit_vector bv)

◆ bv_init_vector()

void bv_init_vector ( bit_vector bv,
boolean  fast_vects 
)

◆ bv_or_vectors()

int bv_or_vectors ( bit_vector first,
bit_vector second,
bit_vector result,
bv_callback  callback,
void *  context,
bv_callback_option  cb_opt 
)

◆ bv_set_bit()

int bv_set_bit ( bit_vector bv,
bv_bitnum_t  bit_number 
)

◆ bv_walk_vector()

int bv_walk_vector ( bit_vector vect,
bv_callback  callback,
void *  context 
)

◆ bv_xor_vectors()

int bv_xor_vectors ( bit_vector first,
bit_vector second,
bit_vector result,
bv_callback  callback,
void *  context,
bv_callback_option  cb_opt 
)