载入中...
搜索中...
未找到
eve::editor::ScenePrefabService类 参考

Backend-neutral prefab capture, instantiate and override planning. 更多...

#include <EditorPrefab.h>

Public 类型

using PrefabResolver = std::function< Result< PrefabAssetSnapshot >(const AssetGuid &)>
 

Public 成员函数

Result< PrefabAssetSnapshot > capture (const AssetGuid &asset, const SceneTargetBase &scene, const ObjectId &root) const
 Capture one scene subtree as a deterministic prefab asset.
 
Result< PrefabInstancePlan > instantiate (const PrefabAssetSnapshot &prefab, const std::string &instanceId, const ObjectId &parent, const SceneTargetBase &scene) const
 Plan collision-safe creation of a prefab below one scene parent.
 
Result< std::vector< DomainOperation > > revertOverrides (const PrefabAssetSnapshot &prefab, const std::string &instanceId, const ObjectId &parent, const SceneTargetBase &scene) const
 Plan operations reverting one instance to its source prefab revision.
 
Result< PrefabAssetSnapshot > applyOverrides (const PrefabAssetSnapshot &prefab, const std::string &instanceId, const ObjectId &parent, const SceneTargetBase &scene) const
 Produce a new prefab revision from one structurally compatible instance.
 
Result< std::vector< PrefabOverrideRecord > > inspectOverrides (const PrefabAssetSnapshot &prefab, const std::string &instanceId, const ObjectId &parent, const SceneTargetBase &scene) const
 Compare one instance with its source and return stable override badges.
 
PrefabDependencyReport inspectDependencies (const PrefabAssetSnapshot &prefab, const PrefabResolver &resolver) const
 Resolve the complete nested dependency graph and diagnose cycles/stale pins.
 
Result< PrefabAssetSnapshot > refreshNestedRevisions (const PrefabAssetSnapshot &prefab, const PrefabResolver &resolver) const
 Refresh direct nested revision pins and bump the parent only when they changed.
 
EditorValue snapshotValue (const PrefabAssetSnapshot &prefab) const
 Convert a prefab snapshot to deterministic persisted data.
 
Result< PrefabAssetSnapshot > loadSnapshot (const EditorValue &snapshot) const
 Parse and validate a persisted prefab snapshot atomically.
 

详细描述

Backend-neutral prefab capture, instantiate and override planning.

在文件 EditorPrefab.h 第 57 行定义.

成员类型定义说明

◆ PrefabResolver

成员函数说明

◆ applyOverrides()

Result< PrefabAssetSnapshot > eve::editor::ScenePrefabService::applyOverrides ( const PrefabAssetSnapshot &  prefab,
const std::string &  instanceId,
const ObjectId &  parent,
const SceneTargetBase &  scene 
) const

Produce a new prefab revision from one structurally compatible instance.

在文件 EditorPrefab.cpp 第 220 行定义.

引用了 eve::editor::PrefabAssetSnapshot::objects, ok, parent, prefab, eve::editor::PrefabAssetSnapshot::revision, scene, source, eve::UuidIdAdapter< Tag >::value() , 以及 value.

◆ capture()

Result< PrefabAssetSnapshot > eve::editor::ScenePrefabService::capture ( const AssetGuid &  asset,
const SceneTargetBase &  scene,
const ObjectId &  root 
) const

Capture one scene subtree as a deterministic prefab asset.

在文件 EditorPrefab.cpp 第 95 行定义.

引用了 eve::editor::PrefabAssetSnapshot::asset, children, eve::UuidIdAdapter< Tag >::empty(), id, index, name, ok, parent, pending, prefab, root, scene, eve::UuidIdAdapter< Tag >::value() , 以及 value.

◆ inspectDependencies()

◆ inspectOverrides()

Result< std::vector< PrefabOverrideRecord > > eve::editor::ScenePrefabService::inspectOverrides ( const PrefabAssetSnapshot &  prefab,
const std::string &  instanceId,
const ObjectId &  parent,
const SceneTargetBase &  scene 
) const

Compare one instance with its source and return stable override badges.

在文件 EditorPrefab.cpp 第 259 行定义.

引用了 a, b, name, ok, parent, prefab, scene, source , 以及 value.

◆ instantiate()

◆ loadSnapshot()

Result< PrefabAssetSnapshot > eve::editor::ScenePrefabService::loadSnapshot ( const EditorValue &  snapshot) const

Parse and validate a persisted prefab snapshot atomically.

在文件 EditorPrefab.cpp 第 384 行定义.

引用了 eve::Result< T >::failure(), eve::editing::Value::getIf(), name, parentId, pinned, prefab, revision, root, valid, eve::UuidIdAdapter< Tag >::value() , 以及 value.

◆ refreshNestedRevisions()

Result< PrefabAssetSnapshot > eve::editor::ScenePrefabService::refreshNestedRevisions ( const PrefabAssetSnapshot &  prefab,
const PrefabResolver &  resolver 
) const

Refresh direct nested revision pins and bump the parent only when they changed.

在文件 EditorPrefab.cpp 第 346 行定义.

引用了 inspectDependencies(), eve::editor::PrefabAssetSnapshot::objects, prefab , 以及 eve::editor::PrefabAssetSnapshot::revision.

◆ revertOverrides()

Result< std::vector< DomainOperation > > eve::editor::ScenePrefabService::revertOverrides ( const PrefabAssetSnapshot &  prefab,
const std::string &  instanceId,
const ObjectId &  parent,
const SceneTargetBase &  scene 
) const

Plan operations reverting one instance to its source prefab revision.

在文件 EditorPrefab.cpp 第 175 行定义.

引用了 eve::editing::failed(), ok, operation, parent, prefab, scene, source, eve::UuidIdAdapter< Tag >::value() , 以及 value.

◆ snapshotValue()

EditorValue eve::editor::ScenePrefabService::snapshotValue ( const PrefabAssetSnapshot &  prefab) const

Convert a prefab snapshot to deterministic persisted data.

在文件 EditorPrefab.cpp 第 370 行定义.

引用了 prefab.


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