CellViz  1.0
visualizer.h
Go to the documentation of this file.
1 #include <board.h>
2 #include <SFML/Graphics.hpp>
3 #ifndef VISUALIZER_H
4 #define VISUALIZER_H
5 
6 struct ColorTuple{
7  int a, b, c;
8  ColorTuple(int a, int b, int c);
9  static ColorTuple RGBtoHSV(ColorTuple rgb);
10  static ColorTuple HSVtoRGB(ColorTuple rgb);
11 };
12 
13 class Visualiser{
14 public:
16  Visualiser(Board &board, int bSize, int cSize, int maxValue, sf::Color bCol, sf::Color cCol);
17  virtual void UpdateBoard();
18  sf::RenderWindow& GetWindow(){
19  return window;
20  }
21  sf::Color CalculateCellColor(Board& board, int x, int y);
22 protected:
24  sf::RenderWindow window;
25  int boardSize;
26  int cellSize;
28  sf::Color backgroundColor;
29  sf::Color cellColor;
30 };
31 
32 class RainbowVisualiser : public Visualiser {
33 public:
34  RainbowVisualiser(Board &board, int bSize, int cSize, int maxValue, sf::Color bCol, sf::Color cCol, int speed);
35  void UpdateBoard() override;
36 private:
38 };
39 
40 #endif //VISUALIZER_H
Definition: board.h:21
Definition: visualizer.h:32
void UpdateBoard() override
Definition: visualizer.cpp:59
int cycleSpeed
Definition: visualizer.h:37
RainbowVisualiser(Board &board, int bSize, int cSize, int maxValue, sf::Color bCol, sf::Color cCol, int speed)
Definition: visualizer.cpp:53
Definition: visualizer.h:13
sf::RenderWindow & GetWindow()
Definition: visualizer.h:18
int maxCellValue
Definition: visualizer.h:27
sf::RenderWindow window
Definition: visualizer.h:24
virtual void UpdateBoard()
Definition: visualizer.cpp:32
sf::Color CalculateCellColor(Board &board, int x, int y)
Definition: visualizer.cpp:19
int boardSize
Definition: visualizer.h:25
sf::Color backgroundColor
Definition: visualizer.h:28
Board & board
Definition: visualizer.h:23
sf::Color cellColor
Definition: visualizer.h:29
int cellSize
Definition: visualizer.h:26
Definition: visualizer.h:6
int a
Definition: visualizer.h:7
int b
Definition: visualizer.h:7
ColorTuple(int a, int b, int c)
Definition: visualizer.cpp:67
static ColorTuple RGBtoHSV(ColorTuple rgb)
Definition: visualizer.cpp:69
static ColorTuple HSVtoRGB(ColorTuple rgb)
Definition: visualizer.cpp:112
int c
Definition: visualizer.h:7