StaticDataGraph
Abstract helper class used to implement graphs with the same distance between the x values (i.e. x is ignored).
Inherits from: AbstractDataGraph, Container, Drawable
Inherited by: GraphData
Public Functions
| FORCE_INLINE_FUNCTION int16_t | addDataPoint(float x, float y) |
| Adds a new data point to the end of the graph. | |
| FORCE_INLINE_FUNCTION int16_t | addDataPoint(int x, int y) |
| Adds a new data point to the end of the graph. | |
| FORCE_INLINE_FUNCTION int16_t | addDataPointScaled(int x, int y) |
| Adds a new data point to the end of the graph. | |
| FORCE_INLINE_FUNCTION int | deleteDataPoint(float x) |
| Deletes the data point at the given x value. | |
| FORCE_INLINE_FUNCTION int | deleteDataPoint(int x) |
| Deletes the data point at the given x value. | |
| FORCE_INLINE_FUNCTION int16_t | deleteDataPointIndex(int index) |
| Same as deleteDataPoint(int) except the passed argument is the index of the value to delete. | |
| FORCE_INLINE_FUNCTION int16_t | deleteDataPointScaled(int x) |
| Same as dalateDataPoint(int) except the passed argument is assumed scaled. | |
| virtual int | indexToDataPointXScaled(int16_t index) const |
| Gets data point x coordinate scaled. | |
| virtual int | indexToDataPointYScaled(int16_t index) const |
| Gets data point y coordinate scaled. | |
| virtual void | setGraphRangeXAutoScaled(bool showYaxis, int margin) |
| Sets graph range x coordinate automatic scaled. | |
| virtual void | setGraphRangeYAutoScaled(bool showXaxis =true, int margin =0) |
| Sets graph range y coordinate automatic scaled. | |
| virtual void | setScaleX(int scale, bool updateData =false) |
| Sets a scaling factor to be multiplied on each X value added. | |
| virtual void | setScaleY(int scale, bool updateData =false) |
| Sets a scaling factor to be multiplied on each Y value added. | |
| StaticDataGraph(int16_t capacity, int xvalues, int yvalues) | |
| Initializes a new instance of the AbstractDataGraphWithY class. | |
Protected Functions
| virtual int16_t | addValue(int xvalue, int yvalue) =0 |
| Adds a value to the internal data array and keeps track of when graph points, graph axis and the entire graph needs to be redrawn (invalidated). | |
| virtual int16_t | deleteIndex(int index) |
| Removes a value from the internal data array and keeps track of when graph points, graph axis and the entire graph needs to be redrawn (invalidated). | |
| virtual int16_t | deleteValue(int xvalue) |
| Removes a value from the internal data array and keeps track of when graph points, graph axis and the entire graph needs to be redrawn (invalidated). | |
| virtual CWRUtil::Q5 | indexToScreenXQ5(int16_t index) const |
| Gets screen x coordinate for a specific data point added to the graph. | |
| virtual CWRUtil::Q5 | indexToScreenYQ5(int16_t index) const |
| Gets screen y coordinate for a specific data point added to the graph. | |
| virtual int | indexToXAxis(const int valueScaled, const int labelScaled) const |
| Convert the given valueScaled (index) to x axis value. | |
| virtual bool | xScreenRangeToIndexRange(int16_t xMin, int16_t xMax, int16_t & indexMin, int16_t & indexMax) const |
| Gets index range for screen x coordinate range taking the current graph range into account. | |
Protected Attributes
Additional inherited members
Public Classes inherited from AbstractDataGraph
| class | GraphClickEvent |
| An object of this type is passed with each callback that is sent when the graph is clicked. | |
| class | GraphDragEvent |
| An object of this type is passed with each callback that is sent when the graph is dragged. | |
Public Functions inherited from AbstractDataGraph
| AbstractDataGraph(int16_t capacity) | |
| Initializes a new instance of the AbstractDataGraph class. | |
| void | addBottomElement(AbstractGraphDecoration & d) |
| Adds an element to be shown in the area below the graph. | |
| void | addGraphElement(AbstractGraphElement & d) |
| Adds a graph element which will display the graph. | |
| void | addLeftElement(AbstractGraphDecoration & d) |
| Adds an element to be shown in the area to the left of the graph. | |
| void | addRightElement(AbstractGraphDecoration & d) |
| Adds an element to be shown in the area to the right of the graph. | |
| void | addTopElement(AbstractGraphDecoration & d) |
| Adds an element to be shown in the area above the graph. | |
| virtual void | clear() |
| Clears the graph to its blank/initial state. | |
| FORCE_INLINE_FUNCTION int | float2scaledX(float f) const |
| Same as float2scaled(float, int) using the graph's x scale. | |
| FORCE_INLINE_FUNCTION int | float2scaledY(float f) const |
| Same as float2scaled(float, int) using the graph's y scale. | |
| FORCE_INLINE_FUNCTION uint8_t | getAlpha() const |
| Gets the current alpha value of the widget. | |
| FORCE_INLINE_FUNCTION int16_t | getGapBeforeIndex() const |
| Gets gap before index as set using setGapBeforeIndex(). | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaHeight() const |
| Gets graph area height. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaHeightIncludingPadding() const |
| Gets graph area height including padding (but not margin). | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaMarginBottom() const |
| Gets graph margin bottom. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaMarginLeft() const |
| Gets graph margin left. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaMarginRight() const |
| Gets graph margin right. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaMarginTop() const |
| Gets graph margin top. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaPaddingBottom() const |
| Gets graph area padding bottom. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaPaddingLeft() const |
| Gets graph area padding left. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaPaddingRight() const |
| Gets graph area padding right. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaPaddingTop() const |
| Gets graph area padding top. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaWidth() const |
| Gets graph area width. | |
| FORCE_INLINE_FUNCTION int16_t | getGraphAreaWidthIncludingPadding() const |
| Gets graph area width including padding (but not margin). | |
| virtual float | getGraphRangeXMaxAsFloat() const |
| Gets maximum x value for the graph. | |
| virtual int | getGraphRangeXMaxAsInt() const |
| Gets maximum x value for the graph. | |
| virtual int | getGraphRangeXMaxScaled() const |
| Gets maximum x value for the graph. | |
| virtual float | getGraphRangeXMinAsFloat() const |
| Gets minimum x value for the graph. | |
| virtual int | getGraphRangeXMinAsInt() const |
| Gets minimum x value for the graph. | |
| virtual int | getGraphRangeXMinScaled() const |
| Gets minimum x value for the graph. | |
| virtual float | getGraphRangeYMaxAsFloat() const |
| Gets maximum y value for the graph. | |
| virtual int | getGraphRangeYMaxAsInt() const |
| Gets maximum y value for the graph. | |
| virtual int | getGraphRangeYMaxScaled() const |
| Gets maximum y value for the graph. | |
| virtual float | getGraphRangeYMinAsFloat() const |
| Gets minimum y value for the graph. | |
| virtual int | getGraphRangeYMinAsInt() const |
| Gets minimum y value for the graph. | |
| virtual int | getGraphRangeYMinScaled() const |
| Gets minimum y value for the graph. | |
| FORCE_INLINE_FUNCTION int16_t | getMaxCapacity() const |
| Gets the capacity (max number of points) of the graph. | |
| virtual bool | getNearestIndexForScreenX(int16_t x, int16_t & index) const |
| Gets graph index nearest to the given screen x value. | |
| virtual bool | getNearestIndexForScreenXY(int16_t x, int16_t y, int16_t & index) |
| Gets graph index nearest to the given screen position. | |
| virtual int | getScaleX() const |
| Gets the scaling factor previously set using setScaleX(). | |
| virtual int | getScaleY() const |
| Gets the scaling factor previously set using setScaleY(). | |
| FORCE_INLINE_FUNCTION int16_t | getUsedCapacity() const |
| Gets the number of point used by the graph. | |
| virtual void | handleClickEvent(const ClickEvent & event) |
| Defines the event handler interface for ClickEvents. | |
| virtual void | handleDragEvent(const DragEvent & event) |
| Defines the event handler interface for DragEvents. | |
| FORCE_INLINE_FUNCTION void | indexToDataPoint(int16_t index, float & xvalue, float & yvalue) const |
| Gets data point as floating point values. | |
| FORCE_INLINE_FUNCTION void | indexToDataPoint(int16_t index, int & xvalue, int & yvalue) const |
| Gets data point as integer values. | |
| FORCE_INLINE_FUNCTION void | indexToDataPointScaled(int16_t index, int & xvalue, int & yvalue) const |
| Gets data point as raw (scaled) values. | |
| FORCE_INLINE_FUNCTION float | indexToDataPointXAsFloat(int16_t index) const |
| Gets data point x coordinate as float. | |
| FORCE_INLINE_FUNCTION int | indexToDataPointXAsInt(int16_t index) const |
| Gets data point x coordinate as int. | |
| FORCE_INLINE_FUNCTION float | indexToDataPointYAsFloat(int16_t index) const |
| Gets data point y coordinate as float. | |
| FORCE_INLINE_FUNCTION int | indexToDataPointYAsInt(int16_t index) const |
| Gets data point y coordinate as int. | |
| FORCE_INLINE_FUNCTION int16_t | indexToScreenX(int16_t index) const |
| Get the screen x coordinate for the given graph point index. | |
| FORCE_INLINE_FUNCTION int16_t | indexToScreenY(int16_t index) const |
| Get the screen y coordinate for the given graph point index. | |
| FORCE_INLINE_FUNCTION int | int2scaledX(int i) const |
| Same as int2scaled(int, int) using the graph's x scale. | |
| FORCE_INLINE_FUNCTION int | int2scaledY(int i) const |
| Same as int2scaled(int, int) using the graph's y scale. | |
| virtual void | invalidateContent() const |
| Invalidate content. | |
| FORCE_INLINE_FUNCTION float | scaled2floatX(int i) const |
| Same as scaled2float(int, int) using the graph's x scale. | |
| FORCE_INLINE_FUNCTION float | scaled2floatY(int i) const |
| Same as scaled2float(int, int) using the graph's y scale. | |
| FORCE_INLINE_FUNCTION int | scaled2intX(int i) const |
| Same as scaled2int(int, int) using the graph's x scale. | |
| FORCE_INLINE_FUNCTION int | scaled2intY(int i) const |
| Same as scaled2int(int, int) using the graph's y scale. | |
| virtual void | setAlpha(uint8_t newAlpha) |
| Sets the opacity (alpha value). | |
| FORCE_INLINE_FUNCTION void | setClickAction(GenericCallback< const AbstractDataGraph &, const GraphClickEvent & > & callback) |
| Sets an action to be executed when the graph is clicked. | |
| FORCE_INLINE_FUNCTION void | setDragAction(GenericCallback< const AbstractDataGraph &, const GraphDragEvent & > & callback) |
| Sets an action to be executed when the graph is dragged. | |
| FORCE_INLINE_FUNCTION void | setGapBeforeIndex(int16_t index) |
| Makes gap before the specified index. | |
| void | setGraphAreaMargin(int16_t top, int16_t left, int16_t right, int16_t bottom) |
| Sets graph position inside the widget by reserving a margin around the graph. | |
| void | setGraphAreaPadding(int16_t top, int16_t left, int16_t right, int16_t bottom) |
| Adds padding around the graph that will not be drawn in (apart from dots, boxes, lines etc. | |
| FORCE_INLINE_FUNCTION void | setGraphRange(float xMin, float xMax, float yMin, float yMax) |
| Sets minimum and maximum x and y coordinate ranges for the graph. | |
| FORCE_INLINE_FUNCTION void | setGraphRange(float xMin, float xMax, int yMin, int yMax) |
| Sets minimum and maximum x and y coordinate ranges for the graph. | |
| FORCE_INLINE_FUNCTION void | setGraphRange(int xMin, int xMax, float yMin, float yMax) |
| Sets minimum and maximum x and y coordinate ranges for the graph. | |
| FORCE_INLINE_FUNCTION void | setGraphRange(int xMin, int xMax, int yMin, int yMax) |
| Sets minimum and maximum x and y coordinate ranges for the graph. | |
| FORCE_INLINE_FUNCTION void | setGraphRangeScaled(int xMin, int xMax, int yMin, int yMax) |
| Same as setGraphRange(int, int, int, int) except the passed arguments are assumed scaled. | |
| virtual void | setGraphRangeX(float min, float max) |
| Sets minimum and maximum x coordinates for the graph. | |
| virtual void | setGraphRangeX(int min, int max) |
| Sets minimum and maximum x coordinates for the graph. | |
| virtual void | setGraphRangeXAuto(bool showYaxis, float margin) |
| Automatically adjust min and max x coordinate to show entire graph. | |
| virtual void | setGraphRangeXAuto(bool showYaxis =true, int margin =0) |
| Automatically adjust min and max x coordinate to show entire graph. | |
| virtual void | setGraphRangeXScaled(int min, int max) |
| Sets minimum and maximum x coordinates for the graph. | |
| virtual void | setGraphRangeY(float min, float max) |
| Sets minimum and maximum y coordinates for the graph. | |
| virtual void | setGraphRangeY(int min, int max) |
| Sets minimum and maximum y coordinates for the graph. | |
| virtual void | setGraphRangeYAuto(bool showXaxis, float margin) |
| Automatic adjust min and max y coordinate to show entire graph. | |
| virtual void | setGraphRangeYAuto(bool showXaxis =true, int margin =0) |
| Automatic adjust min and max y coordinate to show entire graph. | |
| virtual void | setGraphRangeYScaled(int min, int max) |
| Same as setGraphRangeY(int, int) except the passed arguments are assumed scaled. | |
| virtual void | setHeight(int16_t height) |
| Sets the height of this drawable. | |
| virtual void | setWidth(int16_t width) |
| Sets the width of this drawable. | |
| int | convertToNewScale(int value, int oldScale, int newScale) |
| Converts a value from one scale to another scale. | |
| FORCE_INLINE_FUNCTION int | float2scaled(float f, int scale) |
| Multiply a floating point value with a constant and round the result. | |
| FORCE_INLINE_FUNCTION int | int2scaled(int i, int scale) |
| Multiply an integer value with a constant. | |
| FORCE_INLINE_FUNCTION float | scaled2float(int i, int scale) |
| Divide a floating point number with a constant. | |
| FORCE_INLINE_FUNCTION int | scaled2int(int i, int scale) |
| Divide an integer with a constant and round the result. | |
Protected Functions inherited from AbstractDataGraph
| void | invalidateAllXAxisPoints() |
| Invalidate all x axis points. | |
| FORCE_INLINE_FUNCTION void | invalidateGraphArea() const |
| Invalidate entire graph area (the center of the graph). | |
| void | invalidateGraphPointAt(int16_t index) |
| Invalidate point at a given index. | |
| void | invalidateXAxisPointAt(int16_t index) |
| Invalidate x axis point at the given index. | |
| void | updateAreasPosition() |
| Updates the position of all elements in all area after a change in size of the graph area and/or label padding. | |
| virtual CWRUtil::Q5 | valueToScreenXQ5(int x) const |
| Gets screen x coordinate for an absolute value. | |
| virtual CWRUtil::Q5 | valueToScreenYQ5(int y) const |
| Gets screen y coordinate for an absolute value. | |
Protected Attributes inherited from AbstractDataGraph
| uint8_t | alpha |
| The alpha of the entire graph. | |
| Container | bottomArea |
| The area below the graph. | |
| int16_t | bottomPadding |
| The graph area bottom padding. | |
| GenericCallback< const AbstractDataGraph &, const GraphClickEvent & > * | clickAction |
| The callback to be executed when this Graph is clicked. | |
| GenericCallback< const AbstractDataGraph &, const GraphDragEvent & > * | dragAction |
| The callback to be executed when this Graph is dragged. | |
| int16_t | gapBeforeIndex |
| The graph is disconnected (there is a gap) before this element index. | |
| Container | graphArea |
| The graph area (the center area) | |
| int | graphRangeMaxX |
| The graph range maximum x coordinate. | |
| int | graphRangeMaxY |
| The graph range maximum y coordinate. | |
| int | graphRangeMinX |
| The graph range minimum x coordinate. | |
| int | graphRangeMinY |
| The graph range minimum y coordinate. | |
| Container | leftArea |
| The area to the left of the graph. | |
| int16_t | leftPadding |
| The graph area left padding. | |
| int16_t | maxCapacity |
| Maximum number of points in the graph. | |
| Container | rightArea |
| The area to the right of the graph. | |
| int16_t | rightPadding |
| The graph area right padding. | |
| Container | topArea |
| The area above the graph. | |
| int16_t | topPadding |
| The graph area top padding. | |
| int16_t | usedCapacity |
| The number of used points in the graph. | |
| int | xScale |
| The data scale for the x values. | |
| int | yScale |
| The data scale for the y values. | |
Public Functions inherited from Container
| virtual void | add(Drawable & d) |
| Adds a Drawable instance as child to this Container. | |
| Container() | |
| virtual bool | contains(const Drawable & d) |
| Query if a given Drawable has been added directly to this Container. | |
| virtual void | draw(const Rect & invalidatedArea) const |
| Draw this drawable. | |
| virtual void | forEachChild(GenericCallback< Drawable & > * function) |
| Executes the specified callback function for each child in the Container. | |
| virtual Drawable * | getFirstChild() |
| Obtain a pointer to the first child of this container. | |
| virtual void | getLastChild(int16_t x, int16_t y, Drawable ** last) |
| Gets the last child in the list of children in this Container. | |
| virtual void | getLastChildNear(int16_t x, int16_t y, Drawable * last, int16_t fingerAdjustmentX, int16_t * fingerAdjustmentY) |
| Works similar to getLastChild() but also considers the current set finger size in HAL. | |
| virtual Rect | getSolidRect() const |
| Get (the largest possible) rectangle that is guaranteed to be solid (opaque). | |
| virtual void | insert(Drawable * previous, Drawable & d) |
| Inserts a Drawable after a specific child node. | |
| virtual void | invalidateContent() const |
| Tell the framework that the contents of the Drawable needs to be redrawn. | |
| virtual void | remove(Drawable & d) |
| Removes a Drawable from the container by removing it from the linked list of children. | |
| virtual void | removeAll() |
| Removes all children in the Container by resetting their parent and sibling pointers. | |
| virtual void | unlink() |
| Removes all children by unlinking the first child. | |
Protected Functions inherited from Container
| virtual Rect | getContainedArea() const |
| Gets a rectangle describing the total area covered by the children of this container. | |
| virtual void | moveChildrenRelative(int16_t deltaX, int16_t deltaY) |
| Calls moveRelative on all children. | |
Protected Attributes inherited from Container
| Drawable * | firstChild |
| Pointer to the first child of this container. Subsequent children can be found through firstChild's nextSibling. | |
Public Functions inherited from Drawable
| void | center() |
| Centers the Drawable inside its parent. | |
| void | centerX() |
| Center the Drawable horizontally inside its parent. | |
| void | centerY() |
| Center the Drawable vertically inside its parent. | |
| virtual void | childGeometryChanged() |
| This function can be called on parent nodes to signal that the size or position of one or more of its children has changed. | |
| virtual void | draw(const Rect & invalidatedArea) const =0 |
| Draw this drawable. | |
| Drawable() | |
| Initializes a new instance of the Drawable class. | |
| void | drawToDynamicBitmap(BitmapId id) |
| Render the Drawable object into a dynamic bitmap. | |
| void | expand(int margin =0) |
| Expands the Drawable to have the same size as its parent with a given margin around the edge. | |
| Rect | getAbsoluteRect() const |
| Helper function for obtaining the rectangle this Drawable covers, expressed in absolute coordinates. | |
| virtual Drawable * | getFirstChild() |
| Function for obtaining the first child of this drawable if any. | |
| int16_t | getHeight() const |
| Gets the height of this Drawable. | |
| virtual void | getLastChild(int16_t x, int16_t y, Drawable ** last) =0 |
| Function for obtaining the the last child of this drawable that intersects with the specified point. | |
| Drawable * | getNextSibling() |
| Gets the next sibling node. | |
| Drawable * | getParent() const |
| Returns the parent node. | |
| const Rect & | getRect() const |
| Gets the rectangle this Drawable covers, in coordinates relative to its parent. | |
| virtual Rect | getSolidRect() const =0 |
| Get (the largest possible) rectangle that is guaranteed to be solid (opaque). | |
| virtual Rect | getSolidRectAbsolute() |
| Helper function for obtaining the largest solid rect (as implemented by getSolidRect()) expressed in absolute coordinates. | |
| virtual void | getVisibleRect(Rect & rect) const |
| Function for finding the visible part of this drawable. | |
| int16_t | getWidth() const |
| Gets the width of this Drawable. | |
| int16_t | getX() const |
| Gets the x coordinate of this Drawable, relative to its parent. | |
| int16_t | getY() const |
| Gets the y coordinate of this Drawable, relative to its parent. | |
| virtual void | handleClickEvent(const ClickEvent & event) |
| Defines the event handler interface for ClickEvents. | |
| virtual void | handleDragEvent(const DragEvent & event) |
| Defines the event handler interface for DragEvents. | |
| virtual void | handleGestureEvent(const GestureEvent & event) |
| Defines the event handler interface for GestureEvents. | |
| virtual void | handleTickEvent() |
| Called periodically by the framework if the Drawable instance has subscribed to timer ticks. | |
| virtual void | invalidate() const |
| Tell the framework that this entire Drawable needs to be redrawn. | |
| virtual void | invalidateContent() const |
| Tell the framework that the contents of the Drawable needs to be redrawn. | |
| virtual void | invalidateRect(Rect & invalidatedArea) const |
| Request that a region of this drawable is redrawn. | |
| bool | isTouchable() const |
| Gets whether this Drawable receives touch events or not. | |
| bool | isVisible() const |
| Gets whether this Drawable is visible. | |
| virtual void | moveRelative(int16_t x, int16_t y) |
| Moves the drawable. | |
| virtual void | moveTo(int16_t x, int16_t y) |
| Moves the drawable. | |
| virtual void | setHeight(int16_t height) |
| Sets the height of this drawable. | |
| void | setPosition(const Drawable & drawable) |
| Sets the position of the Drawable to the same as the given Drawable. | |
| void | setPosition(int16_t x, int16_t y, int16_t width, int16_t height) |
| Sets the size and position of this Drawable, relative to its parent. | |
| void | setTouchable(bool touch) |
| Controls whether this Drawable receives touch events or not. | |
| void | setVisible(bool vis) |
| Controls whether this Drawable should be visible. | |
| virtual void | setWidth(int16_t width) |
| Sets the width of this drawable. | |
| void | setWidthHeight(const Bitmap & bitmap) |
| Sets the dimensions (width and height) of the Drawable without changing the x and y coordinates). | |
| void | setWidthHeight(const Drawable & drawable) |
| Sets the dimensions (width and height) of the Drawable without changing the x and y coordinates). | |
| void | setWidthHeight(const Rect & rect) |
| Sets the dimensions (width and height) of the Drawable without changing the x and y coordinates). | |
| void | setWidthHeight(int16_t width, int16_t height) |
| Sets the dimensions (width and height) of the Drawable without changing the x and y coordinates). | |
| virtual void | setX(int16_t x) |
| Sets the x coordinate of this Drawable, relative to its parent. | |
| void | setXY(const Drawable & drawable) |
| Sets the x and y coordinates of this Drawable. | |
| void | setXY(int16_t x, int16_t y) |
| Sets the x and y coordinates of this Drawable, relative to its parent. | |
| virtual void | setY(int16_t y) |
| Sets the y coordinate of this Drawable, relative to its parent. | |
| virtual void | translateRectToAbsolute(Rect & r) const |
| Helper function for converting a region of this Drawable to absolute coordinates. | |
| virtual | ~Drawable() |
| Finalizes an instance of the Drawable class. | |
Protected Attributes inherited from Drawable
| Drawable * | nextSibling |
| Pointer to the next Drawable. | |
| Drawable * | parent |
| Pointer to this drawable's parent. | |
| Rect | rect |
| The coordinates of this Drawable, relative to its parent. | |
| bool | touchable |
| True if this drawable should receive touch events. | |
| bool | visible |
| True if this drawable should be drawn. | |
Public Functions Documentation
addDataPoint
| FORCE_INLINE_FUNCTION int16_t addDataPoint | ( | float | x , | ||
| float | y | ||||
| ) |
Adds a new data point to the end of the graph.
The part of the graph that is changed, is automatically redrawn (invalidated).
| x | The x value. |
| y | The y value. |
The index of the just added value.
addDataPoint
| FORCE_INLINE_FUNCTION int16_t addDataPoint | ( | int | x , | ||
| int | y | ||||
| ) |
Adds a new data point to the end of the graph.
The part of the graph that is changed, is automatically redrawn (invalidated).
| x | The x value. |
| y | The y value. |
The index of the just added value.
addDataPointScaled
| FORCE_INLINE_FUNCTION int16_t addDataPointScaled | ( | int | x , | ||
| int | y | ||||
| ) |
Adds a new data point to the end of the graph.
The part of the graph that is changed, is automatically redrawn (invalidated).
| x | The x value. |
| y | The y value. |
The index of the just added value. The index of the added data point.
Note
Same as addDataPoint(int, int) except the passed argument is assumed scaled.
deleteDataPoint
| FORCE_INLINE_FUNCTION int deleteDataPoint | ( | float | x | ) | |
Deletes the data point at the given x value.
| x | The x value. |
The index of the deleted value, -1 if the x coordinate was not found.
deleteDataPoint
| FORCE_INLINE_FUNCTION int deleteDataPoint | ( | int | x | ) | |
Deletes the data point at the given x value.
| x | The x value. |
The index of the deleted value, -1 if the x coordinate was not found.
deleteDataPointIndex
| FORCE_INLINE_FUNCTION int16_t deleteDataPointIndex | ( | int | index | ) | |
Same as deleteDataPoint(int) except the passed argument is the index of the value to delete.
Deletes a data point.
| index | Zero-based index of the values to delete. |
The index of the deleted value, -1 if the x coordinate was not found.
deleteDataPointScaled
| FORCE_INLINE_FUNCTION int16_t deleteDataPointScaled | ( | int | x | ) | |
Same as dalateDataPoint(int) except the passed argument is assumed scaled.
Deletes a data point scaled.
| x | The x value. |
The index of the deleted value, -1 if the x coordinate was not found.
indexToDataPointXScaled
| virtual int indexToDataPointXScaled | ( | int16_t | index | ) | |
Gets data point x coordinate scaled.
| index | Zero-based index of the value to fetch. |
The data point x coordinate scaled.
indexToDataPointXAsInt, indexToDataPointXAsFloat, indexToDataPointYScaled, indexToDataPoint, indexToDataPointScaled
Reimplements: touchgfx::AbstractDataGraph::indexToDataPointXScaled
indexToDataPointYScaled
| virtual int indexToDataPointYScaled | ( | int16_t | index | ) | |
Gets data point y coordinate scaled.
| index | Zero-based index of the value to fetch. |
The data point y coordinate scaled.
indexToDataPointYAsInt, indexToDataPointYAsFloat, indexToDataPointXScaled, indexToDataPoint, indexToDataPointScaled
Reimplements: touchgfx::AbstractDataGraph::indexToDataPointYScaled
setGraphRangeXAutoScaled
| virtual void setGraphRangeXAutoScaled | ( | bool | showYaxis , | ||
| int | margin | ||||
| ) |
Sets graph range x coordinate automatic scaled.
| showYaxis | True to show, false to hide the y axis. |
| margin | The margin. |
Reimplements: touchgfx::AbstractDataGraph::setGraphRangeXAutoScaled
setGraphRangeYAutoScaled
| virtual void setGraphRangeYAutoScaled | ( | bool | showXaxis =true, | ||
| int | margin =0 | ||||
| ) |
Sets graph range y coordinate automatic scaled.
| showXaxis | (Optional) True to show, false to hide the x axis. |
| margin | (Optional) The margin. |
Reimplements: touchgfx::AbstractDataGraph::setGraphRangeYAutoScaled
setScaleX
| virtual void setScaleX | ( | int | scale , | ||
| bool | updateData =false | ||||
| ) |
Sets a scaling factor to be multiplied on each X value added.
Since the graph only stores integer values internally, it is possible to set a scale to e.g. 1000 and make the graph work as if there are three digits of precision. The addDataPoint() will multiply the x argument with the scaling factor and store this value. Please note the addDataPointScaled, which allows adding a value that is assumed to have already been multiplied by the scaling factor. Other functions exist in a "scaled" version where the arguments are assumed to already be scaled.
By setting the scale to 1 it is possible to simply use integer values for the graph.
| scale | The scaling factor. |
| updateData | (Optional) True to update all existing x value. |
Reimplements: touchgfx::AbstractDataGraph::setScaleX
setScaleY
| virtual void setScaleY | ( | int | scale , | ||
| bool | updateData =false | ||||
| ) |
Sets a scaling factor to be multiplied on each Y value added.
Since the graph only stores integer values internally, it is possible to set a scale to e.g. 1000 and make the graph work as if there are three digits of precision. The addDataPoint() will multiply the y argument with the scaling factor and store this value. Please note the addDataPointScaled, which allows adding a value that is assumed to have already been multiplied by the scaling factor. Other functions exist in a "scaled" version where the arguments are assumed to already be scaled.
By setting the scale to 1 it is possible to simply use integer values for the graph.
| scale | The scaling factor. |
| updateData | (Optional) True to update all existing y value. |
Reimplements: touchgfx::AbstractDataGraph::setScaleY
StaticDataGraph
| StaticDataGraph | ( | int16_t | capacity , | ||
| int * | xvalues , | ||||
| int * | yvalues | ||||
| ) |
Initializes a new instance of the AbstractDataGraphWithY class.
| capacity | The capacity. |
| xvalues | Address where to store the x values of the graph. |
| yvalues | Address where to store the y values of the graph. |
Protected Functions Documentation
addValue
| virtual int16_t addValue | ( | int | xvalue , | =0 | |
| int | yvalue | =0 | |||
| ) | =0 |
Adds a value to the internal data array and keeps track of when graph points, graph axis and the entire graph needs to be redrawn (invalidated).
| xvalue | The x value to add to the array. |
| yvalue | The y value to add to the array. |
The index of the newly added value, or -1 if the value could not be added.
Reimplemented by: touchgfx::GraphData::addValue
deleteIndex
| virtual int16_t deleteIndex | ( | int | index | ) | |
Removes a value from the internal data array and keeps track of when graph points, graph axis and the entire graph needs to be redrawn (invalidated).
| index | Zero-based index of the data point to delete. |
The index of the removed value, or -1 if the value could not be removed.
deleteValue
| virtual int16_t deleteValue | ( | int | xvalue | ) | |
Removes a value from the internal data array and keeps track of when graph points, graph axis and the entire graph needs to be redrawn (invalidated).
| xvalue | The x value to remove from the array. |
The index of the removed value, or -1 if the value could not be removed.
indexToScreenXQ5
| virtual CWRUtil::Q5 indexToScreenXQ5 | ( | int16_t | index | ) | |
Gets screen x coordinate for a specific data point added to the graph.
| index | The index of the element to get the x coordinate for. |
The screen x coordinate for the specific data point.
Reimplements: touchgfx::AbstractDataGraph::indexToScreenXQ5
indexToScreenYQ5
| virtual CWRUtil::Q5 indexToScreenYQ5 | ( | int16_t | index | ) | |
Gets screen y coordinate for a specific data point added to the graph.
| index | The index of the element to get the y coordinate for. |
The screen x coordinate for the specific data point.
Reimplements: touchgfx::AbstractDataGraph::indexToScreenYQ5
indexToXAxis
| virtual int indexToXAxis | ( | const int | valueScaled , | const | |
| const int | labelScaled | const | |||
| ) | const |
Convert the given valueScaled (index) to x axis value.
| valueScaled | The value scaled. |
| labelScaled | The label scaled. |
The x axis value.
Reimplements: touchgfx::AbstractDataGraph::indexToXAxis
xScreenRangeToIndexRange
| virtual bool xScreenRangeToIndexRange | ( | int16_t | xMin , | const | |
| int16_t | xMax , | const | |||
| int16_t & | indexMin , | const | |||
| int16_t & | indexMax | const | |||
| ) | const |
Gets index range for screen x coordinate range taking the current graph range into account.
| xMin | The low screen x coordinate. |
| xMax | The high screen x coordinate. |
| indexMin | The low element index. |
| indexMax | The high element index. |
True if the range from low index to high index is legal.
Note
For internal use.
Reimplements: touchgfx::AbstractDataGraph::xScreenRangeToIndexRange
Protected Attributes Documentation
xValues
int * xValues
The x values of the graph.
yValues
int * yValues
The y values of the graph.