#ifndef _BITUTILS_H_ #define _BITUTILS_H_ inline int find_first_one(uint32_t value) { for (int bit=0 ; bit<32 ; bit++) { if (value&1) return bit; value>>=1; } return -1; } template T int2bf(unsigned val) { return *(T*)&val; } template uint32_t bf2int(T val) { return *(uint32_t*)&val; } #endif