TODO 2.1 KB

12345678910111213141516171819202122232425262728293031
  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. * custom pools example (multi instance, tables, enable/disable, and so on...)
  8. WIP:
  9. * registry: deprecate remove_if_exists/remove_all, add remove/erase similar to sparse set that also remove all in case of no components
  10. * scheduler, use any (or poly?) instead of unique_ptr
  11. * any and the like: remove constructor that accepts reference wrapper, allow only in-place T& and entt::make_any<T>(...)
  12. * resource, forward the id to the loader from the cache and if constexpr the call to load, update doc and describe customization points
  13. * make it possible to create views of the type `view<T, T>`, add get by index and such, allow to register custom pools by name with the registry
  14. * add user data to type_info
  15. * make pools available (registry/view/group), review operator| for views
  16. * any_vector for context variables
  17. * make const registry::view thread safe, switch to a view<T...>{registry} model (long term goal)
  18. * weak reference wrapper example with custom storage
  19. * paginate pools
  20. * headless (sparse set only) view
  21. * write documentation for custom storages and views!!
  22. * registry: use a poly object for pools, no more pool_data type.
  23. * make runtime views use opaque storage and therefore return also elements.
  24. * add exclude-only views to combine with packs
  25. * entity-aware observer, add observer functions aside observer class
  26. * deprecate non-owning groups in favor of owning views and view packs, introduce lazy owning views
  27. * pagination doesn't work nicely across boundaries probably, give it a look. RO operations are fine, adding components maybe not.
  28. * snapshot: support for range-based archives
  29. * page size 0 -> page less mode
  30. * add example: 64 bit ids with 32 bits reserved for users' purposes