Macaulay2 Engine
Loading...
Searching...
No Matches

◆ SLEvaluatorConcrete() [2/5]

template<typename RT>
SLEvaluatorConcrete< RT >::SLEvaluatorConcrete ( SLProgram * SLP,
M2_arrayint constsPos,
M2_arrayint varsPos,
const MutableMat< DMat< RT > > * consts )

Definition at line 128 of file SLP-imp.hpp.

133 : mRing(consts->getMat().ring()), isCompiled(false), compiled_fn(NULL), nParams(0), parametersAndInputs(nullptr)
134{
135 slp = SLP;
136 // for(int i=0; i<cPos->len; i++)
137 // constsPos.push_back(slp->inputCounter+cPos->array[i]);
138 for (int i = 0; i < vPos->len; i++)
139 varsPos.push_back(slp->inputCounter + vPos->array[i]);
140 values.resize(slp->inputCounter + slp->mNodes.size());
141 for (auto i = values.begin(); i != values.end(); ++i) ring().init(*i);
142 for (int i = 0; i < cPos->len; i++)
143 ring().set(values[slp->inputCounter + cPos->array[i]],
144 consts->getMat().entry(0, i));
145 // std::cout << "SLEvaluatorConcrete(MutableMat): " << this << std::endl;
146 nInputs = varsPos.size();
147 nOutputs = slp->mOutputPositions.size();
148}
std::vector< SLProgram::GATE_POSITION > varsPos
!! can we make it a reference???
Definition SLP-defs.hpp:283
SLProgram * slp
Definition SLP-defs.hpp:282
const RT & ring() const
Definition SLP-defs.hpp:319
std::vector< ElementType > values
Definition SLP-defs.hpp:337
void(* compiled_fn)(ElementType const *, ElementType *)
Definition SLP-defs.hpp:342
ElementType * parametersAndInputs
Definition SLP-defs.hpp:344

References compiled_fn, isCompiled, mRing, nInputs, nOutputs, nParams, parametersAndInputs, ring(), SLEvaluator::slp, values, and SLEvaluator::varsPos.