mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
Files
00a43bb11c45cfb2e07fa0e79d0eb7bb7ef04c19
33 lines
792 B
C
33 lines
792 B
C
|
|||
#ifndef Py_BITSET_H
|
|||
#define Py_BITSET_H
|
|||
#ifdef __cplusplus
|
|||
extern "C" {
|
|||
#endif
|
|||
|
|||
/* Bitset interface */
|
|||
|
|||
#define BYTE char
|
|||
|
|||
typedef BYTE *bitset;
|
|||
|
|||
bitset newbitset(int nbits);
|
|||
void delbitset(bitset bs);
|
|||
#define testbit(ss, ibit) (((ss)[BIT2BYTE(ibit)] & BIT2MASK(ibit)) != 0)
|
|||
int addbit(bitset bs, int ibit); /* Returns 0 if already set */
|
|||
int samebitset(bitset bs1, bitset bs2, int nbits);
|
|||
void mergebitset(bitset bs1, bitset bs2, int nbits);
|
|||
|
|||
#define BITSPERBYTE (8*sizeof(BYTE))
|
|||
#define NBYTES(nbits) (((nbits) + BITSPERBYTE - 1) / BITSPERBYTE)
|
|||
|
|||
#define BIT2BYTE(ibit) ((ibit) / BITSPERBYTE)
|
|||
#define BIT2SHIFT(ibit) ((ibit) % BITSPERBYTE)
|
|||
#define BIT2MASK(ibit) (1 << BIT2SHIFT(ibit))
|
|||
#define BYTE2BIT(ibyte) ((ibyte) * BITSPERBYTE)
|
|||
|
|||
#ifdef __cplusplus
|
|||
}
|
|||
#endif
|
|||
#endif /* !Py_BITSET_H */
|