ecs-test/ecs/signature.odin

19 lines
400 B
Odin

package ecs
Signature :: bit_set[0..<COMPONENT_MAX]
signature_make :: proc() -> Signature {
return Signature{}
}
signature_set :: proc(signature: ^Signature, type: ComponentID) {
signature^ += {cast(int)type}
}
signature_unset :: proc(signature: ^Signature, type: ComponentID) {
signature^ -= {cast(int)type}
}
signature_clear :: proc(signature: ^Signature) {
signature^ = {}
}