19 lines
406 B
Odin
19 lines
406 B
Odin
package ecs
|
|
|
|
Signature :: bit_set[0..<COMPONENT_MAX]
|
|
|
|
signature_create :: proc() -> Signature {
|
|
return Signature{}
|
|
}
|
|
|
|
signature_set :: proc(signature: ^Signature, type: ComponentType) {
|
|
signature^ += {cast(int)type}
|
|
}
|
|
|
|
signature_unset :: proc(signature: ^Signature, type: ComponentType) {
|
|
signature^ -= {cast(int)type}
|
|
}
|
|
|
|
signature_clear :: proc(signature: ^Signature) {
|
|
signature^ = {}
|
|
}
|