Files
Upsilon/apps/sequence/local_context.h
Émilie Feral 82e212e771 [poincare] Template for double
Change-Id: I7404bd5cefc9ef78a5dbd572c3874a557cded28e
2017-08-16 09:55:29 +02:00

25 lines
709 B
C++

#ifndef SEQUENCE_LOCAL_CONTEXT_H
#define SEQUENCE_LOCAL_CONTEXT_H
#include <poincare.h>
#include "sequence_store.h"
namespace Sequence {
template<typename T>
class LocalContext : public Poincare::VariableContext<T> {
public:
LocalContext(Poincare::Context * parentContext);
const Poincare::Expression * expressionForSymbol(const Poincare::Symbol * symbol) override;
void setValueForSequenceRank(T value, const char * sequenceName, int rank);
private:
constexpr static int k_depth = 2;
int nameIndexForSymbol(const Poincare::Symbol * symbol);
int rankIndexForSymbol(const Poincare::Symbol * symbol);
Poincare::Complex<T> m_values[SequenceStore::k_maxNumberOfSequences][k_depth];
};
}
#endif