载入中...
搜索中...
未找到
GameplayControl.h
浏览该文件的文档.
99 [[nodiscard]] virtual Result<GameplayObservation> observeGameplay(const GameplaySession& session,
105 [[nodiscard]] virtual Result<GameplayCommandReceipt> submitGameplay(const GameplaySession& session,
109 [[nodiscard]] virtual Result<GameplayObservation> advanceGameplay(const GameplaySession& session,
113 [[nodiscard]] virtual Result<std::vector<GameplayEvent>> gameplayEvents(const GameplaySession& session,
Strong identity values shared by persistence, content and logical-name APIs.
Move-only, checked operation results for the common layer.
Stable reference to a runtime gameplay subject.
Common time values and an injectable deterministic simulation clock.
Owning, renderer-independent dynamic values.
Multi-provider gameplay boundary consumed by input, scripts and automation.
Definition GameplayControl.h:90
virtual Result< GameplayCommandReceipt > submitGameplay(const GameplaySession &session, SubjectRef instance, const GameplayCommand &command)=0
Validate authority and atomically submit one domain command.
virtual Result< std::vector< GameplayActionDescriptor > > availableGameplayActions(const GameplaySession &session, SubjectRef instance, SubjectRef subject) const =0
Discover currently legal player-semantic actions for one subject.
virtual Result< GameplayObservation > observeGameplay(const GameplaySession &session, SubjectRef instance) const =0
Observe one provider-owned gameplay instance without mutation.
virtual Result< std::vector< GameplayEvent > > gameplayEvents(const GameplaySession &session, SubjectRef instance, std::uint64_t afterSequence) const =0
Return events strictly newer than an instance-local sequence cursor.
virtual ~IGameplayControlProvider()=default
Releases IGameplayControlProvider resources.
virtual Result< GameplayObservation > advanceGameplay(const GameplaySession &session, SubjectRef instance, const SimulationStep &step)=0
Advance one provider-owned instance using injected deterministic time.
static constexpr const char * capabilityName
Definition GameplayControl.h:92
virtual std::string_view gameplayDomain() const noexcept=0
Stable provider domain used for discovery and routing.
Human-readable, scoped identifier in the form namespace:name.
Definition Identity.h:411
static constexpr StrongUint64 zero() noexcept
Returns the zero value for this strong type.
Definition StrongUint64.h:24
GameplayAccess
Authority profile applied by a gameplay provider before domain validation.
Definition GameplayControl.h:22
@ PlayerEquivalent
@ TestDriver
@ DeveloperCheat
Definition Container.h:602
One discoverable domain action and its owning schema projection.
Definition GameplayControl.h:37
Owning evidence that a gameplay authority accepted one command.
Definition GameplayControl.h:62
std::uint64_t resultingRevision
Definition GameplayControl.h:66
One player-semantic command submitted to a domain authority.
Definition GameplayControl.h:52
Owning event projection safe across frames and process boundaries.
Definition GameplayControl.h:71
Immutable owning observation of one authoritative gameplay instance.
Definition GameplayControl.h:43
Owning authorization context shared by player, script and automation adapters.
Definition GameplayControl.h:30
std::vector< SubjectRef > controlledSubjects
Definition GameplayControl.h:33