载入中...
搜索中...
未找到
eve::emergence::Emergence类 参考

Script-facing module that owns RuleEngine instances. 更多...

#include <Emergence.h>

类 eve::emergence::Emergence 继承关系图:
eve::Module

Public 成员函数

 Module_REG (Emergence)
 
 Emergence ()=default
 Emergence.
 
 ~Emergence () override=default
 Emergence.
 
- Public 成员函数 继承自 eve::Module
virtual ~Module ()
 Module.
 
virtual std::string getName () const =0
 Returns the name.
 

静态 Public 成员函数

static eve::Result< RuleEngineHandleRef > newEngine ()
 Allocate a module-owned rule engine.
 
static eve::script::Borrowed< RuleEngine > resolve (RuleEngineHandleRef reference) noexcept
 Resolve a live engine as a non-owning observation. @ownership Borrowed from the module registry. @lifetime Until release or module destruction; do not retain across either.
 
static eve::Result< void > release (RuleEngineHandleRef reference)
 Release a module-owned engine.
 
static bool isStale (RuleEngineHandleRef reference) noexcept
 Report whether a handle is stale.
 

详细描述

Script-facing module that owns RuleEngine instances.

Games bind facts from quest/economy/world systems into a RuleEngine, then call drain(tick) once per simulation step. See docs/dev/涌现式规则触发框架.md.

在文件 Emergence.h 第 23 行定义.

构造及析构函数说明

◆ Emergence()

eve::emergence::Emergence::Emergence ( )
default

◆ ~Emergence()

eve::emergence::Emergence::~Emergence ( )
overridedefault

成员函数说明

◆ isStale()

bool eve::emergence::Emergence::isStale ( RuleEngineHandleRef  reference)
staticnoexcept

Report whether a handle is stale.

在文件 Emergence.cpp 第 72 行定义.

引用了 reference.

◆ Module_REG()

eve::emergence::Emergence::Module_REG ( Emergence  )

◆ newEngine()

eve::Result< RuleEngineHandleRef > eve::emergence::Emergence::newEngine ( )
static

Allocate a module-owned rule engine.

返回
Generation-qualified handle, or allocation failure. @ownership Module-owned until release(); the handle is not an owning pointer. @thread Module owner / simulation thread. @reentrancy No callbacks are invoked.

在文件 Emergence.cpp 第 53 行定义.

◆ release()

eve::Result< void > eve::emergence::Emergence::release ( RuleEngineHandleRef  reference)
static

Release a module-owned engine.

在文件 Emergence.cpp 第 64 行定义.

引用了 eve::Diagnostic::error(), eve::Result< T >::failure() , 以及 eve::StaleHandle.

◆ resolve()

eve::script::Borrowed< RuleEngine > eve::emergence::Emergence::resolve ( RuleEngineHandleRef  reference)
staticnoexcept

Resolve a live engine as a non-owning observation. @ownership Borrowed from the module registry. @lifetime Until release or module destruction; do not retain across either.

在文件 Emergence.cpp 第 58 行定义.


该类的文档由以下文件生成: