40#ifndef UI_GGUILINEGRAPH_H_
41#define UI_GGUILINEGRAPH_H_
55#include <unordered_map>
79 void addData(
int lineIndex, std::deque<std::array<float, 2>> dataToAdd);
82 void setPointValues(
int lineIndex,
float oldX,
float oldY,
float newX,
float newY);
93 static const int linecolornum = 6;
94 void drawGraph()
override;
97 std::deque<std::deque<std::array<float, 4>>> graphlines;
98 std::vector<gLine> cachedlines;
99 std::vector<gCircle> cachedcircles;
100 std::unordered_map<uint64_t, gLine*> linesmap;
101 std::unordered_map<uint64_t, gCircle*> circlesmap;
102 gColor linecolors[linecolornum];
105 bool needsupdate =
false;
107 uint64_t hash(uint32_t
a, uint32_t
b) {
108 return ((uint64_t)
a << 32) |
b;
Definition gBaseGUIObject.h:18
gBaseApp * root
Definition gBaseGUIObject.h:147
Definition gGUIGraph.h:49
Definition gGUILineGraph.h:58
void setMaxY(int maxY) override
void addData(int lineIndex, std::deque< std::array< float, 2 > > dataToAdd)
void setMinX(int minX) override
void setLabelCountY(int labelCount) override
void removeFirstPointsFromLine(int lineIndex, int pointNumLimit)
int getPointNum(int lineIndex)
void setLineColor(int lineIndex, gColor lineColor)
void addPointToLine(int lineIndex, float x, float y)
void enablePoints(bool arePointsEnabled)
float getPointYValue(int lineIndex, int pointIndex)
void setPointValues(int lineIndex, int pointIndex, float newX, float newY)
void setLabelCountX(int labelCount) override
void setMaxX(int maxX) override
void setMinY(int minY) override
gColor getLineColor(int lineIndex)
void set(gBaseApp *root, gBaseGUIObject *topParentGUIObject, gBaseGUIObject *parentGUIObject, int parentSlotLineNo, int parentSlotColumnNo, int x, int y, int w, int h) override
void setPointValues(int lineIndex, float oldX, float oldY, float newX, float newY)
float getPointXValue(int lineIndex, int pointIndex)
float a
Definition gColor.h:22
float b
Definition gColor.h:22