载入中...
搜索中...
未找到
IAgentSolver.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
7
8#include <span>
9
10namespace eve::gpuagents {
11
18public:
20 virtual ~IAgentSolver() = default;
21
23 virtual EffectKind kind() const = 0;
24
33 virtual void step(std::span<const AgentState> read, std::span<AgentState> write, const EffectProfile& profile,
34 const EnvironmentSnapshot& env, float dt) = 0;
35};
36
37} // namespace eve::gpuagents
#define EVENGINE_API_DOMAINS
Definition Export.h:110
Solver kernel contract: consume read buffer, write next state.
virtual EffectKind kind() const =0
Effect kind this solver implements.
virtual void step(std::span< const AgentState > read, std::span< AgentState > write, const EffectProfile &profile, const EnvironmentSnapshot &env, float dt)=0
Advance one fixed substep.
virtual ~IAgentSolver()=default
I agent solver.
EffectKind
Effect kind selecting the solver kernel.
Definition AgentState.h:22
Type-erased profile bundle owned by an EffectBackend.
Read-only environment semantics prepared by GpuAgentWorld each tick.