9#ifndef PHYPHOX_BLE_CORE_ELEMENTDATA_H
10#define PHYPHOX_BLE_CORE_ELEMENTDATA_H
69 const char*
text =
nullptr;
78 const char*
unit =
nullptr;
#define PHYPHOX_BLE_SENSOR_COMPONENTS
Components a phone sensor can deliver: x, y, z, abs, accuracy, t — the format has six.
Definition Config.h:35
Definition ChannelStore.h:11
Align
Definition ElementData.h:29
@ AL_CENTER
Definition ElementData.h:29
@ AL_RIGHT
Definition ElementData.h:29
@ ALIGN_NONE
Definition ElementData.h:29
@ AL_LEFT
Definition ElementData.h:29
ElementType
Definition ElementData.h:22
@ EL_VALUE
Definition ElementData.h:23
@ EL_NONE
Definition ElementData.h:23
@ EL_EDIT
Definition ElementData.h:23
@ EL_BUTTON
Definition ElementData.h:23
@ EL_GRAPH
Definition ElementData.h:23
@ EL_DROPDOWN
Definition ElementData.h:23
@ EL_SLIDER
Definition ElementData.h:23
@ EL_TOGGLE
Definition ElementData.h:23
@ EL_SEPARATOR
Definition ElementData.h:24
@ EL_INFO
Definition ElementData.h:24
Style
Definition ElementData.h:27
@ ST_VBARS
Definition ElementData.h:27
@ STYLE_NONE
Definition ElementData.h:27
@ ST_MAP
Definition ElementData.h:27
@ ST_DOTS
Definition ElementData.h:27
@ ST_LINES
Definition ElementData.h:27
@ ST_HBARS
Definition ElementData.h:27
Layout
Definition ElementData.h:28
@ LY_FIXED
Definition ElementData.h:28
@ LAYOUT_NONE
Definition ElementData.h:28
@ LY_EXTEND
Definition ElementData.h:28
@ LY_AUTO
Definition ElementData.h:28
const char * Color
A colour is six hex digits, validated by the setter; nullptr means "not set".
Definition ElementData.h:32
SensorComponent
Definition ElementData.h:191
@ COMP_X
Definition ElementData.h:191
@ COMP_Y
Definition ElementData.h:191
@ COMP_NONE
Definition ElementData.h:191
@ COMP_ABS
Definition ElementData.h:191
@ COMP_T
Definition ElementData.h:191
@ COMP_ACCURACY
Definition ElementData.h:191
@ COMP_Z
Definition ElementData.h:191
void(* ChangeCallback)(float value)
Callback types. Plain function pointers (captureless lambdas convert), never std::function.
Definition ElementData.h:19
void(* PressCallback)()
Definition ElementData.h:20
Definition ElementData.h:116
InputCommon in
Definition ElementData.h:117
Color color
Definition ElementData.h:120
uint8_t optionCount
Definition ElementData.h:119
const MapEntry * options
Definition ElementData.h:118
Definition ElementData.h:98
bool decimalSet
Definition ElementData.h:102
bool minSet
Definition ElementData.h:103
float factor
Definition ElementData.h:104
float min
Definition ElementData.h:103
bool signedSet
Definition ElementData.h:102
InputCommon in
Definition ElementData.h:99
bool isDecimal
Definition ElementData.h:101
float max
Definition ElementData.h:103
bool maxSet
Definition ElementData.h:103
bool isSigned
Definition ElementData.h:101
const char * unit
Definition ElementData.h:100
One view element. label and xmlAttribute are common to all; the union holds the rest.
Definition ElementData.h:146
ButtonData button
Definition ElementData.h:159
EditData edit
Definition ElementData.h:155
GraphData graph
Definition ElementData.h:153
SliderData slider
Definition ElementData.h:156
ValueData value
Definition ElementData.h:154
void init(ElementType t)
Activate the union member for t with its defaults (the builders call this).
const char * label
Definition ElementData.h:148
ElementData()
Definition ElementData.h:163
ToggleData toggle
Definition ElementData.h:158
const InputCommon * input() const
DropdownData dropdown
Definition ElementData.h:157
const char * xmlAttribute
raw attribute text appended verbatim (escape hatch)
Definition ElementData.h:149
uint8_t visibilityChannel
input channel whose last value shows/hides the element
Definition ElementData.h:150
InputCommon * input()
The input-channel part, if this element has one; nullptr otherwise.
ErrorRecord error
Definition ElementData.h:151
ElementType type
Definition ElementData.h:147
SeparatorData separator
Definition ElementData.h:161
InfoData info
Definition ElementData.h:160
The first error recorded on an element, with the setter it came from.
Definition Errors.h:26
The whole experiment.
Definition ElementData.h:211
const char * description
Definition ElementData.h:214
uint8_t sensorCount
Definition ElementData.h:224
ErrorRecord error
experiment-level errors (capacity, channel conflicts)
Definition ElementData.h:226
const char * category
Definition ElementData.h:213
bool subscribeOnStart
Definition ElementData.h:217
Color color
Definition ElementData.h:215
uint8_t exportSetCount
Definition ElementData.h:222
uint8_t viewCount
Definition ElementData.h:220
const ViewData * views
Definition ElementData.h:219
bool resendUnchanged
D14: drop the change detector, write inputs every cycle.
Definition ElementData.h:218
const ExportSetData * exportSets
Definition ElementData.h:221
const SensorData * sensors
Definition ElementData.h:223
uint8_t exportDataCount_
internal: entries placed so far during the copy
Definition ElementData.h:225
const char * title
Definition ElementData.h:212
uint16_t repeating
samples per data notification for the array write (0 = off)
Definition ElementData.h:216
Definition ElementData.h:178
uint8_t channel
data channel (0 = time)
Definition ElementData.h:181
const char * xmlAttribute
Definition ElementData.h:180
const char * label
Definition ElementData.h:179
Definition ElementData.h:184
const ExportDataData * entries
Definition ElementData.h:187
const char * label
Definition ElementData.h:185
const char * xmlAttribute
Definition ElementData.h:186
uint8_t entryCount
Definition ElementData.h:188
Definition ElementData.h:44
const char * unitX
Definition ElementData.h:47
Layout scaleMaxX
Definition ElementData.h:53
int8_t yPrecision
Definition ElementData.h:51
float maxY
Definition ElementData.h:52
float minX
Definition ElementData.h:52
Layout scaleMinX
Definition ElementData.h:53
Layout scaleMinY
Definition ElementData.h:53
uint8_t subgraphCount
Definition ElementData.h:62
float maxX
Definition ElementData.h:52
uint16_t flags
Definition ElementData.h:59
Layout scaleMaxY
Definition ElementData.h:53
const char * unitYperX
Definition ElementData.h:49
const char * unitY
Definition ElementData.h:48
Flag
Definition ElementData.h:56
@ F_PARTIAL_UPDATE
Definition ElementData.h:57
@ F_FOLLOW_X
Definition ElementData.h:57
@ F_HIDE_TIME_MARKERS
Definition ElementData.h:58
@ F_LINEAR_TIME
Definition ElementData.h:56
@ F_SUPPRESS_SCI
Definition ElementData.h:58
@ F_TIME_ON_X
Definition ElementData.h:56
@ F_LOG_Y
Definition ElementData.h:57
@ F_SYSTEM_TIME
Definition ElementData.h:56
@ F_TIME_ON_Y
Definition ElementData.h:56
@ F_LOG_X
Definition ElementData.h:57
@ F_SHOW_COLOR_SCALE
Definition ElementData.h:58
float aspectRatio
0 = not set
Definition ElementData.h:54
uint16_t flagsSet
Definition ElementData.h:60
const SubgraphData * subgraphs
the first curve, then the added ones
Definition ElementData.h:61
int8_t xPrecision
-1 = not set
Definition ElementData.h:50
const char * labelY
Definition ElementData.h:46
const char * labelX
Definition ElementData.h:45
float minY
Definition ElementData.h:52
Definition ElementData.h:133
bool italic
Definition ElementData.h:137
Align align
Definition ElementData.h:136
bool bold
Definition ElementData.h:137
Color color
Definition ElementData.h:134
float size
Definition ElementData.h:135
A value map entry (text shown while min <= value <= max) or a dropdown option (text + value).
Definition ElementData.h:68
@ HAS_MAX
Definition ElementData.h:72
@ HAS_MIN
Definition ElementData.h:72
float b
Definition ElementData.h:71
uint8_t flags
Definition ElementData.h:73
float a
Definition ElementData.h:70
const char * text
Definition ElementData.h:69
Definition ElementData.h:193
const char * rateStrategy
auto | request | generate | limit (format 1.14)
Definition ElementData.h:198
bool averageSet
Definition ElementData.h:197
const char * type
a phyphox sensor type string (SENSOR_* in phyphoxBle.h)
Definition ElementData.h:194
uint8_t channels[PHYPHOX_BLE_SENSOR_COMPONENTS]
input channel each component lands in
Definition ElementData.h:203
uint16_t stride
use every n-th reading; 0 = not set
Definition ElementData.h:199
uint16_t rate
0 = not set (1.x emitted 80 by default; 2.0 emits nothing = fastest)
Definition ElementData.h:196
int32_t typeFilter
Android sensor type constant; −1 = not set (1.19)
Definition ElementData.h:201
const char * xmlAttribute
Definition ElementData.h:195
uint8_t componentCount
Definition ElementData.h:204
SensorComponent components[PHYPHOX_BLE_SENSOR_COMPONENTS]
Definition ElementData.h:202
const char * nameFilter
for type "custom" or to pick one of several sensors (1.19)
Definition ElementData.h:200
bool average
Definition ElementData.h:197
ErrorRecord error
Definition ElementData.h:205
Definition ElementData.h:140
Color color
Definition ElementData.h:142
float height
0 = not set (format default 0.1)
Definition ElementData.h:141
Definition ElementData.h:107
bool showValueSet
Definition ElementData.h:112
float minValue
Definition ElementData.h:109
bool stepSet
Definition ElementData.h:110
bool minSet
Definition ElementData.h:110
bool maxSet
Definition ElementData.h:110
InputCommon in
Definition ElementData.h:108
float stepSize
Definition ElementData.h:109
float maxValue
Definition ElementData.h:109
Color color
Definition ElementData.h:113
int8_t precision
Definition ElementData.h:111
bool showValue
Definition ElementData.h:112
One curve of a graph. Channel 0 is the phone's arrival time, 1…5 the data channels.
Definition ElementData.h:35
Style style
Definition ElementData.h:38
Color color
Definition ElementData.h:39
uint8_t channelX
Definition ElementData.h:36
float lineWidth
0 = not set
Definition ElementData.h:40
bool active
Definition ElementData.h:41
uint8_t channelY
Definition ElementData.h:37
Definition ElementData.h:123
InputCommon in
Definition ElementData.h:124
Definition ElementData.h:76
const char * unit
Definition ElementData.h:78
uint8_t channel
data channel shown (1.x default was CH3; 2.0 defaults to 1)
Definition ElementData.h:77
float factor
0 = not set (format default 1.0)
Definition ElementData.h:82
uint8_t mapCount
Definition ElementData.h:85
int8_t precision
Definition ElementData.h:80
Color color
Definition ElementData.h:79
const MapEntry * maps
Definition ElementData.h:84
float size
Definition ElementData.h:81
bool scientific
Definition ElementData.h:83
Definition ElementData.h:171
const ElementData * elements
Definition ElementData.h:174
const char * xmlAttribute
Definition ElementData.h:173
const char * label
Definition ElementData.h:172
uint8_t elementCount
Definition ElementData.h:175