载入中...
搜索中...
未找到
eve::scene_editing::SceneTargetBase类 参考

Shared in-memory scene target implementation for document/runtime adapters. 更多...

#include <SceneTarget.h>

类 eve::scene_editing::SceneTargetBase 继承关系图:
eve::editing::EditableTargetState eve::editing::IEditableTarget eve::editing::IDomainOperationTarget eve::editing::IDomainOperationTargetStaging eve::editing::IEditingSnapshotProvider eve::scene_editing::ISceneHierarchyEditTarget eve::scene_editing::ITransformEditTarget eve::editing::IEditableTarget eve::editing::IEditableTarget eve::scene_editing::RuntimeWorldTarget eve::scene_editing::SceneDocumentTarget eve::scene_editing::SceneHostEditorTarget

Public 成员函数

 SceneTargetBase (std::string id, std::string type)
 Scene target base.
 
 ~SceneTargetBase () override=default
 Scene target base.
 
TargetId targetId () const override
 Target id.
 
TargetDescriptor describe () const override
 Describe.
 
void * queryCapability (const CapabilityId &capability) override
 Queries capability.
 
Result< void > applyDomainOperation (const DomainOperation &operation) override
 Applies domain operation.
 
std::unique_ptr< IDomainOperationTarget > cloneDomainState () const override
 Clones domain state.
 
Result< void > commitDomainState (std::unique_ptr< IDomainOperationTarget > candidate) override
 Commits domain state.
 
Result< SceneObjectSnapshot > sceneObject (const ObjectId &id) const override
 Scene object.
 
std::vector< ObjectId > sceneChildren (const ObjectId &parent) const override
 Scene children.
 
Result< DomainOperation > makeCreate (const CreateSceneObjectRequest &request) const override
 Make create.
 
Result< DomainOperation > makeDelete (const ObjectId &id) const override
 Make delete.
 
Result< DomainOperation > makeRename (const ObjectId &id, const std::string &name) const override
 Make rename.
 
Result< DomainOperation > makeReparent (const ObjectId &id, const ObjectId &parent) const override
 Make reparent.
 
Result< SceneTransformValue > readTransform (const ObjectId &id) const override
 Reads transform.
 
Result< DomainOperation > makeSetTransform (const ObjectId &id, const SceneTransformValue &transform) const override
 Make set transform.
 
void bindComponentPayloads (SceneComponentPayloadRegistry *registry)
 Bind an optional non-owning registry used by component inspectors.
 
EditorValue snapshotValue () const override
 Capture deterministic scene content for document persistence.
 
Result< DomainOperation > makeRestore (const EditorValue &snapshot) const
 Plan atomic replacement of hierarchy/TRS from a versioned snapshot.
 
- Public 成员函数 继承自 eve::editing::EditableTargetState
 EditableTargetState (Revision initial=1)
 Constructs the shared state with an explicit initial revision.
 
EditRegion dirtyRegion () const override
 Return the accumulated dirty region.
 
void clearDirtyRegion () override
 Discard the dirty region; the revision does not change.
 
std::uint64_t revision () const override
 Return the current revision.
 
Revision revisionValue () const noexcept
 Return the revision as the shared protocol revision type.
 
- Public 成员函数 继承自 eve::editing::IEditableTarget
virtual ~IEditableTarget ()=default
 Releases IEditableTarget resources.
 
virtual void * queryCapability (const CapabilityId &capability)
 Query an optional stable capability.
 
template<class C >
eve::OptionalRef< C > capability ()
 Query a capability through its interface-owned stable identity.
 
template<class C >
eve::OptionalRef< const C > capability () const
 Capability.
 
template<class C >
C * query ()
 Queries query.
 
template<class C >
const C * query () const
 Queries query.
 
- Public 成员函数 继承自 eve::editing::IDomainOperationTarget
 ~IDomainOperationTarget () override=default
 Releases IDomainOperationTarget resources.
 
- Public 成员函数 继承自 eve::editing::IDomainOperationTargetStaging
virtual ~IDomainOperationTargetStaging ()=default
 Releases IDomainOperationTargetStaging resources.
 
- Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
virtual ~IEditingSnapshotProvider ()=default
 Releases IEditingSnapshotProvider resources.
 
- Public 成员函数 继承自 eve::scene_editing::ISceneHierarchyEditTarget
virtual ~ISceneHierarchyEditTarget ()=default
 Releases ISceneHierarchyEditTarget resources.
 
- Public 成员函数 继承自 eve::scene_editing::ITransformEditTarget
virtual ~ITransformEditTarget ()=default
 Releases ITransformEditTarget resources.
 
virtual editing::Result< SceneTransformValue > readTransform (const editing::ObjectId &id) const =0
 Reads transform.
 
virtual editing::Result< editing::DomainOperation > makeSetTransform (const editing::ObjectId &id, const SceneTransformValue &transform) const =0
 Make set transform.
 

友元

class ScenePropertyProvider
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity shared by every editable domain target.
 
- 静态 Public 成员函数 继承自 eve::scene_editing::ISceneHierarchyEditTarget
static CapabilityId editorCapabilityId ()
 Stable capability identity used instead of cross-module RTTI.
 
- 静态 Public 成员函数 继承自 eve::scene_editing::ITransformEditTarget
static editing::CapabilityId editingCapabilityId ()
 Editing capability id.
 
static editing::CapabilityId editorCapabilityId ()
 Compatibility spelling retained for existing editor tools.
 
- Protected 成员函数 继承自 eve::editing::EditableTargetState
void widenDirty (int x, int y)
 Widen the dirty region without advancing the revision.
 
void widenDirty (const EditRegion &region)
 Widen the dirty region without advancing the revision.
 
void widenDirty ()
 Mark an unknown area dirty without advancing the revision.
 
void bumpRevision ()
 Advance the revision without touching the dirty region.
 
void setRevision (Revision revision)
 Adopt a revision observed elsewhere, without advancing it.
 
void setDirtyRegion (const EditRegion &region)
 Replace the dirty region wholesale, without advancing the revision.
 
void markDirty (int x, int y)
 Include one cell in the dirty region and advance the revision.
 
void markDirty (const EditRegion &region)
 Include a whole region and advance the revision.
 
void markDirty ()
 Mark an unknown area dirty and advance the revision.
 

详细描述

Shared in-memory scene target implementation for document/runtime adapters.

Concrete subclasses differ only in host-facing target type. The mutation protocol and capabilities stay identical so tools contain no backend branch.

在文件 SceneTarget.h 第 80 行定义.

构造及析构函数说明

◆ SceneTargetBase()

eve::scene_editing::SceneTargetBase::SceneTargetBase ( std::string  id,
std::string  type 
)

Scene target base.

在文件 SceneTarget.cpp 第 21 行定义.

◆ ~SceneTargetBase()

eve::scene_editing::SceneTargetBase::~SceneTargetBase ( )
overridedefault

Scene target base.

成员函数说明

◆ applyDomainOperation()

◆ bindComponentPayloads()

void eve::scene_editing::SceneTargetBase::bindComponentPayloads ( SceneComponentPayloadRegistry *  registry)
inline

Bind an optional non-owning registry used by component inspectors.

在文件 SceneTarget.h 第 125 行定义.

◆ cloneDomainState()

std::unique_ptr< IDomainOperationTarget > eve::scene_editing::SceneTargetBase::cloneDomainState ( ) const
overridevirtual

Clones domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 SceneTarget.cpp 第 162 行定义.

◆ commitDomainState()

Result< void > eve::scene_editing::SceneTargetBase::commitDomainState ( std::unique_ptr< IDomainOperationTarget >  candidate)
overridevirtual

◆ describe()

◆ makeCreate()

◆ makeDelete()

Result< DomainOperation > eve::scene_editing::SceneTargetBase::makeDelete ( const ObjectId &  id) const
overridevirtual

◆ makeRename()

Result< DomainOperation > eve::scene_editing::SceneTargetBase::makeRename ( const ObjectId &  id,
const std::string &  name 
) const
overridevirtual

◆ makeReparent()

Result< DomainOperation > eve::scene_editing::SceneTargetBase::makeReparent ( const ObjectId &  id,
const ObjectId &  parent 
) const
overridevirtual

◆ makeRestore()

Result< DomainOperation > eve::scene_editing::SceneTargetBase::makeRestore ( const EditorValue &  snapshot) const

Plan atomic replacement of hierarchy/TRS from a versioned snapshot.

参数
snapshotOwning data input, borrowed only for this call. Schema 1 is accepted; unknown fields are rejected. Runtime links and component assets are not serialized.
返回
Reversible operation, or validation failure without mutation. @thread Owner thread only. No callbacks; the operation owns all input data.

在文件 SceneSnapshot.cpp 第 71 行定义.

引用了 eve::Result< T >::failure(), operation, snapshotValue(), targetId() , 以及 eve::editing::DomainOperation::type.

◆ makeSetTransform()

Result< DomainOperation > eve::scene_editing::SceneTargetBase::makeSetTransform ( const ObjectId &  id,
const SceneTransformValue &  transform 
) const
override

◆ queryCapability()

void * eve::scene_editing::SceneTargetBase::queryCapability ( const CapabilityId &  capability)
override

◆ readTransform()

Result< SceneTransformValue > eve::scene_editing::SceneTargetBase::readTransform ( const ObjectId &  id) const
override

◆ sceneChildren()

std::vector< ObjectId > eve::scene_editing::SceneTargetBase::sceneChildren ( const ObjectId &  parent) const
overridevirtual

Scene children.

实现了 eve::scene_editing::ISceneHierarchyEditTarget.

在文件 SceneTarget.cpp 第 186 行定义.

引用了 children , 以及 parent.

被这些函数引用 makeDelete().

◆ sceneObject()

Result< SceneObjectSnapshot > eve::scene_editing::SceneTargetBase::sceneObject ( const ObjectId &  id) const
overridevirtual

Scene object.

实现了 eve::scene_editing::ISceneHierarchyEditTarget.

在文件 SceneTarget.cpp 第 177 行定义.

引用了 object , 以及 value.

被这些函数引用 readTransform().

◆ snapshotValue()

EditorValue eve::scene_editing::SceneTargetBase::snapshotValue ( ) const
overridevirtual

Capture deterministic scene content for document persistence.

实现了 eve::editing::IEditingSnapshotProvider.

在文件 SceneTarget.cpp 第 331 行定义.

引用了 scene.

被这些函数引用 makeRestore().

◆ targetId()

TargetId eve::scene_editing::SceneTargetBase::targetId ( ) const
inlineoverridevirtual

友元及相关函数文档

◆ ScenePropertyProvider

friend class ScenePropertyProvider
friend

在文件 SceneTarget.h 第 141 行定义.


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