26static const uint32_t kMinimumHeight = 480;
28static const uint32_t kMinimumWidth = 640;
35enum class LocationEnum { kLocationFormatLongLat = 0, kLocationFormatMgrs };
37enum class ScreenMode { kModeMaintenance = 0, kModeOperational, kModeBlackout };
186enum class GvaStatusTypes { kGvaSuccess = 0, kGvaError, kGvaNetworkError, kGvaDdsError, kGvaXmlError, kGvaRtpError };
219 kSituationalAwareness = 0,
226 kBattlefieldManagementSystem,
230enum class GvaAlarmType { kAlarmWarnings, kAlarmCaution, kAlarmAdvisory };
261 return ((*state != LabelStates::kLabelDisabled) && (*state != LabelStates::kLabelHidden));
270 if ((*state != LabelStates::kLabelDisabled) && (*state != LabelStates::kLabelHidden)) {
271 *state = LabelStates::kLabelEnabledSelectedChanging;
281 if ((*state != LabelStates::kLabelDisabled) && (*state != LabelStates::kLabelHidden)) {
282 *state = LabelStates::kLabelEnabledSelected;
292 if ((*state == LabelStates::kLabelEnabledSelected) || (*state == LabelStates::kLabelEnabledSelectedChanging)) {
293 *state = LabelStates::kLabelEnabled;
303 if (*state == LabelStates::kLabelEnabledSelected) {
304 *state = LabelStates::kLabelEnabled;
314 if (*state == LabelStates::kLabelEnabledSelectedChanging) {
315 *state = LabelStates::kLabelEnabled;
357 for (
auto& label :
labels) {
368 for (
auto& label :
labels) {
379 for (
auto& label :
labels) {
436 for (
auto& label :
labels) {
447 for (
auto& label :
labels) {
458 for (
auto& label :
labels) {
477 std::array<CommonTaskKeys::Labels, 8>
labels_;
627 type_ = EventEnumType::kTouchEvent;
Class definition of the CommonTaskKeys.
Definition gva.h:465
bool visible_
The label is visible.
Definition gva.h:468
void ResetAllEnabledSelectedChanging()
Reset and label in the LabelStates::kLabelEnabledSelectedChanging state to LabelStates::kLabelEnabled...
Definition gva.h:535
std::array< CommonTaskKeys::Labels, 8 > labels_
The labels.
Definition gva.h:477
void SetEnabledEnabledChanging(int index)
Set the label to Enabled.
Definition gva.h:483
void ResetAllEnabled()
Reset all LabelStates::kLabelEnabledSelected buttons.
Definition gva.h:514
void SetDisabled(int index)
Set the label to Enabled.
Definition gva.h:492
LabelStates state_
The label state.
Definition gva.h:472
void ForceEnabledSelected(int index)
Set state to EnabledSelected regardless of current state (no checking for valid state transition).
Definition gva.h:499
void ResetAllEnabledSelected()
Reset the label from 'enabled selected' to 'enabled'.
Definition gva.h:524
std::string text_
The label text.
Definition gva.h:474
void SetEnabledSelected(int index)
Set the label to EnabledSelected.
Definition gva.h:505
Label object.
Definition gva.h:470
Class definition of the EventGvaType.
Definition gva.h:610
ResolutionType resize_
The resize dimensions.
Definition gva.h:644
GvaKeyEnum key_
Key pressed.
Definition gva.h:640
EventGvaType()=default
Construct a new Event Gva Type object.
EventGvaType(int x, int y)
Construct a new Event Gva Type object.
Definition gva.h:624
TouchType touch_
Touch event.
Definition gva.h:642
EventGvaType(GvaKeyEnum key)
Construct a new Event Gva Type object.
Definition gva.h:635
EventEnumType type_
The event type.
Definition gva.h:638
These are the labels on the left and right of the screen.
Definition gva.h:324
std::array< Labels, 8 > labels
The labels.
Definition gva.h:335
void ResetAllEnabledSelectedChanging()
Reset and label in the LabelStates::kLabelEnabledSelectedChanging state to LabelStates::kLabelEnabled...
Definition gva.h:378
void ResetAllEnabled()
Reset all LabelStates::kLabelEnabledSelected buttons.
Definition gva.h:356
void SetEnabled(int index)
Set the label to Enabled.
Definition gva.h:347
LabelStates state
The label state.
Definition gva.h:332
void ResetAllEnabledSelected()
Reset the label from 'enabled selected' to 'enabled'.
Definition gva.h:366
void SetEnabledEnabledChanging(int index)
Set the label to Enabled.
Definition gva.h:341
bool visible
The label is visible.
Definition gva.h:327
Label object.
Definition gva.h:330
Base class implementing basic label state changes and checks.
Definition gva.h:251
void ResetEnabledSelected(LabelStates *state) const
Reset the label from 'enabled selected' to 'enabled'.
Definition gva.h:302
void StateEnabledSelectedChanging(LabelStates *state) const
Set the label to EnabledSelectedChanging.
Definition gva.h:269
void ResetEnabled(LabelStates *state) const
Reset the label from 'enabled selected' to 'enabled'.
Definition gva.h:291
void StateEnabledSelected(LabelStates *state) const
Set the label to EnabledSelected.
Definition gva.h:280
bool IsActive(const LabelStates *state) const
Check if the label is active.
Definition gva.h:260
void ResetEnabledSelectedChanging(LabelStates *state) const
Reset the label from 'enabled selected changing' to 'enabled'.
Definition gva.h:313
SurfaceType
Enum for the surface types.
Definition gva.h:208
GvaFunctionEnum
This is where you define all your screens, these are just the defaults.
Definition gva.h:218
LabelModeEnum
Enum for the label mode.
Definition gva.h:39
EventEnumType
Enum for the widget types.
Definition gva.h:188
@ kDdsEvent
A DDS message.
@ kResizeEvent
A resize event.
@ kKeyEventReleased
Key event released.
@ kRedrawEvent
A redraw event.
@ kTouchEvent
Touch event.
@ kKeyEventPressed
Key event.
@ kWidgetUpdate
A widget update event.
ScreenMode
Enum for the screen mode.
Definition gva.h:37
GvaStatusTypes
HMI erro types, can be extended if needed.
Definition gva.h:186
LocationEnum
Enum for the location type.
Definition gva.h:35
GvaFunctionGroupEnum
These are the functional groups.
Definition gva.h:232
GvaKeyEnum
These are physical GVA keys around the display.
Definition gva.h:67
@ kKeyMinus
The Minus key.
@ kKeyLeftArrow
The Left Arrow key.
@ kKeyF7
The Function key F7.
@ kKeyUpArrow
The Up Arrow key.
@ kKeyKeyboard_7
Numeric key 7.
@ kKeyF16
The Function key F16.
@ kKeyF1
The Function key F1.
@ kKeyF6
The Function key F6.
@ kKeyF21
Special future use.
@ kKeyPreviousLabel
The previous label key.
@ kKeyKeyboard_4
Numeric key 4.
@ kKeyKeyboard_8
Numeric key 8.
@ kKeyNextLabel
The next label key.
@ kKeyKeyboard_2
Numeric key 2.
@ kKeyF17
The Function key F17.
@ kKeyRightArrow
The Right Arrow key.
@ kKeyF8
The Function key F8.
@ kKeyF18
The Function key F18.
@ kKeyLessThen
The Less than key.
@ kKeyKeyboard_5
Numeric key 5.
@ kKeyKeyboard_1
Numeric key 1.
@ kKeySystems
The systems key.
@ kKeyFullscreen
The key full screen.
@ kKeyKeyboard_3
Numeric key 3.
@ kKeyF14
The Function key F14.
@ kKeyBlackout
Blackout key, special to AUS-GVA screens.
@ KKeyBrightnessUp
Brightness up key.
@ kKeyDriver
The driver key.
@ kKeyF10
The Function key F10.
@ kKeySituationalAwareness
The situational awareness key.
@ kKeyDefensiveSystems
The defensive systems key.
@ kKeySpecialToRole
The special to role key.
@ kKeyF3
The Function key F3.
@ kKeyCommunications
The communications key.
@ kKeyKeyboard
The On Screen Keyboard key.
@ kKeyF4
The Function key F4.
@ kKeyGreaterThan
The Greater then key.
@ kKeyUnknown
Unknown key.
@ kKeyF2
The Function key F2.
@ kKeyF19
The Function key F19.
@ kKeyF15
The Function key F15.
@ kKeyF5
The Function key F5.
@ kKeyF13
The Function key F13.
@ kKeyKeyboard_6
Numeric key 6.
@ kKeyF20
The Function key F20.
@ kKeyF11
The Function key F11.
@ kKeyF9
The Function key F9.
@ kKeyWeapon
The weapon key.
@ kKeyBrightnessDown
Brightness down key.
@ kKeyF12
The Function key F12.
@ kKeyBattlefieldManagementSystem
The battlefield management system key.
@ kKeyKeyboard_0
Numeric key 0.
@ kKeyDownArrow
The Down Arrow key.
@ kKeyF22
Special future use.
@ kKeyKeyboard_9
Numeric key 9.
GvaAlarmType
These are the alarm types.
Definition gva.h:230
LabelStates
Enum for the label states.
Definition gva.h:41
@ kLabelDisabled
Screen is disabled.
@ kLabelEnabledSelected
Screen is enabled and selected.
@ kLabelHidden
Screen is hidden.
@ kLabelEnabledSelectedChanging
Screen is enabled and selected and changing.
@ kLabelEnabled
Screen is enabled.
LineType
Enum for the label states.
Definition gva.h:54
@ kLineDashedMedium
Line is dashed small.
@ kLineDotted
Line is dotted.
@ kLineDashedLarge
Line is dashed large.
@ kLineDashed
Line is dashed.
@ kLineSolid
Line is solid.
Struct for the colour.
Definition gva.h:553
uint32_t green
The green value.
Definition gva.h:557
uint32_t blue
The blue value.
Definition gva.h:559
uint32_t red
The red value.
Definition gva.h:555
These are at the top of the screen.
Definition gva.h:386
void SetEnabled(int index)
Set the label to Enabled.
Definition gva.h:426
std::string text
The label text.
Definition gva.h:398
void SetEnabledEnabledChanging(int index)
Set the label to Enabled.
Definition gva.h:420
void ResetAllEnabledSelected()
Reset the label from 'enabled selected' to 'enabled'.
Definition gva.h:445
bool Active(int index)
Check if the label is active.
Definition gva.h:414
LabelStates state
The label state.
Definition gva.h:392
void ResetAllEnabledSelectedChanging()
Reset and label in the LabelStates::kLabelEnabledSelectedChanging state to LabelStates::kLabelEnabled...
Definition gva.h:457
std::string toggleText1
The label text when toggled on.
Definition gva.h:400
std::array< Labels, 6 > labels
The labels text.
Definition gva.h:405
std::string toggleText2
The label text when toggled off.
Definition gva.h:402
bool toggleOn
toggle on bool
Definition gva.h:396
bool visible
The label is visible.
Definition gva.h:388
void ResetAllEnabled()
Reset all LabelStates::kLabelEnabledSelected buttons.
Definition gva.h:435
bool toggleActive
True if active.
Definition gva.h:394
Label object.
Definition gva.h:390
This holds additional information on keys.
Definition gva.h:602
GvaKeyEnum key
The key pressed.
Definition gva.h:604
LabelStates label_state
Only applicable to labels on screen F1-F20.
Definition gva.h:606
Enum for the location type.
Definition gva.h:543
float lon
The longitude value.
Definition gva.h:549
float lat
The location value.
Definition gva.h:547
LocationEnum locationFormat
The location format.
Definition gva.h:545
Struct for the point.
Definition gva.h:563
int32_t y
The Y position.
Definition gva.h:567
int32_t x
The X position.
Definition gva.h:565
Struct for the resolution.
Definition gva.h:571
uint32_t depth
The depth of the screen, colour depth.
Definition gva.h:577
uint32_t height
The height of the screen.
Definition gva.h:575
uint32_t width
The width of the screen.
Definition gva.h:573
Struct for RGB values.
Definition gva.h:581
uint32_t g
Green.
Definition gva.h:585
uint32_t b
Blue.
Definition gva.h:587
uint32_t r
Red.
Definition gva.h:583
Struct for touch events.
Definition gva.h:591
int x
The touch X position.
Definition gva.h:593
int y
The touch Y position.
Definition gva.h:595