载入中...
搜索中...
未找到
eve::procgen_editing::SplinePathBinder类 参考

Owning, pointer-free spline-to-transform binder with atomic document refresh. 更多...

#include <SplinePathBinder.h>

Public 成员函数

 SplinePathBinder (std::string documentTarget)
 Construct a binder pinned to one spline document target identity.
 
Result< void > bindResult (const SplinePathDocument &document, const StableId &point, std::string host, std::string object, const ISplineBindingTransformSource &source)
 Validate and atomically install or replace one point binding.
 
Result< void > unbindResult (const StableId &point)
 Remove one binding without touching its spline point.
 
Result< void > refreshResult (SplinePathDocument &document, const ISplineBindingTransformSource &source) const
 Resolve every link, then commit all point positions as one isolated document update.
 
std::vector< SplinePointBinding > bindings () const
 Return deterministic bindings ordered by stable point id.
 
EditorValue snapshotValue () const
 Capture schema eve.procgen.splineBinder version one.
 
Result< void > loadSnapshot (const EditorValue &snapshot)
 Atomically restore links for this binder's pinned target.
 

详细描述

Owning, pointer-free spline-to-transform binder with atomic document refresh.

The binder owns stable link identities but neither the spline document nor transform source. Callers pass both to each operation, so destroying either first cannot leave a retained pointer. Missing sources produce StaleHandle without changing the document or discarding the link, allowing the same binding snapshot to rebuild after scene reload.

在文件 SplinePathBinder.h 第 58 行定义.

构造及析构函数说明

◆ SplinePathBinder()

eve::procgen_editing::SplinePathBinder::SplinePathBinder ( std::string  documentTarget)
explicit

Construct a binder pinned to one spline document target identity.

在文件 SplinePathBinder.cpp 第 40 行定义.

成员函数说明

◆ bindings()

std::vector< SplinePointBinding > eve::procgen_editing::SplinePathBinder::bindings ( ) const

Return deterministic bindings ordered by stable point id.

在文件 SplinePathBinder.cpp 第 105 行定义.

引用了 binding.

被这些函数引用 snapshotValue().

◆ bindResult()

Result< void > eve::procgen_editing::SplinePathBinder::bindResult ( const SplinePathDocument &  document,
const StableId &  point,
std::string  host,
std::string  object,
const ISplineBindingTransformSource &  source 
)

Validate and atomically install or replace one point binding.

在文件 SplinePathBinder.cpp 第 42 行定义.

引用了 host, point, points, eve::procgen_editing::SplinePathDocument::points(), source, eve::procgen_editing::SplinePathDocument::targetId(), eve::UuidIdAdapter< Tag >::value() , 以及 value.

◆ loadSnapshot()

Result< void > eve::procgen_editing::SplinePathBinder::loadSnapshot ( const EditorValue &  snapshot)

Atomically restore links for this binder's pinned target.

在文件 SplinePathBinder.cpp 第 127 行定义.

引用了 eve::procgen_editing::detail::field(), host, object, point, second, value , 以及 values.

◆ refreshResult()

Result< void > eve::procgen_editing::SplinePathBinder::refreshResult ( SplinePathDocument &  document,
const ISplineBindingTransformSource &  source 
) const

◆ snapshotValue()

EditorValue eve::procgen_editing::SplinePathBinder::snapshotValue ( ) const

Capture schema eve.procgen.splineBinder version one.

在文件 SplinePathBinder.cpp 第 115 行定义.

引用了 binding , 以及 bindings().

◆ unbindResult()

Result< void > eve::procgen_editing::SplinePathBinder::unbindResult ( const StableId &  point)

Remove one binding without touching its spline point.

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

引用了 point.


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