18 return m_values[sequenceIndex][rank];
31 if (n < 0 || n-m_rank > k_maxRecurrentRank) {
34 while (m_rank++ < n) {
35 step(sequenceStore, sqctx);
44 for (
int i = 0; i < MaxNumberOfSequences; i++) {
45 for (
int j = MaxRecurrenceDepth; j > 0; j--) {
46 m_values[i][j] = m_values[i][j-1];
53 u = u && u->isDefined() ? u :
nullptr;
55 v = v && v->isDefined() ? v :
nullptr;
57 if (u !=
nullptr && u->name()[0] == SequenceStore::k_sequenceNames[1][0]) {
65 m_values[0][0] = u ? u->approximateToNextRank<
T>(m_rank, sqctx) :
NAN;
66 m_values[1][0] = v ? v->approximateToNextRank<
T>(m_rank, sqctx) :
NAN;
67 m_values[0][0] = u ? u->approximateToNextRank<
T>(m_rank, sqctx) :
NAN;
70 template class TemplatedSequenceContext<float>;
71 template class TemplatedSequenceContext<double>;
Sequence * functionAtIndex(int i) override