Real scene-module provider for generated artifact publication. 更多...
#include <ArtifactProvider.h>
Public 成员函数 | |
| eve::Result< std::unique_ptr< eve::artifact::PreparedPublication > > | prepare (const eve::artifact::PublicationView &publication) override |
| Stage one artifact and copy all data needed after prepare. | |
| eve::Result< eve::Value > | snapshotState () const override |
| Export scene identity, build keys, handles and part bounds. | |
| eve::Result< void > | restoreState (const eve::Value &state) override |
| Replace the registry from validated backend-neutral state. | |
| bool | emptyState () const noexcept override |
| Return whether the scene registry has no committed records. | |
| void | clearState () noexcept override |
| Clear provider state through the common restore-cleanup hook. | |
| const SceneArtifactRecord * | find (eve::PersistentId id) const noexcept |
| Find a committed scene artifact by persistent identity. | |
| std::size_t | size () const noexcept |
| Return the number of committed scene artifact records. | |
| void | clear () noexcept |
| Remove all records and reset the local handle allocator. | |
| void | setPrepareFailure (bool enabled) noexcept |
| Inject a prepare failure for composition tests. | |
Public 成员函数 继承自 eve::artifact::ISceneArtifactAdapter | |
| ~ISceneArtifactAdapter () override=default | |
| Releases ISceneArtifactAdapter resources. | |
Public 成员函数 继承自 eve::artifact::ProviderContract | |
| virtual | ~ProviderContract ()=default |
| Provider contract. | |
友元 | |
| class | SceneArtifactStage |
额外继承的成员函数 | |
静态 Public 属性 继承自 eve::artifact::ISceneArtifactAdapter | |
| static constexpr const char * | capabilityName = "eve.procgen.ISceneArtifactAdapter" |
详细描述
Real scene-module provider for generated artifact publication.
The first backend is deliberately CPU/registry based. It is the stable scene ownership boundary: a renderer or ECS SceneHost may later consume the record without changing procgen or the capability contract.
在文件 ArtifactProvider.h 第 44 行定义.
成员函数说明
◆ clear()
|
noexcept |
Remove all records and reset the local handle allocator.
在文件 ArtifactProvider.cpp 第 162 行定义.
◆ clearState()
|
inlineoverridevirtualnoexcept |
Clear provider state through the common restore-cleanup hook.
重载 eve::artifact::ProviderContract .
在文件 ArtifactProvider.h 第 56 行定义.
◆ emptyState()
|
inlineoverridevirtualnoexcept |
Return whether the scene registry has no committed records.
重载 eve::artifact::ProviderContract .
在文件 ArtifactProvider.h 第 54 行定义.
◆ find()
|
noexcept |
Find a committed scene artifact by persistent identity.
- 返回
- Borrowed nullable record owned by this provider. @ownership SceneArtifactProvider owns committed records; callers must not delete or mutate the result. @lifetime Valid until clear(), restoreState(), or provider destruction; retain SceneArtifactHandle across frames. @thread Call on the scene provider's owning thread. @reentrancy The lookup invokes no callbacks and is invalid across re-entrant provider mutation.
在文件 ArtifactProvider.cpp 第 156 行定义.
引用了 found.
被这些函数引用 prepare().
◆ prepare()
|
overridevirtual |
Stage one artifact and copy all data needed after prepare.
实现了 eve::artifact::ProviderContract.
在文件 ArtifactProvider.cpp 第 115 行定义.
引用了 eve::artifact::PublicationView::buildKey, eve::scene::SceneArtifactRecord::buildKey, eve::Conflict, eve::Diagnostic::error(), eve::Failed, find(), eve::scene::SceneArtifactRecord::handle, eve::artifact::PublicationView::id, eve::scene::SceneArtifactRecord::id, eve::InvalidArgument, eve::RuntimeHandle< SceneArtifactHandleTag >::invalidIndex, eve::detail::Id128< Tag >::isNil(), eve::scene::SceneArtifactRecord::nodes, eve::artifact::PublicationView::parts , 以及 eve::scene::validBounds().
◆ restoreState()
|
overridevirtual |
Replace the registry from validated backend-neutral state.
重载 eve::artifact::ProviderContract .
在文件 ArtifactProvider.cpp 第 198 行定义.
引用了 eve::Applied, bounds, eve::Conflict, eve::Diagnostic::error(), eve::Failed, eve::Result< T >::failure(), eve::RuntimeHandle< SceneArtifactHandleTag >::fromPacked(), handle, eve::scene::hasSupportedVersion(), eve::RuntimeHandle< SceneArtifactHandleTag >::invalidIndex, member, node, nodes, eve::scene::SceneArtifactRecord::nodes, eve::detail::Id128< Tag >::parse(), eve::ParseError, eve::scene::readBounds(), eve::scene::readString(), eve::scene::readUint64String(), state, eve::Status::success() , 以及 eve::Result< T >::success().
◆ setPrepareFailure()
|
inlinenoexcept |
◆ size()
|
inlinenoexcept |
Return the number of committed scene artifact records.
在文件 ArtifactProvider.h 第 68 行定义.
◆ snapshotState()
|
overridevirtual |
Export scene identity, build keys, handles and part bounds.
重载 eve::artifact::ProviderContract .
在文件 ArtifactProvider.cpp 第 168 行定义.
引用了 eve::scene::boundsValue(), eve::Failed, eve::scene::failureValue(), node, nodes, state , 以及 eve::Result< T >::success().
友元及相关函数文档
◆ SceneArtifactStage
|
friend |
在文件 ArtifactProvider.h 第 75 行定义.
该类的文档由以下文件生成:
- src/modules/scene/ArtifactProvider.h
- src/modules/scene/ArtifactProvider.cpp
Public 成员函数 继承自