载入中...
搜索中...
未找到
eve::action::ActionBlockRuntime类 参考

Owner-thread lifecycle router for timeline notifies and active blocks. 更多...

#include <ActionBlockRuntime.h>

Public 成员函数

 ActionBlockRuntime (ActionNotifyRegistry &registry) noexcept
 Bind the canonical registry used for all synchronous callbacks.
 
 ActionBlockRuntime (const ActionBlockRuntime &)=delete
 
ActionBlockRuntime & operator= (const ActionBlockRuntime &)=delete
 
Result< void > apply (const ActionAdvance &advance, ActionNotifyContext context)
 Deliver boundaries and active updates from one authoritative advance.
 
Result< void > interrupt (ActionNotifyContext context)
 Emit paired exits for all blocks retained for one interrupted execution.
 
Result< void > sample (const std::vector< ActionActiveBlock > &blocks, ActionNotifyContext context) const
 Evaluate active blocks for editor scrubbing without retaining lifecycle state.
 
std::size_t executionCount () const noexcept
 Number of execution projections retained for interruption cleanup.
 

详细描述

Owner-thread lifecycle router for timeline notifies and active blocks.

ActionRuntime remains the timeline authority. This adapter retains only the last owning block projection per execution so interruption can emit paired exits. The borrowed registry must outlive this object. Handler callbacks are synchronous, run without locks, and may reenter unrelated systems but must not reenter this instance.

在文件 ActionBlockRuntime.h 第 23 行定义.

构造及析构函数说明

◆ ActionBlockRuntime() [1/2]

eve::action::ActionBlockRuntime::ActionBlockRuntime ( ActionNotifyRegistry &  registry)
inlineexplicitnoexcept

Bind the canonical registry used for all synchronous callbacks.

参数
registryBorrowed owner-thread registry.

在文件 ActionBlockRuntime.h 第 29 行定义.

◆ ActionBlockRuntime() [2/2]

eve::action::ActionBlockRuntime::ActionBlockRuntime ( const ActionBlockRuntime &  )
delete

成员函数说明

◆ apply()

Result< void > eve::action::ActionBlockRuntime::apply ( const ActionAdvance &  advance,
ActionNotifyContext  context 
)

Deliver boundaries and active updates from one authoritative advance.

参数
advanceOwning result produced by ActionRuntime.
contextOwning execution/target context; its id must match advance.
返回
Applied after all handlers succeed, otherwise the first handler failure.

在文件 ActionBlockRuntime.cpp 第 10 行定义.

引用了 eve::action::ActionAdvance::activeBlocks, eve::action::ActionNotifyRegistry::advanceHandlers(), eve::Applied, context, eve::action::ActionNotifyRegistry::dispatch(), eve::action::ActionNotifyRegistry::dispatchUpdate(), eve::Diagnostic::error(), eve::Result< T >::failure(), eve::action::ActionAdvance::id, eve::InvalidArgument, eve::Status::success(), eve::Result< T >::success(), eve::action::ActionAdvance::timelineEvents, eve::action::ActionAdvance::totalElapsed , 以及 updated.

◆ executionCount()

std::size_t eve::action::ActionBlockRuntime::executionCount ( ) const
inlinenoexcept

Number of execution projections retained for interruption cleanup.

在文件 ActionBlockRuntime.h 第 58 行定义.

◆ interrupt()

Result< void > eve::action::ActionBlockRuntime::interrupt ( ActionNotifyContext  context)

Emit paired exits for all blocks retained for one interrupted execution.

参数
contextOwning context identifying the execution to interrupt.
返回
Applied/NoOp or the first exit failure; successfully exited blocks are removed.

在文件 ActionBlockRuntime.cpp 第 31 行定义.

引用了 eve::Applied, context, eve::action::ActionNotifyRegistry::dispatch(), found, eve::NoOp, eve::action::StateExit, eve::Status::success(), eve::Result< T >::success() , 以及 eve::action::ActionTimelineEvent::trackId.

◆ operator=()

ActionBlockRuntime & eve::action::ActionBlockRuntime::operator= ( const ActionBlockRuntime &  )
delete

◆ sample()

Result< void > eve::action::ActionBlockRuntime::sample ( const std::vector< ActionActiveBlock > &  blocks,
ActionNotifyContext  context 
) const

Evaluate active blocks for editor scrubbing without retaining lifecycle state.

参数
blocksOwning block samples from ActionTimeline::activeBlocks.
contextPreview context; preview and scrubbing are forced true.

在文件 ActionBlockRuntime.cpp 第 48 行定义.

引用了 eve::Applied, context, eve::action::ActionNotifyRegistry::dispatchSample(), eve::NoOp, eve::Status::success() , 以及 eve::Result< T >::success().


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