bitmap_ord_to_pos(9)
NAME
bitmap_ord_to_pos
SYNOPSIS
int bitmap_ord_to_pos(const unsigned long * buf, int ord, int bits);
ARGUMENTS
- buf
- pointer to bitmap
- ord
- ordinal bit position (n-th set bit, n >= 0)
- bits
- number of valid bit positions in buf
DESCRIPTION
Map the ordinal offset of bit ord in buf to its position in buf. Value
of ord should be in range 0 <= ord < weight(buf), else results are
undefined.
If for example, just bits 4 through 7 are set in buf, then ord values 0
through 3 will get mapped to 4 through 7, respectively, and all other
ord values return undefined values. When ord value 3 gets mapped to
(returns) pos value 7 in this example, that means that the 3rd set bit
(starting with 0th) is at position 7 in buf.
The bit positions 0 through bits are valid positions in buf.