Revisioned component-kit and deterministic generation-request asset. 更多...
#include <HouseGenTarget.h>
Public 成员函数 | |
| HouseGenDocumentTarget (std::string id) | |
| House gen document target. | |
| TargetId | targetId () const override |
| Target id. | |
| TargetDescriptor | describe () const override |
| Describe. | |
| void * | queryCapability (const CapabilityId &capability) override |
| Query an optional target 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. | |
| eve::Result< eve::Revision > | currentRevision (const SelectionSnapshot &selection) const override |
| Current revision. | |
| PropertySchema | schema (const SelectionSnapshot &selection) const override |
| Schema. | |
| PropertyReadResult | read (const SelectionSnapshot &selection, const PropertyPath &path) const override |
| Reads . | |
| Result< DomainOperation > | makeSet (const SelectionSnapshot &selection, const PropertyPath &path, const EditorValue &value, PropertySetMode mode) const override |
| Make set. | |
| Result< DomainOperation > | makeReset (const SelectionSnapshot &selection, const PropertyPath &path) const override |
| Make reset. | |
| Result< DomainOperation > | makeCreateComponent (const HouseKitComponentValue &component) const |
| Add one component with stable editor and unique runtime IDs. | |
| Result< DomainOperation > | makeDeleteComponent (const ObjectId &id) const |
| Remove one component. | |
| Result< DomainOperation > | makeSetRequest (const housegen::HouseRequest &request) const |
| Replace the deterministic generation request. | |
| const std::vector< HouseKitComponentValue > & | components () const |
| Components. | |
| const housegen::HouseRequest & | request () const |
| Request. | |
| std::vector< EditorDiagnostic > | validate () const |
| Validate kit fields, generator-required categories and request budgets. | |
| EditorValue | snapshotValue () const |
| Snapshot value. | |
| Result< void > | loadSnapshot (const EditorValue &snapshot) |
| Loads 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. | |
| 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::IPropertyProvider | |
| static CapabilityId | editingCapabilityId () |
| Stable capability identity for generic property editing. | |
Protected 成员函数 继承自 eve::editing::EditableTargetState | |
| void | widenDirty (int x, int y) |
| Widen the dirty region without advancing the revision. | |
| void | widenDirty (const EditRegion ®ion) |
| 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 ®ion) |
| 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 ®ion) |
| Include a whole region and advance the revision. | |
| void | markDirty () |
| Mark an unknown area dirty and advance the revision. | |
详细描述
Revisioned component-kit and deterministic generation-request asset.
在文件 HouseGenTarget.h 第 59 行定义.
构造及析构函数说明
◆ HouseGenDocumentTarget()
|
explicit |
House gen document target.
在文件 HouseGenTarget.cpp 第 281 行定义.
成员函数说明
◆ applyDomainOperation()
|
overridevirtual |
Applies domain operation.
实现了 eve::editing::IDomainOperationTarget.
在文件 HouseGenTarget.cpp 第 493 行定义.
引用了 eve::editing::EditableTargetState::bumpRevision(), components(), eve::editing::Value::isWithinLimits(), eve::editing::DomainOperation::payload, request(), eve::editing::DomainOperation::target, eve::editing::DomainOperation::type, validate(), value , 以及 eve::editing::EditableTargetState::widenDirty().
被这些函数引用 loadSnapshot().
◆ cloneDomainState()
|
overridevirtual |
Clones domain state.
实现了 eve::editing::IDomainOperationTargetStaging.
在文件 HouseGenTarget.cpp 第 525 行定义.
◆ commitDomainState()
|
overridevirtual |
Commits domain state.
实现了 eve::editing::IDomainOperationTargetStaging.
在文件 HouseGenTarget.cpp 第 528 行定义.
◆ components()
|
inline |
Components.
在文件 HouseGenTarget.h 第 99 行定义.
被这些函数引用 applyDomainOperation() , 以及 eve::housegen_editing::HouseGenPreviewRuntime::publish().
◆ currentRevision()
|
overridevirtual |
Current revision.
重载 eve::editing::IPropertyProvider .
在文件 HouseGenTarget.cpp 第 301 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, eve::editing::EditableTargetState::revisionValue(), s , 以及 eve::Result< T >::success().
◆ describe()
|
overridevirtual |
◆ loadSnapshot()
| Result< void > eve::housegen_editing::HouseGenDocumentTarget::loadSnapshot | ( | const EditorValue & | snapshot | ) |
◆ makeCreateComponent()
| Result< DomainOperation > eve::housegen_editing::HouseGenDocumentTarget::makeCreateComponent | ( | const HouseKitComponentValue & | component | ) | const |
Add one component with stable editor and unique runtime IDs.
在文件 HouseGenTarget.cpp 第 416 行定义.
引用了 c, eve::housegen_editing::HouseKitComponentValue::component, eve::UuidIdAdapter< Tag >::empty(), eve::housegen_editing::HouseKitComponentValue::id, eve::Result< void >::ok() , 以及 eve::housegen::HouseComponentLibrary::registerComponent().
◆ makeDeleteComponent()
| Result< DomainOperation > eve::housegen_editing::HouseGenDocumentTarget::makeDeleteComponent | ( | const ObjectId & | id | ) | const |
◆ makeReset()
|
overridevirtual |
Make reset.
实现了 eve::editing::IPropertyProvider.
在文件 HouseGenTarget.cpp 第 408 行定义.
引用了 d, eve::editing::PropertySchema::find(), makeSet(), path, s , 以及 schema().
被这些函数引用 makeSet().
◆ makeSet()
|
overridevirtual |
Make set.
实现了 eve::editing::IPropertyProvider.
在文件 HouseGenTarget.cpp 第 371 行定义.
引用了 c, d, eve::editing::PropertySchema::find(), makeReset(), ok, path, s, schema(), v , 以及 value.
被这些函数引用 makeReset().
◆ makeSetRequest()
| Result< DomainOperation > eve::housegen_editing::HouseGenDocumentTarget::makeSetRequest | ( | const housegen::HouseRequest & | request | ) | const |
◆ queryCapability()
|
overridevirtual |
Query an optional target capability.
- 返回
- Borrowed pointer owned by this target, or null. @lifetime Valid until this target is destroyed or mutated.
重载 eve::editing::IEditableTarget .
在文件 HouseGenTarget.cpp 第 289 行定义.
引用了 c.
◆ read()
|
overridevirtual |
◆ request()
|
inline |
Request.
在文件 HouseGenTarget.h 第 101 行定义.
被这些函数引用 applyDomainOperation(), makeSetRequest() , 以及 eve::housegen_editing::HouseGenPreviewRuntime::publish().
◆ schema()
|
overridevirtual |
Schema.
实现了 eve::editing::IPropertyProvider.
在文件 HouseGenTarget.cpp 第 307 行定义.
引用了 s , 以及 eve::editing::PropertySchema::typeId.
被这些函数引用 makeReset(), makeSet() , 以及 read().
◆ snapshotValue()
| EditorValue eve::housegen_editing::HouseGenDocumentTarget::snapshotValue | ( | ) | const |
Snapshot value.
在文件 HouseGenTarget.cpp 第 537 行定义.
◆ targetId()
|
inlineoverridevirtual |
◆ validate()
| std::vector< EditorDiagnostic > eve::housegen_editing::HouseGenDocumentTarget::validate | ( | ) | const |
Validate kit fields, generator-required categories and request budgets.
在文件 HouseGenTarget.cpp 第 447 行定义.
引用了 c, eve::Conflict, eve::housegen::HouseRequest::depth, eve::housegen::HouseRequest::entrance, eve::housegen::HouseRequest::floorHeight, eve::housegen::HouseRequest::floors, eve::housegen::HouseRequest::footprint, eve::InvalidArgument, eve::housegen::HouseRequest::maxAttempts, eve::housegen::HouseRequest::moduleSize, eve::PreconditionViolation, eve::housegen::HouseComponentLibrary::registerComponent(), required, eve::housegen::HouseRequest::requiredRooms, eve::housegen::HouseRequest::roof, eve::editing::ruleDiagnostic() , 以及 eve::housegen::HouseRequest::width.
被这些函数引用 applyDomainOperation() , 以及 eve::housegen_editing::HouseGenPreviewRuntime::publish().
该类的文档由以下文件生成:
- src/modules/procgen/editing/HouseGenTarget.h
- src/modules/procgen/editing/HouseGenTarget.cpp
Public 成员函数 继承自