JPetTaskChainExecutor::JPetTaskChainExecutor(const TaskGeneratorChain& taskGeneratorChain, int processedFileId, const jpet_options_tools::OptsStrAny& opts): fInputSeqId(processedFileId), ftaskGeneratorChain(taskGeneratorChain) { /// ParamManager is generated and added to fParams fParams = jpet_params_factory::generateParams(opts); assert(fParams.getParamManager()); for (auto taskGenerator : ftaskGeneratorChain) { auto task = taskGenerator(); fTasks.push_back(std::move(task)); } }
JPetTaskChainExecutor::JPetTaskChainExecutor(TaskGeneratorChain* taskGeneratorChain, int processedFileId, JPetOptions opt) : fInputSeqId(processedFileId), fParamManager(0), ftaskGeneratorChain(taskGeneratorChain), fOptions(opt) { fParamManager = JPetTaskChainExecutorUtils::generateParamManager(fOptions); if (taskGeneratorChain) { for (auto taskGenerator : *ftaskGeneratorChain) { auto task = taskGenerator(); ///@todo change it (dynamic_cast<JPetTaskIO*>(task))->setParamManager(fParamManager); fTasks.push_back(task); } } else { ERROR("taskGeneratorChain is null while constructing JPetTaskChainExecutor"); } }