MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ set_multipass()

template<ComputeData InputType = std::vector<Kakshya::DataVariant>, ComputeData OutputType = InputType>
ShaderExecutionContext & MayaFlux::Yantra::ShaderExecutionContext< InputType, OutputType >::set_multipass ( uint32_t  pass_count,
std::function< void(uint32_t, void *)>  pc_updater 
)
inline

Configure multi-pass (CHAINED) dispatch.

Stores pass count and push constant updater so the caller never touches ExecutionContext::execution_metadata by string key. The CHAINED mode is activated automatically in execute() when a multipass configuration is present.

Parameters
pass_countTotal number of passes to dispatch.
pc_updaterCalled before each pass with (pass_index, push_constant_ptr).
Returns
Reference to this executor for chaining.

Definition at line 267 of file ShaderExecutionContext.hpp.

270 {
271 m_multipass_count = pass_count;
272 m_multipass_updater = std::move(pc_updater);
273 return *this;
274 }
std::function< void(uint32_t, void *)> m_multipass_updater