updated doc

This commit is contained in:
Michele Caini
2019-04-22 17:59:54 +02:00
parent 9f5f4b9c91
commit 444ae73ffb

View File

@@ -51,7 +51,7 @@ constexpr exclude_t<Type...> exclude{};
* The registry is the core class of the entity-component framework.<br/>
* It stores entities and arranges pools of components on a per request basis.
* By means of a registry, users can manage entities and components and thus
* create views to iterate them.
* create views or groups to iterate them.
*
* @tparam Entity A valid entity type (see entt_traits for more details).
*/
@@ -417,9 +417,8 @@ public:
* @brief Returns the numeric identifier of a component.
*
* The given component doesn't need to be necessarily in use.<br/>
* Do not use this functionality to provide numeric identifiers to types at
* runtime, because they aren't guaranteed to be stable between different
* runs.
* Do not use this functionality to generate numeric identifiers for types
* at runtime. They aren't guaranteed to be stable between different runs.
*
* @tparam Component Type of component to query.
* @return Runtime numeric identifier of the given type of component.
@@ -538,7 +537,6 @@ public:
* `[raw<Component>(), raw<Component>() + size<Component>()]` is always a
* valid range, even if the container is empty.
*
* @note
* There are no guarantees on the order of the components. Use a view if you
* want to iterate entities and components in the expected order.
*
@@ -569,7 +567,6 @@ public:
* `[data<Component>(), data<Component>() + size<Component>()]` is always a
* valid range, even if the container is empty.
*
* @note
* There are no guarantees on the order of the entities. Use a view if you
* want to iterate entities and components in the expected order.
*
@@ -614,7 +611,7 @@ public:
* @brief Returns the actual version for an entity identifier.
*
* In case entity identifers are stored around, this function can be used to
* know if they are still valid or the entity has been destroyed and
* know if they are still valid or if the entity has been destroyed and
* potentially recycled.
*
* @warning
@@ -683,19 +680,7 @@ public:
/**
* @brief Assigns each element in a range an entity.
*
* There are two kinds of entity identifiers:
*
* * Newly created ones in case no entities have been previously destroyed.
* * Recycled ones with updated versions.
*
* Users should not care about the type of the returned entity identifier.
* In case entity identifers are stored around, the `valid` member
* function can be used to know if they are still valid or the entity has
* been destroyed and potentially recycled.
*
* The entities so generated have assigned the given components, if any. The
* components must be at least default constructible. A compilation error
* will occur otherwhise.
* @sa create
*
* @tparam Component Types of components to assign to the entity.
* @tparam It Type of forward iterator.
@@ -911,7 +896,7 @@ public:
* Equivalent to the following snippet (pseudocode):
*
* @code{.cpp}
* auto &component = registry.has<Component>(entity) ? registry.get<Component>(entity) : registry.assign<Component>(entity, value);
* auto &component = registry.has<Component>(entity) ? registry.get<Component>(entity) : registry.assign<Component>(entity, args...);
* @endcode
*
* Prefer this function anyway because it has slightly better performance.
@@ -1002,11 +987,7 @@ public:
* Equivalent to the following snippet (pseudocode):
*
* @code{.cpp}
* if(registry.has<Component>(entity)) {
* registry.replace<Component>(entity, args...);
* } else {
* registry.assign<Component>(entity, args...);
* }
* auto &component = registry.has<Component>(entity) ? registry.replace<Component>(entity, args...) : registry.assign<Component>(entity, args...);
* @endcode
*
* Prefer this function anyway because it has slightly better performance.
@@ -1040,14 +1021,13 @@ public:
* an entity.
*
* The function type for a listener is equivalent to:
*
* @code{.cpp}
* void(registry<Entity> &, Entity, Component &);
* @endcode
*
* Listeners are invoked **after** the component has been assigned to the
* entity. The order of invocation of the listeners isn't guaranteed.<br/>
* Note also that the greater the number of listeners, the greater the
* performance hit when a new component is created.
* entity. The order of invocation of the listeners isn't guaranteed.
*
* @sa sink
*
@@ -1067,14 +1047,13 @@ public:
* whenever an instance of the given component is explicitly replaced.
*
* The function type for a listener is equivalent to:
*
* @code{.cpp}
* void(registry<Entity> &, Entity, Component &);
* @endcode
*
* Listeners are invoked **before** the component has been replaced. The
* order of invocation of the listeners isn't guaranteed.<br/>
* Note also that the greater the number of listeners, the greater the
* performance hit when a new component is created.
* order of invocation of the listeners isn't guaranteed.
*
* @sa sink
*
@@ -1095,14 +1074,13 @@ public:
* thus destroyed.
*
* The function type for a listener is equivalent to:
*
* @code{.cpp}
* void(registry<Entity> &, Entity);
* @endcode
*
* Listeners are invoked **before** the component has been removed from the
* entity. The order of invocation of the listeners isn't guaranteed.<br/>
* Note also that the greater the number of listeners, the greater the
* performance hit when a component is destroyed.
* entity. The order of invocation of the listeners isn't guaranteed.
*
* @sa sink
*
@@ -1149,9 +1127,7 @@ public:
* this member function.
*
* @warning
* Pools of components that are owned by a group cannot be sorted anymore.
* The group takes the ownership of the pools and arrange components so as
* to iterate them as fast as possible.<br/>
* Pools of components that are owned by a group cannot be sorted.<br/>
* An assertion will abort the execution at runtime in debug mode in case
* the pool is owned by a group.
*
@@ -1197,9 +1173,7 @@ public:
* Any subsequent change to `B` won't affect the order in `A`.
*
* @warning
* Pools of components that are owned by a group cannot be sorted anymore.
* The group takes the ownership of the pools and arrange components so as
* to iterate them as fast as possible.<br/>
* Pools of components that are owned by a group cannot be sorted.<br/>
* An assertion will abort the execution at runtime in debug mode in case
* the pool is owned by a group.
*
@@ -1279,15 +1253,12 @@ public:
* The signature of the function should be equivalent to the following:
*
* @code{.cpp}
* void(const entity_type);
* void(const Entity);
* @endcode
*
* This function is fairly slow and should not be used frequently.<br/>
* Consider using a view if the goal is to iterate entities that have a
* determinate set of components. A view is usually faster than combining
* this function with a bunch of custom tests.<br/>
* On the other side, this function can be used to iterate all the entities
* that are in use, regardless of their components.
* This function is fairly slow and should not be used frequently. However,
* it's useful for iterating all the entities still in use, regardless of
* their components.
*
* @tparam Func Type of the function object to invoke.
* @param func A valid function object.
@@ -1314,12 +1285,9 @@ public:
}
/**
* @brief Checks if an entity is an orphan.
*
* An orphan is an entity that has no components assigned.
*
* @brief Checks if an entity has components assigned.
* @param entity A valid entity identifier.
* @return True if the entity is an orphan, false otherwise.
* @return True if the entity has no components assigned, false otherwise.
*/
bool orphan(const entity_type entity) const {
ENTT_ASSERT(valid(entity));
@@ -1341,7 +1309,7 @@ public:
* The signature of the function should be equivalent to the following:
*
* @code{.cpp}
* void(const entity_type);
* void(const Entity);
* @endcode
*
* This function can be very slow and should not be used frequently.