载入中...
搜索中...
未找到
ClimbingServices.h
浏览该文件的文档.
28using ClimbingStaminaReservation = eve::detail::StrongUint64<detail::ClimbingStaminaReservationTag>;
114 ClimbingRuntime& runtime, physics::World3D& world, const ClimbingPose& pose, ClimbingIntent& intent,
120[[nodiscard]] EVENGINE_API_DOMAINS eve::Result<ClimbingOptionalServiceState> dispatchClimbingEvents(
Tick-addressed command buffering for deterministic climbing input.
Internal storage primitive for domain-owned unsigned values.
Owner-thread climbing planner and executor for one character.
Definition Climbing.h:653
Selection transaction that atomically joins external stamina reservation to runtime publication.
Definition ClimbingServices.h:107
Consumer-owned authority for project-specific condition tags.
Definition ClimbingServices.h:67
virtual eve::Result< ClimbingConditionDecision > evaluate(ClimbingServiceSubject subject, std::span< const std::string > requiredTags, eve::SimulationTick tick)=0
Evaluate every required tag for one subject at the injected simulation tick.
virtual ~IClimbingConditionAuthority()=default
Releases IClimbingConditionAuthority resources.
Optional post-simulation event adapter; it does not own the runtime event queue.
Definition ClimbingServices.h:79
virtual ~IClimbingEventSink()=default
Releases IClimbingEventSink resources.
virtual eve::Result< void > publish(ClimbingServiceSubject subject, std::span< const ClimbingEvent > events)=0
Consume an owning event view after all ECS simulation views have closed.
Optional post-physics Animation/IK adapter consuming derived pose constraints only.
Definition ClimbingServices.h:90
virtual ~IClimbingPoseAdapter()=default
Releases IClimbingPoseAdapter resources.
virtual eve::Result< void > apply(ClimbingServiceSubject subject, const ClimbingAdvance &advance)=0
Apply one derived pose projection; failure never invalidates authoritative climbing motion.
Consumer-owned stamina reservation contract.
Definition ClimbingServices.h:39
virtual std::string_view adapterId() const noexcept=0
Stable adapter identity matched against ClimbingProfileDefinition::staminaAdapter.
virtual eve::Result< ClimbingStaminaReservation > prepare(ClimbingServiceSubject subject, float cost, eve::SimulationTick tick)=0
Reserve an exact non-negative cost without publishing the debit.
virtual ~IClimbingStaminaAuthority()=default
Releases IClimbingStaminaAuthority resources.
virtual void cancelPrepared(ClimbingStaminaReservation reservation) noexcept=0
Release an uncommitted reservation; guaranteed infallible and idempotent.
virtual void commitPrepared(ClimbingStaminaReservation reservation, ClimbingExecutionId executionId) noexcept=0
Publish a successfully prepared debit; guaranteed infallible by the provider contract.
static constexpr const char * capabilityName
Definition ClimbingServices.h:41
Box3D rigid-body world. Script coordinates are meters (Box3D native), unlike 2D World which uses pixe...
Definition World3D.h:63
Definition Climbing.cpp:19
ClimbingOptionalServiceState
Observable outcome of one optional-service interaction.
Definition ClimbingServices.h:31
@ ProviderAbsent
ClimbingConditionDecision
Strong result of evaluating all data-driven action condition tags.
Definition ClimbingServices.h:59
ClimbingCommand
Edge and held commands understood by the climbing input phase.
Definition ClimbingInput.h:22
eve::Result< ClimbingPoseResult > applyClimbingPose(animation::AnimSkeleton &skeleton, animation::AnimPose &pose, const ClimbingAdvance &advance, const ClimbingPoseBinding &binding)
Applies contact anchors to an already evaluated animation pose.
Definition ClimbingPose.cpp:34
eve::Result< ClimbingOptionalServiceState > dispatchClimbingEvents(ClimbingServiceSubject subject, std::span< const ClimbingEvent > events)
Dispatch to the optional event sink, returning ProviderAbsent instead of silently dropping.
Definition ClimbingServices.cpp:109
Definition Container.h:602
Hot authoritative intent component; contains no device or callback pointers.
Definition ClimbingInput.h:39
Input pose used for one deterministic candidate probe.
Definition Climbing.h:275
Result of a service-aware selection transaction.
Definition ClimbingServices.h:101
Owning evidence returned by one committed climbing selection transaction.
Definition Climbing.h:464
ClimbingServiceSubjectTag public API.
Definition ClimbingServices.h:20
ClimbingStaminaReservationTag public API.
Definition ClimbingServices.h:22