Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
access_policy.hpp File Reference
#include <helios/ecs/component/component.hpp>
#include <helios/ecs/query/details/traits.hpp>
#include <helios/ecs/resource/resource.hpp>
#include <helios/log/logger.hpp>
#include <helios/utils/common_traits.hpp>
#include <algorithm>
#include <span>
#include <string_view>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  helios::ecs::ComponentConflictInfo
 Describes a single component access conflict between two policies. More...
struct  helios::ecs::ResourceConflictInfo
 Describes a single resource access conflict between two policies. More...
class  helios::ecs::AccessPolicy
 Stores data access requirements for a system at compile time. More...
class  helios::ecs::AccessPolicyBuilder
 Fluent builder for constructing an AccessPolicy. More...

Namespaces

namespace  helios
namespace  helios::ecs
namespace  helios::ecs::details

Functions

constexpr bool helios::ecs::details::HasIntersection (std::span< const ComponentTypeId > lhs, std::span< const ComponentTypeId > rhs) noexcept
 Checks if two sorted ranges have any common elements.
constexpr bool helios::ecs::details::HasIntersectionBinarySearch (std::span< const ResourceTypeId > lhs, std::span< const ResourceTypeId > rhs) noexcept
 Checks if any element from one range exists in another sorted range.