TODO 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. * long term feature: shared_ptr less locator and resource cache
  2. * custom allocators and EnTT allocator-aware in general (long term feature, I don't actually need it at the moment) - see #22
  3. * debugging tools (#60): the issue online already contains interesting tips on this, look at it
  4. * work stealing job system (see #100) + mt scheduler based on const awareness for types
  5. * allow to replace std:: with custom implementations
  6. * add examples (and credits) from @alanjfs :)
  7. * static reflection, hint: template<> meta_type_t<Type>: meta_descriptor<name, func..., props..., etc...> (see #342)
  8. * update documentation for meta, it contains less than half of the actual feature
  9. * custom pools example:
  10. - lockless fully concurrent ro/rw pool with free lists
  11. - multi instance
  12. - tables
  13. - enable/disable component
  14. - spatial query
  15. - runtime types pool
  16. - off-line/off-memory/remote
  17. - ...
  18. WIP:
  19. * HP: paginate pools
  20. * HP: headless (sparse set only) view
  21. * HP: pass the registry to pools, basic poly storage should have only component member
  22. * HP: make view pack work also with groups, make packs input iterator only, add view adapter for external sources
  23. * HP: write documentation for custom storages and views!!
  24. * HP: any/poly: configurable sbo size, compile-time policies like sbo-required.
  25. * HP: registry: use a poly object for pools, no more pool_data type.
  26. * HP: make runtime views use opaque storage and therefore return also elements.
  27. * HP: poly: support for data members
  28. * add exclude-only views to combine with packs
  29. * deprecate non-owning groups in favor of owning views and view packs, introduce lazy owning views
  30. * view pack: plain function as an alias for operator|, reverse iterators, rbegin and rend
  31. * pagination doesn't work nicely across boundaries probably, give it a look. RO operations are fine, adding components maybe not.
  32. * add observer functions aside observer class
  33. * snapshot: support for range-based archives
  34. * update snapshot documentation to describe alternatives
  35. * page size 0 -> page less mode
  36. * add example: 64 bit ids with 32 bits reserved for users' purposes
  37. * add meta dynamic cast (search base for T in parent, we have the meta type already)
  38. * make meta base/conv node work with storage/any and deprecate/remove meta_base, meta_conv, ...