1 #ifndef CPPAD_CG_MODEL_C_SOURCE_GEN_FOR0_INCLUDED
2 #define CPPAD_CG_MODEL_C_SOURCE_GEN_FOR0_INCLUDED
23 const std::string jobName =
"model (zero-order forward)";
25 startingJob(
"'" + jobName +
"'", JobTimer::GRAPH);
28 handler.setJobTimer(_jobTimer);
30 std::vector<CGBase> indVars(_fun.Domain());
33 for (
size_t i = 0; i < indVars.size(); i++) {
34 indVars[i].setValue(_x[i]);
38 std::vector<CGBase> dep;
40 if (_loopTapes.empty()) {
41 dep = _fun.Forward(0, indVars);
46 dep = prepareForward0WithLoops(handler, indVars);
55 langC.setGenerateFunction(_name +
"_" + FUNCTION_FORWAD_ZERO);
57 std::ostringstream code;
58 std::unique_ptr<VariableNameGenerator<Base> > nameGen(createVariableNameGenerator());
60 handler.
generateCode(code, langC, dep, *nameGen, _atomicFunctions, jobName);