Caller-owned transactional backup of one Renderable3D renderer before Pcg LOD replacement. 更多...
#include <PcgMeshLodBackup.h>
类 | |
| struct | Impl |
Public 成员函数 | |
| PcgMeshLodBackup () | |
| Pcg mesh lod backup. | |
| ~PcgMeshLodBackup () | |
| Pcg mesh lod backup. | |
| PcgMeshLodBackup (const PcgMeshLodBackup &)=delete | |
| PcgMeshLodBackup & | operator= (const PcgMeshLodBackup &)=delete |
| PcgMeshLodBackup (PcgMeshLodBackup &&) noexcept | |
| Pcg mesh lod backup. | |
| PcgMeshLodBackup & | operator= (PcgMeshLodBackup &&) noexcept |
| Operator =. | |
| Result< void > | capture (graphics::Renderable3D &renderable) |
| Replace the backup with the complete current renderer state of one live entity. | |
| Result< void > | restore (graphics::Renderable3D &renderable) |
| Restore and consume the backup after exact entity-generation validation. | |
| void | discard () noexcept |
| Forget the snapshot without changing its entity. | |
| bool | isCaptured () const noexcept |
| Return whether a restorable snapshot is present. | |
| std::uint32_t | getEntityId () const noexcept |
| Return the captured table-local entity id, or zero when empty. | |
| std::uint32_t | getEntityGeneration () const noexcept |
| Return the captured ECS generation, or zero when empty. | |
详细描述
Caller-owned transactional backup of one Renderable3D renderer before Pcg LOD replacement.
The snapshot retains Graphics-owned resource pointers already held by the renderer. The owning Graphics instance and those resources must outlive this backup. Capture and restore are main/render-thread only, do not invoke callbacks, and validate the entity id plus generation before publication.
在文件 PcgMeshLodBackup.h 第 19 行定义.
构造及析构函数说明
◆ PcgMeshLodBackup() [1/3]
| eve::procgen::PcgMeshLodBackup::PcgMeshLodBackup | ( | ) |
Pcg mesh lod backup.
在文件 PcgMeshLodBackup.cpp 第 16 行定义.
◆ ~PcgMeshLodBackup()
|
default |
Pcg mesh lod backup.
◆ PcgMeshLodBackup() [2/3]
|
delete |
◆ PcgMeshLodBackup() [3/3]
|
defaultnoexcept |
Pcg mesh lod backup.
成员函数说明
◆ capture()
| Result< void > eve::procgen::PcgMeshLodBackup::capture | ( | graphics::Renderable3D & | renderable | ) |
Replace the backup with the complete current renderer state of one live entity.
在文件 PcgMeshLodBackup.cpp 第 21 行定义.
引用了 eve::procgen::PcgMeshLodBackup::Impl::entityGeneration, eve::procgen::PcgMeshLodBackup::Impl::entityId, eve::procgen::PcgMeshLodBackup::Impl::renderer , 以及 eve::Result< T >::success().
◆ discard()
|
noexcept |
Forget the snapshot without changing its entity.
在文件 PcgMeshLodBackup.cpp 第 45 行定义.
被这些函数引用 restore().
◆ getEntityGeneration()
|
noexcept |
Return the captured ECS generation, or zero when empty.
在文件 PcgMeshLodBackup.cpp 第 53 行定义.
◆ getEntityId()
|
noexcept |
Return the captured table-local entity id, or zero when empty.
在文件 PcgMeshLodBackup.cpp 第 52 行定义.
◆ isCaptured()
|
noexcept |
Return whether a restorable snapshot is present.
在文件 PcgMeshLodBackup.cpp 第 51 行定义.
◆ operator=() [1/2]
|
delete |
◆ operator=() [2/2]
|
defaultnoexcept |
Operator =.
◆ restore()
| Result< void > eve::procgen::PcgMeshLodBackup::restore | ( | graphics::Renderable3D & | renderable | ) |
Restore and consume the backup after exact entity-generation validation.
在文件 PcgMeshLodBackup.cpp 第 30 行定义.
引用了 eve::Conflict, discard(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::graphics::Renderable3D::getEntityGeneration(), eve::graphics::Renderable3D::getEntityId(), eve::NotFound , 以及 eve::Result< T >::success().
该类的文档由以下文件生成:
- src/modules/procgen/PcgMeshLodBackup.h
- src/modules/procgen/PcgMeshLodBackup.cpp