载入中...
搜索中...
未找到
eve::scene::SceneArtifactProvider类 参考final

Real scene-module provider for generated artifact publication. 更多...

#include <ArtifactProvider.h>

类 eve::scene::SceneArtifactProvider 继承关系图:
eve::artifact::ISceneArtifactAdapter eve::artifact::ProviderContract

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()

void eve::scene::SceneArtifactProvider::clear ( )
noexcept

Remove all records and reset the local handle allocator.

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

◆ clearState()

void eve::scene::SceneArtifactProvider::clearState ( )
inlineoverridevirtualnoexcept

Clear provider state through the common restore-cleanup hook.

重载 eve::artifact::ProviderContract .

在文件 ArtifactProvider.h 第 56 行定义.

◆ emptyState()

bool eve::scene::SceneArtifactProvider::emptyState ( ) const
inlineoverridevirtualnoexcept

Return whether the scene registry has no committed records.

重载 eve::artifact::ProviderContract .

在文件 ArtifactProvider.h 第 54 行定义.

◆ find()

const SceneArtifactRecord * eve::scene::SceneArtifactProvider::find ( eve::PersistentId  id) const
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()

◆ restoreState()

◆ setPrepareFailure()

void eve::scene::SceneArtifactProvider::setPrepareFailure ( bool  enabled)
inlinenoexcept

Inject a prepare failure for composition tests.

在文件 ArtifactProvider.h 第 72 行定义.

引用了 enabled.

◆ size()

std::size_t eve::scene::SceneArtifactProvider::size ( ) const
inlinenoexcept

Return the number of committed scene artifact records.

在文件 ArtifactProvider.h 第 68 行定义.

◆ snapshotState()

eve::Result< eve::Value > eve::scene::SceneArtifactProvider::snapshotState ( ) const
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 class SceneArtifactStage
friend

在文件 ArtifactProvider.h 第 75 行定义.


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