载入中...
搜索中...
未找到
ClimbingECS.cpp
浏览该文件的文档.
73 "View<EntityRoot, ClimbingBody, ClimbingIntent, ClimbingState, ClimbingLinks, ClimbingCandidateBuffer>",
86 "none", "contact/land/cancel to bounded runtime queue", "Physics mover; SimulationStep", "physics",
90 "State actual motion and contact anchors", "derived pose projection; owning event batch", "none",
Composition-only ECS components and fixed-phase climbing systems.
static Diagnostic error(DiagnosticCode code, std::string message, std::string path={}, DiagnosticDetails details={}, std::string source={})
Construct an error diagnostic with the standard error severity.
Definition Diagnostic.h:125
static Result failure(Status status)
Construct a failed result from a structured status.
Definition Result.h:175
static constexpr std::size_t Capacity
Definition ClimbingECS.h:68
eve::Result< void > replace(std::span< const ClimbingCandidate > candidates, eve::SimulationTick tick)
Atomically replace the buffer; oversize input leaves the old contents unchanged.
Definition ClimbingECS.cpp:10
eve::Result< void > probe(ClimbingRuntime &runtime, physics::World3D &world, const ClimbingPose &pose, eve::SimulationTick tick)
Fill retained storage through the allocation-free production probe path.
Definition ClimbingECS.cpp:24
eve::SimulationTick tick() const noexcept
Tick that produced the current projection.
Definition ClimbingECS.h:83
Fixed-capacity owning candidate set used by the production probe hot path.
Definition Climbing.h:329
void consider(ClimbingCandidate candidate)
Consider one candidate and retain it only when it belongs to the best fixed-capacity set.
Definition Climbing.cpp:23
void swap(ClimbingCandidateSet &other) noexcept
Exchange complete owning slot storage without allocating.
Definition Climbing.cpp:60
void sortAndLimit(std::size_t limit)
Sort by canonical deterministic selection key and clamp to a validated limit.
Definition Climbing.cpp:55
eve::SimulationTick tick() const noexcept
Simulation tick at which the runtime queue was drained.
Definition ClimbingECS.h:131
eve::Result< void > replace(std::span< const ClimbingEvent > events, eve::SimulationTick tick)
Atomically replace the event batch or reject an impossible oversize input.
Definition ClimbingECS.cpp:53
static constexpr std::size_t Capacity
Definition ClimbingECS.h:123
Owner-thread climbing planner and executor for one character.
Definition Climbing.h:653
static eve::Result< void > release(ClimbingRuntimeHandleRef reference)
Releases a module-owned runtime and invalidates its reference.
Definition ClimbingRegistry.cpp:17
static eve::Result< ClimbingRuntimeHandleRef > newRuntime()
Creates a module-owned runtime and returns its generation-qualified reference.
Definition ClimbingRegistry.cpp:8
static constexpr StrongUint64 zero() noexcept
Returns the zero value for this strong type.
Definition StrongUint64.h:24
Box3D rigid-body world. Script coordinates are meters (Box3D native), unlike 2D World which uses pixe...
Definition World3D.h:63
Definition Climbing.cpp:19
std::span< const ClimbingSystemContract > climbingSystemContracts() noexcept
Return immutable process-lifetime contracts for the four climbing ECS phases.
Definition ClimbingECS.cpp:67
@ InvalidArgument
@ PreconditionViolation
Owning, replayable climbing candidate; contains no borrowed query pointers.
Definition Climbing.h:290
Input pose used for one deterministic candidate probe.
Definition Climbing.h:275
Hot authoritative execution component holding the module-owned runtime identity.
Definition ClimbingECS.h:96
eve::Result< void > releaseRuntime()
Release the runtime once and clear this component's handle.
Definition ClimbingECS.cpp:40
eve::SimulationTick lastAdvanceTick
Definition ClimbingECS.h:99
static eve::Result< ClimbingState > create()
Create the canonical module-owned runtime referenced by this component.
Definition ClimbingECS.cpp:32
Static review/tooling description of one concrete climbing ECS phase.
Definition ClimbingECS.h:140
constexpr bool isValid() const noexcept
Returns whether both the handle and its registry epoch are set.
Definition RuntimeRegistry.h:96