载入中...
搜索中...
未找到
LineOfSightRouter.h
浏览该文件的文档.
54 [[nodiscard]] Result<void> addProvider(CoordinateSpace space, const ILineOfSightQuery* provider);
61 [[nodiscard]] Result<void> removeProvider(CoordinateSpace space, const ILineOfSightQuery* provider);
79 [[nodiscard]] static std::optional<CoordinateSpace> spaceOf(const TargetLocation& location) noexcept;
Move-only, checked operation results for the common layer.
Coordinate-safe targeting protocol shared by sensing and gameplay adapters.
Routes each line-of-sight query to the backend that claimed its coordinate space.
Definition LineOfSightRouter.h:37
LineOfSightRouter & operator=(const LineOfSightRouter &)=delete
LineOfSightRouter(const LineOfSightRouter &)=delete
Definition RTSSystems.h:257
std::variant< WorldPoint, GridPoint > TargetLocation
Either a world point or a grid point, with the tag retained.
Definition Targeting.h:198
Result< LineOfSightRouter * > ensureLineOfSightRouter()
The process-wide router, registered as the ILineOfSightQuery capability.
Definition LineOfSightRouter.cpp:33
CoordinateSpace
Coordinate spaces are not interchangeable, even when dimensions match.
Definition Targeting.h:37