1#ifndef __VECS_TYPE_ID_H__
2#define __VECS_TYPE_ID_H__
7#include "dynamic_bitset.h"
12using ComponentId = size_t;
13using ComponentMask = storage::dynamic_bitset;
18 static std::size_t get_type_id() {
19 return get_decayed_type_id<std::decay_t<T>>();
23 template<
typename DecayedT>
24 static std::size_t get_decayed_type_id() {
25 static std::size_t type_id = m_counter++;
29 static std::size_t m_counter;
32template<
typename... Components>
35 (mask.set(TypeIDGenerator::get_type_id<Components>()), ...);
A dynamic bitset that automatically grows to support an arbitrary number of bits.
Definition dynamic_bitset.h:19