Bind
C++ UI toolkit for Arduino
 
Loading...
Searching...
No Matches
BindUtils.hpp
1#ifndef __BINDUTILS_H
2#define __BINDUTILS_H
3#include <stdint.h>
4#include <stddef.h>
5#include <string.h>
6#include "BindView.hpp"
7
8#define RGB(r, g, b) ((int32_t)((uint8_t)(b)) | ((int32_t)(g) << 8) | (((int32_t)(uint8_t)(r)) << 16) | 0xFF000000)
9#define RGBA(r, g, b, a) ((int32_t)((uint8_t)(b)) | ((int32_t)(g) << 8) | (((int32_t)(uint8_t)(r)) << 16) | ((int32_t)((uint8_t)(a)) << 24))
10#define rgb(r, g, b) RGB(r, g, b)
11#define rgba(r, g, b, a) RGBA(r, g, b, a)
12
13#define BIND_ID_SETUP_CMD 5
14#define BIND_ID_BUTTON 6
15#define BIND_ID_LABEL 7
16#define BIND_ID_GAUGE1 8
17#define BIND_ID_GAUGE2 9
18#define BIND_ID_KNOB 10
19#define BIND_ID_MAP_VIEW 11
20#define BIND_ID_MAP_MARKER 12
21#define BIND_ID_TOGGLE_SWITCH 13
22#define BIND_ID_SEEK_BAR 14
23#define BIND_ID_ATTITUDE_INDICATOR 15
24#define BIND_ID_HEADING_INDICATOR 16
25#define BIND_ID_JOYSTICK 17
26#define BIND_ID_GAUGE_SIMPLE 18
27#define BIND_ID_COLOR_PICKER 19
28#define BIND_ID_CHART 20
29#define BIND_ID_CHART_DATA 21
30#define BIND_ID_RECTANGLE 22
31#define BIND_ID_TERMINAL 23
32#define BIND_ID_TERMINAL_DATA 24
33#define BIND_ID_SETTINGS 25
34#define BIND_ID_TEXTINPUT 26
35#define BIND_ID_DIALOG 27
36
37
38#define MARKER_PIN_RED 0
39#define MARKER_PIN_GREEN 1
40#define MARKER_PIN_BLUE 2
41#define MARKER_PIN_YELLOW 3
42#define MARKER_CAR_RED 4
43#define MARKER_CAR_GREEN 5
44#define MARKER_CAR_BLUE 6
45#define MARKER_CAR_YELLOW 7
46#define MARKER_PLANE_RED 8
47#define MARKER_PLANE_GREEN 9
48#define MARKER_PLANE_BLUE 10
49#define MARKER_PLANE_YELLOW 11
50
51/*
52 @brief TBA
53*/
54void copyAndOffset(uint8_t *out, uint16_t *offset, const void *source, size_t num);
55void copyStringWithLength(uint8_t *out, uint16_t *offset, const char *str);
56#endif /* __BINDUTILS_H */