Commit graph

90 commits

Author SHA1 Message Date
df59cffd43 Fix util::ecs::get(species) 2021-08-12 20:45:41 +03:00
66f733d937 Fix util::ecs::get_if 2021-07-25 13:00:26 +03:00
02b29af95a Introduce util::ecs::behavior::context 2021-07-24 11:14:43 +03:00
4f53537d27 Support non-default-constructible per-species component types in util::ecs 2021-07-23 23:28:44 +03:00
153e0f4230 Support retrieving species name in util::ecs 2021-07-23 10:14:11 +03:00
57fb1e8f1f Add non-throwing util::ecs::get_if 2021-07-22 10:51:32 +03:00
1bdef9134d Add util::ecs::species_count 2021-07-22 10:51:18 +03:00
f55fd29b58 Support entity removal & explicit traversal in util::ecs 2021-07-22 10:51:03 +03:00
37d1c3c3fd Add util::flat_list::data 2021-07-22 10:49:06 +03:00
4d7f7fa927 Rename ecs::behavior::{components -> component_types} 2021-07-21 22:47:32 +03:00
640bbf47c7 Add prototype ecs implementation with tests 2021-07-21 22:08:38 +03:00
fca22c93e2 Add util::type_name 2021-07-21 22:08:13 +03:00
c5802b2bbe Add util::span equality comparison 2021-07-21 22:00:47 +03:00
4b711fc1c4 Add util::span::empty 2021-07-14 17:04:00 +03:00
46d637328a Add util::any_hash 2021-07-13 11:43:03 +03:00
d9c454bc3b Support reading an array pointer in util::binary_stream 2021-07-13 11:42:46 +03:00
fc2b3bd7fd Add util::binary_stream::eof 2021-07-13 11:42:15 +03:00
e831eb8567 Support proper util::span move & copy assignment 2021-07-11 11:37:31 +03:00
b243639f8d Add util::log2 2021-07-07 18:58:13 +03:00
a93715e16e Add utility header for bit manipulation functions 2021-07-06 22:00:57 +03:00
31c27ccfd3 Support adding externally-measured profiling data to util::profiler 2021-06-04 18:01:32 +03:00
375732609b Use high_resolution_clock in util::profiler 2021-06-04 18:01:04 +03:00
2ee35266a6 Use __PRETTY_FUNCTION__ in profile_function macro 2021-06-04 14:30:24 +03:00
f1d995340b Add some type list machinery 2021-05-07 17:38:36 +03:00
1c4fbb1618 Make heterogeneous_container::get return pointers instead of copies 2021-05-07 17:35:11 +03:00
497b90ee7a Fix flat_list::clear for trivially destructible types 2021-04-27 23:12:36 +03:00
f9894647e3 Better 64-bit hash_combine 2021-04-25 22:08:42 +03:00
2eab5b7b9a Add memory size pretty printing 2021-03-13 18:46:09 +03:00
9aa494ab96 Move old statistic module to statistics_lite, a new statistics module can compute percentiles 2021-03-12 14:43:00 +03:00
6e49551045 Add util::span::data 2021-03-07 19:04:48 +03:00
0bed4ae39f Add binary deserialization helper class 2021-03-07 18:28:06 +03:00
c26cf898ca Bugfix in util::function: forward the callable instead of moving it 2021-03-04 14:31:15 +03:00
d695c29cc7 Add util::span 2021-02-25 09:07:28 +03:00
7520901f30 Add utf8 iterator & range 2021-02-23 20:13:33 +03:00
dbeb613740 Make util::empty stream output operator inline 2021-02-17 23:11:25 +03:00
5e7aa7601d Pimpl declaration macros now define a make_pimpl(...) static helper function 2021-01-23 10:42:14 +03:00
07924aa0d5 Various clang compilation issues 2021-01-18 20:02:35 +03:00
2205b5e2a7 util/io_fwd was a bad idea 2021-01-18 18:17:57 +03:00
d7469920de Clang compilation fixes: use non-template stream output operators 2021-01-18 18:11:01 +03:00
e7cac4a618 Clang compilation fixes 2021-01-18 18:01:03 +03:00
22f5b85854 Node-based binary heap (wip) 2020-12-16 11:05:29 +03:00
9c54f6e730 Add function profiling macro 2020-12-16 11:05:29 +03:00
eff7be5653 Redesign profiler: hierarchical, thread-aware, dump into log::info upon request 2020-12-16 11:05:29 +03:00
ce4e561cac Support merging two util::statistics 2020-12-16 11:05:29 +03:00
7751d6fd36 Add util::statistics::count 2020-12-16 11:05:29 +03:00
0517609b8b Add util/hash header 2020-12-11 17:58:36 +03:00
abd40bfa4d Make util::profiler use the logging system 2020-11-29 12:30:02 +03:00
8ea508ee20 Fix flat_list: destructor hack should only compile for types with nontrivial destructor 2020-11-29 12:27:41 +03:00
d470fe7346 Add a heterogeneous container (with type list specified at compile-time) & tests 2020-11-26 22:01:57 +03:00
ccef8f91ea Optimize flat_list::clear for the case of trivially-destructible types 2020-11-26 14:43:30 +03:00