载入中...
搜索中...
未找到
eve::voxel_editing::VoxelCatalogTarget类 参考final

Revisioned project of MagicaVoxel-style sculpted models. 更多...

#include <VoxelCatalog.h>

类 eve::voxel_editing::VoxelCatalogTarget 继承关系图:
eve::editing::EditableTargetState eve::editing::IEditableTarget eve::editing::IDomainOperationTarget eve::editing::IDomainOperationTargetStaging eve::editing::IPropertyProvider eve::editing::IEditingSnapshotProvider eve::editing::IEditableTarget eve::editing::IEditableTarget

Public 成员函数

 VoxelCatalogTarget (std::string id)
 Voxel catalog target.
 
TargetId targetId () const override
 Target id.
 
TargetDescriptor describe () const override
 Describe.
 
void * queryCapability (const CapabilityId &) override
 Query Inspector property and snapshot capabilities.
 
Result< void > applyDomainOperation (const DomainOperation &) override
 Applies domain operation.
 
std::unique_ptr< IDomainOperationTarget > cloneDomainState () const override
 Clones domain state.
 
Result< void > commitDomainState (std::unique_ptr< IDomainOperationTarget >) override
 Commits domain state.
 
eve::Result< eve::Revision > currentRevision (const SelectionSnapshot &) const override
 Current revision.
 
PropertySchema schema (const SelectionSnapshot &) const override
 Schema.
 
PropertyReadResult read (const SelectionSnapshot &, const PropertyPath &) const override
 Reads .
 
Result< DomainOperation > makeSet (const SelectionSnapshot &, const PropertyPath &, const EditorValue &, PropertySetMode) const override
 Make set.
 
Result< DomainOperation > makeReset (const SelectionSnapshot &, const PropertyPath &) const override
 Make reset.
 
Result< DomainOperation > makeCreateModel (const VoxelModelValue &) const
 Make create model.
 
Result< DomainOperation > makeDeleteModel (const ObjectId &) const
 Make delete model.
 
Result< DomainOperation > makeSetVoxel (const ObjectId &model, int x, int y, int z, bool occupied) const
 Make set voxel.
 
const std::vector< VoxelModelValue > & models () const
 Models.
 
const VoxelModelValue * findModel (const ObjectId &) const
 Look up a sculpted model by stable id.
 
std::vector< EditorDiagnostic > validate () const
 Validate.
 
EditorValue snapshotValue () const override
 Snapshot value.
 
Result< void > loadSnapshot (const EditorValue &)
 Loads snapshot.
 
std::vector< ObjectId > hullJoinPartners (const ObjectId &model, int face) const
 Hull join partners.
 
- 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.
 
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::IPropertyProvider
virtual ~IPropertyProvider ()=default
 Releases IPropertyProvider resources.
 
- Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
virtual ~IEditingSnapshotProvider ()=default
 Releases IEditingSnapshotProvider resources.
 

静态 Public 成员函数

static CapabilityId propertyCapabilityId ()
 Property capability id.
 
- 静态 Public 成员函数 继承自 eve::editing::IPropertyProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity for generic property editing.
 
- 静态 Public 成员函数 继承自 eve::editing::IEditingSnapshotProvider
static CapabilityId editingCapabilityId ()
 Stable capability identity shared by every editable domain target.
 

额外继承的成员函数

- 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.
 

详细描述

Revisioned project of MagicaVoxel-style sculpted models.

在文件 VoxelCatalog.h 第 132 行定义.

构造及析构函数说明

◆ VoxelCatalogTarget()

eve::voxel_editing::VoxelCatalogTarget::VoxelCatalogTarget ( std::string  id)
explicit

Voxel catalog target.

在文件 VoxelCatalog.cpp 第 309 行定义.

成员函数说明

◆ applyDomainOperation()

Result< void > eve::voxel_editing::VoxelCatalogTarget::applyDomainOperation ( const DomainOperation &  op)
overridevirtual

◆ cloneDomainState()

std::unique_ptr< IDomainOperationTarget > eve::voxel_editing::VoxelCatalogTarget::cloneDomainState ( ) const
overridevirtual

Clones domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 VoxelCatalog.cpp 第 568 行定义.

◆ commitDomainState()

Result< void > eve::voxel_editing::VoxelCatalogTarget::commitDomainState ( std::unique_ptr< IDomainOperationTarget >  c)
overridevirtual

Commits domain state.

实现了 eve::editing::IDomainOperationTargetStaging.

在文件 VoxelCatalog.cpp 第 572 行定义.

引用了 c , 以及 t.

◆ currentRevision()

eve::Result< eve::Revision > eve::voxel_editing::VoxelCatalogTarget::currentRevision ( const SelectionSnapshot &  s) const
overridevirtual

◆ describe()

TargetDescriptor eve::voxel_editing::VoxelCatalogTarget::describe ( ) const
overridevirtual

◆ findModel()

const VoxelModelValue * eve::voxel_editing::VoxelCatalogTarget::findModel ( const ObjectId &  id) const

Look up a sculpted model by stable id.

返回
Borrowed model owned by this catalog, or null when absent. @ownership Borrowed from this target; callers must not delete it. @lifetime Valid until the next mutation or this target is destroyed. @thread Owner-thread only.

在文件 VoxelCatalog.cpp 第 325 行定义.

引用了 v.

被这些函数引用 hullJoinPartners(), makeCreateModel(), makeDeleteModel(), makeSetVoxel(), read() , 以及 eve::voxel_editor::VoxelCatalogEditor::selectModel().

◆ hullJoinPartners()

std::vector< ObjectId > eve::voxel_editing::VoxelCatalogTarget::hullJoinPartners ( const ObjectId &  model,
int  face 
) const

◆ loadSnapshot()

Result< void > eve::voxel_editing::VoxelCatalogTarget::loadSnapshot ( const EditorValue &  s)

◆ makeCreateModel()

Result< DomainOperation > eve::voxel_editing::VoxelCatalogTarget::makeCreateModel ( const VoxelModelValue &  v) const

Make create model.

在文件 VoxelCatalog.cpp 第 461 行定义.

引用了 c, findModel(), v , 以及 x.

被这些函数引用 eve::voxel_editor::VoxelCatalogEditor::createModel().

◆ makeDeleteModel()

Result< DomainOperation > eve::voxel_editing::VoxelCatalogTarget::makeDeleteModel ( const ObjectId &  id) const

Make delete model.

在文件 VoxelCatalog.cpp 第 474 行定义.

引用了 c, findModel() , 以及 v.

被这些函数引用 eve::voxel_editor::VoxelCatalogEditor::deleteSelectedModel().

◆ makeReset()

Result< DomainOperation > eve::voxel_editing::VoxelCatalogTarget::makeReset ( const SelectionSnapshot &  s,
const PropertyPath &  p 
) const
overridevirtual

Make reset.

实现了 eve::editing::IPropertyProvider.

在文件 VoxelCatalog.cpp 第 453 行定义.

引用了 d, eve::editing::PropertySchema::find(), makeSet(), p, s , 以及 schema().

被这些函数引用 makeSet().

◆ makeSet()

Result< DomainOperation > eve::voxel_editing::VoxelCatalogTarget::makeSet ( const SelectionSnapshot &  s,
const PropertyPath &  p,
const EditorValue &  value,
PropertySetMode  mode 
) const
overridevirtual

◆ makeSetVoxel()

Result< DomainOperation > eve::voxel_editing::VoxelCatalogTarget::makeSetVoxel ( const ObjectId &  model,
int  x,
int  y,
int  z,
bool  occupied 
) const

Make set voxel.

在文件 VoxelCatalog.cpp 第 483 行定义.

引用了 c, current, findModel(), model, occupied, v, x, y , 以及 z.

被这些函数引用 eve::voxel_editor::VoxelCatalogEditor::setVoxel().

◆ models()

◆ propertyCapabilityId()

static CapabilityId eve::voxel_editing::VoxelCatalogTarget::propertyCapabilityId ( )
inlinestatic

Property capability id.

在文件 VoxelCatalog.h 第 143 行定义.

被这些函数引用 describe() , 以及 queryCapability().

◆ queryCapability()

void * eve::voxel_editing::VoxelCatalogTarget::queryCapability ( const CapabilityId &  c)
overridevirtual

Query Inspector property and snapshot capabilities.

返回
Borrowed pointer owned by this target, or null when unsupported. @lifetime Valid until this target is destroyed or replaced by commitDomainState. @thread Owner-thread only.

重载 eve::editing::IEditableTarget .

在文件 VoxelCatalog.cpp 第 319 行定义.

引用了 c, eve::editing::IEditingSnapshotProvider::editingCapabilityId() , 以及 propertyCapabilityId().

◆ read()

PropertyReadResult eve::voxel_editing::VoxelCatalogTarget::read ( const SelectionSnapshot &  s,
const PropertyPath &  p 
) const
overridevirtual

◆ schema()

PropertySchema eve::voxel_editing::VoxelCatalogTarget::schema ( const SelectionSnapshot &  ) const
overridevirtual

◆ snapshotValue()

EditorValue eve::voxel_editing::VoxelCatalogTarget::snapshotValue ( ) const
overridevirtual

Snapshot value.

实现了 eve::editing::IEditingSnapshotProvider.

在文件 VoxelCatalog.cpp 第 581 行定义.

◆ targetId()

TargetId eve::voxel_editing::VoxelCatalogTarget::targetId ( ) const
inlineoverridevirtual

Target id.

实现了 eve::editing::IEditableTarget.

在文件 VoxelCatalog.h 第 146 行定义.

◆ validate()

std::vector< EditorDiagnostic > eve::voxel_editing::VoxelCatalogTarget::validate ( ) const

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