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 setMinX(float minX) override
void setMaxX(float maxX) override
void addData(int lineIndex, std::deque< std::array< float, 2 > > dataToAdd)
void setLabelCountY(int labelCount) override
void removeFirstPointsFromLine(int lineIndex, int pointNumLimit)
int getPointNum(int lineIndex)
void setMaxY(float maxY) override
void setLineColor(int lineIndex, gColor lineColor)
void setMinY(float minY) override
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
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