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

◆ execute_batch()

template<typename OpClass , ComputeData InputType, ComputeData OutputType = InputType, typename... Args>
std::vector< std::optional< Datum< OutputType > > > MayaFlux::Yantra::ComputeMatrix::execute_batch ( const std::vector< Datum< InputType > > &  inputs,
Args &&...  args 
)
inline

Execute operation on multiple inputs.

Template Parameters
OpClassOperation class
InputTypeInput data type
OutputTypeOutput data type
Parameters
inputsVector of inputs
argsConstructor arguments for operation
Returns
Vector of results

Definition at line 296 of file ComputeMatrix.hpp.

299 {
300 auto operation = std::make_shared<OpClass>(std::forward<Args>(args)...);
301
302 std::vector<std::optional<Datum<OutputType>>> results;
303 results.reserve(inputs.size());
304
305 for (const auto& input : inputs) {
306 results.push_back(execute_operation<OpClass, InputType, OutputType>(operation, input));
307 }
308
309 return results;
310 }