mirror of
https://gitlab.com/banjo.decomp/banjo-kazooie
synced 2026-08-27 07:47:13 -04:00
33 lines
1.0 KiB
C++
33 lines
1.0 KiB
C++
#ifndef BANJO_KAZOOIE_CORE2_MAPSPECIFICFLAGS_H
|
|
#define BANJO_KAZOOIE_CORE2_MAPSPECIFICFLAGS_H
|
|
|
|
#include <ultra64.h>
|
|
#include "bool.h"
|
|
#include "enums.h"
|
|
|
|
u32 mapSpecificFlags_calculateChecksum(void);
|
|
void mapSpecificFlags_updateCRCs(void);
|
|
void mapSpecificFlags_clearAll(void);
|
|
bool mapSpecificFlags_get(s32 index);
|
|
u32 mapSpecificFlags_getN(s32 start_index, s32 count);
|
|
bool mapSpecificFlags_getAndReset(s32 index);
|
|
void mapSpecificFlags_set(s32 index, bool value);
|
|
void mapSpecificFlags_setN(s32 start_index, s32 values, s32 count);
|
|
u32 mapSpecificFlags_getAll(void);
|
|
void mapSpecificFlags_setAll(u32 flags);
|
|
bool mapSpecificFlags_validateCRC1(void);
|
|
|
|
// This is like a std::vector<bool> from C++
|
|
struct bitfield_s {
|
|
s32 count;
|
|
s32 data[];
|
|
};
|
|
|
|
struct bitfield_s *bitfield_new(s32 count);
|
|
void bitfield_free(struct bitfield_s *this);
|
|
void bitfield_setBit(struct bitfield_s *this, s32 index, bool value);
|
|
bool bitfield_getBit(struct bitfield_s *this, s32 index);
|
|
void bitfield_setAll(struct bitfield_s *this, bool value);
|
|
|
|
#endif
|