ISensingCandidateProvider adapter over a SensingWorld fact mirror. 更多...
#include <Targeting.h>
Public 成员函数 | |
| SensingWorldCandidateProvider (SensingWorld &world) noexcept | |
| Binds a non-owning SensingWorld; capability registration remains explicit. | |
| ~SensingWorldCandidateProvider () override=default | |
| Sensing world candidate provider. | |
| void | setFactionRelation (FactionRelationFn relation) |
| Installs optional faction→domain projection used when domain != Any. | |
| Result< std::vector< TargetCandidate > > | query (const TargetingQuery &query) const override |
| Returns broad-phase candidates satisfying the coordinate and spatial constraints. | |
Public 成员函数 继承自 eve::sensing::ISensingCandidateProvider | |
| virtual | ~ISensingCandidateProvider ()=default |
| Releases ISensingCandidateProvider resources. | |
额外继承的成员函数 | |
静态 Public 属性 继承自 eve::sensing::ISensingCandidateProvider | |
| static constexpr const char * | capabilityName = "eve.sensing.ISensingCandidateProvider" |
详细描述
ISensingCandidateProvider adapter over a SensingWorld fact mirror.
Supports World2D queries only. Grid constraints remain Unsupported. Zone filters use mirrored subject zone membership (SensingWorld::setZones). Domain filters require an injected FactionRelationFn.
@ownership Non-owning pointer to SensingWorld; the world must outlive this provider. @thread Call on the same simulation thread as the bound SensingWorld.
在文件 Targeting.h 第 517 行定义.
构造及析构函数说明
◆ SensingWorldCandidateProvider()
|
inlineexplicitnoexcept |
Binds a non-owning SensingWorld; capability registration remains explicit.
在文件 Targeting.h 第 520 行定义.
◆ ~SensingWorldCandidateProvider()
|
overridedefault |
Sensing world candidate provider.
成员函数说明
◆ query()
|
overridevirtual |
Returns broad-phase candidates satisfying the coordinate and spatial constraints.
- 返回
- Owning candidates; no primary target is selected.
- 备注
- Synchronous and read-only. Thread affinity is provider-defined and must be documented by each implementation.
Queries .
实现了 eve::sensing::ISensingCandidateProvider.
在文件 Targeting.cpp 第 397 行定义.
引用了 eve::sensing::Any, eve::sensing::QuerySpec::countPolicy, eve::sensing::DistanceAscending, eve::sensing::TargetCandidate::domain, eve::Diagnostic::error(), eve::sensing::QuerySpec::excludedTags, found, eve::sensing::ZoneRef::fromLogicalId(), eve::SubjectRef::fromPersistentId(), eve::InvalidArgument, eve::sensing::TargetCandidate::location, eve::sensing::QuerySpec::maxCount, eve::sensing::QuerySpec::maxRange, eve::sensing::QuerySpec::minCount, eve::sensing::QuerySpec::minRange, eve::sensing::Neutral, eve::LogicalId::parse(), eve::detail::Id128< Tag >::parse(), eve::sensing::SensingWorld::query(), query(), eve::sensing::QuerySpec::requiredTags, eve::sensing::QuerySpec::sortKey, eve::sensing::TargetCandidate::subject, eve::sensing::SensingWorld::subjects(), eve::sensing::TargetCandidate::tags, eve::sensing::TruncateToMax, eve::Unsupported, valid, eve::sensing::World2D, eve::sensing::WorldPoint::world2D(), eve::sensing::QueryOrigin::x , 以及 eve::sensing::TargetCandidate::zones.
被这些函数引用 query().
◆ setFactionRelation()
|
inline |
Installs optional faction→domain projection used when domain != Any.
在文件 Targeting.h 第 525 行定义.
该类的文档由以下文件生成:
- src/modules/sensing/Targeting.h
- src/modules/sensing/Targeting.cpp
Public 成员函数 继承自