This commit is contained in:
Michele Caini
2019-02-27 13:57:24 +01:00
parent 1cbf5c4359
commit e98ecfd1f9
8 changed files with 12 additions and 43 deletions

15
TODO
View File

@@ -3,16 +3,25 @@
* long term feature: shared_ptr less resource cache
* custom allocators and EnTT allocator-aware in general (long term feature, I don't actually need it at the moment) - see #22
* debugging tools (#60): the issue online already contains interesting tips on this, look at it
* define basic reactive systems (track entities to which component is attached, track entities from which component is removed, and so on)
* define systems as composable mixins (initializazion, reactive, update, whatever) with flexible auto-detected arguments (registry, views, etc)
* runner proposal: https://en.wikipedia.org/wiki/Fork%E2%80%93join_model https://slide-rs.github.io/specs/03_dispatcher.html
* work stealing job system (see #100)
* meta: sort of meta view based on meta stuff to iterate entities, void * and meta info objects
* hashed string: add implicit check on construction for uniqueness (optional)
* allow for built-in parallel each if possible
* events on replace, so that one can track updated components? indagate impact
* tags revenge: if it's possible, reintroduce them but without a link to entities (see #169 for more details)
* empty components model allows for shared components and prefabs unity-like
* allow to replace std:: with custom implementations
* allow to sort groups (::respect can already work with begin/end instead of a whole sparse set)
* cleanup - see https://github.com/skypjack/entt/commit/ad5cedc08c83e8cbcc8aaeac9634d44624ffe35a#commitcomment-32380903
TODO
* add and burst add with components (sort of registry.create<A, B>(first, last) and registry.create<A, B>())
TODO
* update doc dispatcher (it's outdated) or rollback changes to add extra parameters (is that really useful at the end of the day?)
TODO
* events on replace, so that one can track updated components? indagate impact
* define basic reactive systems (track entities to which component is attached, track entities from which component is removed, and so on)
* define systems as composable mixins (initializazion, reactive, update, whatever) with flexible auto-detected arguments (registry, views, etc)
==> from Tommaso on discord view<Health, Transform>().where<Health>([](h) {h > 5}).where<Transform>([](t) {t.inside(aabb)});

View File

@@ -41,9 +41,6 @@ struct actor {
reg->destroy(entt);
}
/*! @brief Copying an actor isn't allowed. */
actor(const actor &) = delete;
/**
* @brief Move constructor.
*
@@ -59,9 +56,6 @@ struct actor {
other.entt = null;
}
/*! @brief Default copy assignment operator. @return This actor. */
actor & operator=(const actor &) = delete;
/**
* @brief Move assignment operator.
*

View File

@@ -79,9 +79,6 @@ public:
release();
}
/*! @brief Copying a prototype isn't allowed. */
prototype(const prototype &) = delete;
/**
* @brief Move constructor.
*
@@ -99,9 +96,6 @@ public:
other.entity = null;
}
/*! @brief Copying a prototype isn't allowed. @return This prototype. */
prototype & operator=(const prototype &) = delete;
/**
* @brief Move assignment operator.
*

View File

@@ -201,13 +201,9 @@ public:
/*! @brief Default constructor. */
registry() ENTT_NOEXCEPT = default;
/*! @brief Copying a registry isn't allowed. */
registry(const registry &) = delete;
/*! @brief Default move constructor. */
registry(registry &&) = default;
/*! @brief Copying a registry isn't allowed. @return This registry. */
registry & operator=(const registry &) = delete;
/*! @brief Default move assignment operator. @return This registry. */
registry & operator=(registry &&) = default;

View File

@@ -74,13 +74,9 @@ class snapshot {
}
public:
/*! @brief Copying a snapshot isn't allowed. */
snapshot(const snapshot &) = delete;
/*! @brief Default move constructor. */
snapshot(snapshot &&) = default;
/*! @brief Copying a snapshot isn't allowed. @return This snapshot. */
snapshot & operator=(const snapshot &) = delete;
/*! @brief Default move assignment operator. @return This snapshot. */
snapshot & operator=(snapshot &&) = default;
@@ -239,13 +235,9 @@ class snapshot_loader {
}
public:
/*! @brief Copying a snapshot loader isn't allowed. */
snapshot_loader(const snapshot_loader &) = delete;
/*! @brief Default move constructor. */
snapshot_loader(snapshot_loader &&) = default;
/*! @brief Copying a snapshot loader isn't allowed. @return This loader. */
snapshot_loader & operator=(const snapshot_loader &) = delete;
/*! @brief Default move assignment operator. @return This loader. */
snapshot_loader & operator=(snapshot_loader &&) = default;
@@ -437,13 +429,9 @@ public:
: reg{reg}
{}
/*! @brief Copying a snapshot loader isn't allowed. */
continuous_loader(const continuous_loader &) = delete;
/*! @brief Default move constructor. */
continuous_loader(continuous_loader &&) = default;
/*! @brief Copying a snapshot loader isn't allowed. @return This loader. */
continuous_loader & operator=(const continuous_loader &) = delete;
/*! @brief Default move assignment operator. @return This loader. */
continuous_loader & operator=(continuous_loader &&) = default;

View File

@@ -116,13 +116,9 @@ public:
/*! @brief Default constructor. */
scheduler() ENTT_NOEXCEPT = default;
/*! @brief Copying a scheduler isn't allowed. */
scheduler(const scheduler &) = delete;
/*! @brief Default move constructor. */
scheduler(scheduler &&) = default;
/*! @brief Copying a scheduler isn't allowed. @return This scheduler. */
scheduler & operator=(const scheduler &) = delete;
/*! @brief Default move assignment operator. @return This scheduler. */
scheduler & operator=(scheduler &&) = default;

View File

@@ -38,13 +38,9 @@ public:
/*! @brief Default constructor. */
resource_cache() = default;
/*! @brief Copying a cache isn't allowed. */
resource_cache(const resource_cache &) ENTT_NOEXCEPT = delete;
/*! @brief Default move constructor. */
resource_cache(resource_cache &&) ENTT_NOEXCEPT = default;
/*! @brief Copying a cache isn't allowed. @return This cache. */
resource_cache & operator=(const resource_cache &) ENTT_NOEXCEPT = delete;
/*! @brief Default move assignment operator. @return This cache. */
resource_cache & operator=(resource_cache &&) ENTT_NOEXCEPT = default;

View File

@@ -201,13 +201,9 @@ public:
static_assert(std::is_base_of_v<emitter<Derived>, Derived>);
}
/*! @brief Copying an emitter isn't allowed. */
emitter(const emitter &) = delete;
/*! @brief Default move constructor. */
emitter(emitter &&) = default;
/*! @brief Copying an emitter isn't allowed. @return This emitter. */
emitter & operator=(const emitter &) = delete;
/*! @brief Default move assignment operator. @return This emitter. */
emitter & operator=(emitter &&) = default;