Numworks Epsilon  1.4.1
Graphing Calculator Operating System
sequence_store.h
Go to the documentation of this file.
1 #ifndef SEQUENCE_SEQUENCE_STORE_H
2 #define SEQUENCE_SEQUENCE_STORE_H
3 
4 #include "../shared/function_store.h"
5 #include "sequence.h"
6 #include <stdint.h>
7 #include <escher.h>
8 
9 namespace Sequence {
10 
12 public:
14  uint32_t storeChecksum() override;
15  Sequence * functionAtIndex(int i) override;
16  Sequence * activeFunctionAtIndex(int i) override;
17  Sequence * definedFunctionAtIndex(int i) override;
18  Sequence * addEmptyFunction() override;
19  /* WARNING: after calling removeFunction or removeAll, the sequence context
20  * need to invalidate its cache as the sequences evaluations might have
21  * changed */
22  void removeFunction(Shared::Function * f) override;
23  void removeAll() override;
24  int maxNumberOfFunctions() override;
25  const char * firstAvailableName() override;
26  char symbol() const override;
27  static constexpr const char * k_sequenceNames[MaxNumberOfSequences] = {
28  "u", "v"//, "w"
29  };
30 private:
31  const KDColor firstAvailableColor() override;
32  static constexpr KDColor k_defaultColors[MaxNumberOfSequences] = {
33  Palette::Red, Palette::Blue//, Palette::YellowDark
34  };
35  Sequence m_sequences[MaxNumberOfSequences];
36 };
37 
38 }
39 
40 #endif
static constexpr KDColor Blue
Definition: palette.h:27
Sequence * functionAtIndex(int i) override
int maxNumberOfFunctions() override
Sequence * activeFunctionAtIndex(int i) override
unsigned int uint32_t
Definition: stdint.h:6
char symbol() const override
Sequence * addEmptyFunction() override
uint32_t storeChecksum() override
Definition: color.h:6
Definition: app.cpp:7
static constexpr KDColor Red
Definition: palette.h:23
static constexpr const char * k_sequenceNames[MaxNumberOfSequences]
Sequence * definedFunctionAtIndex(int i) override
void removeFunction(Shared::Function *f) override
const char * firstAvailableName() override