bitfield.h 558 B

123456789101112131415161718192021
  1. /*
  2. * Bitfield
  3. * Copyright (c) 2013, Jouni Malinen <j@w1.fi>
  4. *
  5. * This software may be distributed under the terms of the BSD license.
  6. * See README for more details.
  7. */
  8. #ifndef BITFIELD_H
  9. #define BITFIELD_H
  10. struct bitfield;
  11. struct bitfield * bitfield_alloc(size_t max_bits);
  12. void bitfield_free(struct bitfield *bf);
  13. void bitfield_set(struct bitfield *bf, size_t bit);
  14. void bitfield_clear(struct bitfield *bf, size_t bit);
  15. int bitfield_is_set(struct bitfield *bf, size_t bit);
  16. int bitfield_get_first_zero(struct bitfield *bf);
  17. #endif /* BITFIELD_H */