#ifndef ENTT_ENTITY_FWD_HPP #define ENTT_ENTITY_FWD_HPP #include #include "../core/fwd.hpp" #include "utility.hpp" namespace entt { template> class basic_sparse_set; template, typename = void> class basic_storage; template class basic_registry; template class basic_view; template struct basic_runtime_view; template class basic_group; template class basic_observer; template class basic_organizer; template struct basic_handle; template class basic_snapshot; template class basic_snapshot_loader; template class basic_continuous_loader; /*! @brief Default entity identifier. */ enum class entity : id_type {}; /*! @brief Alias declaration for the most common use case. */ using sparse_set = basic_sparse_set; /** * @brief Alias declaration for the most common use case. * @tparam Args Other template parameters. */ template using storage = basic_storage; /*! @brief Alias declaration for the most common use case. */ using registry = basic_registry; /*! @brief Alias declaration for the most common use case. */ using observer = basic_observer; /*! @brief Alias declaration for the most common use case. */ using organizer = basic_organizer; /*! @brief Alias declaration for the most common use case. */ using handle = basic_handle; /*! @brief Alias declaration for the most common use case. */ using const_handle = basic_handle; /** * @brief Alias declaration for the most common use case. * @tparam Args Other template parameters. */ template using handle_view = basic_handle; /** * @brief Alias declaration for the most common use case. * @tparam Args Other template parameters. */ template using const_handle_view = basic_handle; /*! @brief Alias declaration for the most common use case. */ using snapshot = basic_snapshot; /*! @brief Alias declaration for the most common use case. */ using snapshot_loader = basic_snapshot_loader; /*! @brief Alias declaration for the most common use case. */ using continuous_loader = basic_continuous_loader; /** * @brief Alias declaration for the most common use case. * @tparam Get Types of components iterated by the view. * @tparam Exclude Types of components used to filter the view. */ template> using view = basic_view; /*! @brief Alias declaration for the most common use case. */ using runtime_view = basic_runtime_view; /** * @brief Alias declaration for the most common use case. * @tparam Args Other template parameters. */ template using group = basic_group; } // namespace entt #endif