Ne.app NeANT
The Ne.app NeANT User module of the NeANT distribution.
LWAS.h
Go to the documentation of this file.
1// SPDX-License-Identifier: Apache-2.0
2// Copyright 2026, Amlal El Mahrouss (amlal@nekernel.org)
3// Licensed under the Apache License, Version 2.0 (see LICENSE file)
4// Official repository: https://github.com/ne-app-eu/src
5
6#ifndef _NE_LWAS_SUBSYSTEM_H_
7#define _NE_LWAS_SUBSYSTEM_H_
8
9#ifndef _LWAS
10#define _LWAS (202608L)
11#endif
12
16
17#include <Ne/System/CAS.h>
19
20struct LHANDLE;
21
22#ifndef kNeAntPadLen
23#define kNeAntPadLen (8)
24#endif
25
26struct _SHARED LHANDLE _FINAL {
30 _PRIVATE SInt32 fHostID, fFlags, fKind;
32};
33
35IMPORT_C struct LHANDLE* UsrCreateWindow(VoidPtr, SizeT*);
36
38IMPORT_C Void UsrDestroyWindow(struct LHANDLE*);
39
41IMPORT_C SInt32 UsrGetVKeyUp(const SInt32);
42
44IMPORT_C SInt32 UsrGetVKeyDown(const SInt32);
45
47IMPORT_C Bool UsrIsVKey(const SInt32);
48
49typedef struct LHANDLE HLWAS;
50typedef HLWAS* PHLWAS;
51
52enum : SInt32 {
57};
58
61IMPORT_C SInt32 UsrGetInputType(Void);
62
63typedef enum {
64 /* Alphabetic */
91
92 /* Numeric row */
103
104 /* Function keys */
117
118 /* Modifiers */
127
128 /* Control */
136
137 /* Navigation */
151
152 /* Numpad */
170
171 /* Punctuation / symbols */
183
184 LWAS_VKEY_COUNT /* sentinel / array sizing */
186
187#endif // _NE_LWAS_SUBSYSTEM_H_
@ Bool
IMPORT_C struct LHANDLE * UsrCreateWindow(VoidPtr, SizeT *)
Create window function.
IMPORT_C Void UsrDestroyWindow(struct LHANDLE *)
Destroy window function.
IMPORT_C Bool UsrIsVKey(const SInt32)
Is Virtual Key?
LWAS_VKey
Definition LWAS.h:63
@ LWAS_VKEY_PAGEUP
Definition LWAS.h:146
@ LWAS_VKEY_N
Definition LWAS.h:78
@ LWAS_VKEY_LALT
Definition LWAS.h:123
@ LWAS_VKEY_NUM4
Definition LWAS.h:157
@ LWAS_VKEY_7
Definition LWAS.h:100
@ LWAS_VKEY_L
Definition LWAS.h:76
@ LWAS_VKEY_F2
Definition LWAS.h:106
@ LWAS_VKEY_F3
Definition LWAS.h:107
@ LWAS_VKEY_F9
Definition LWAS.h:113
@ LWAS_VKEY_C
Definition LWAS.h:67
@ LWAS_VKEY_D
Definition LWAS.h:68
@ LWAS_VKEY_Z
Definition LWAS.h:90
@ LWAS_VKEY_I
Definition LWAS.h:73
@ LWAS_VKEY_INSERT
Definition LWAS.h:142
@ LWAS_VKEY_G
Definition LWAS.h:71
@ LWAS_VKEY_RBRACKET
Definition LWAS.h:176
@ LWAS_VKEY_S
Definition LWAS.h:83
@ LWAS_VKEY_SPACE
Definition LWAS.h:134
@ LWAS_VKEY_ENTER
Definition LWAS.h:132
@ LWAS_VKEY_NUMPLUS
Definition LWAS.h:167
@ LWAS_VKEY_Q
Definition LWAS.h:81
@ LWAS_VKEY_NUM7
Definition LWAS.h:160
@ LWAS_VKEY_LEFT
Definition LWAS.h:140
@ LWAS_VKEY_NUM0
Definition LWAS.h:153
@ LWAS_VKEY_K
Definition LWAS.h:75
@ LWAS_VKEY_4
Definition LWAS.h:97
@ LWAS_VKEY_BACKSLASH
Definition LWAS.h:177
@ LWAS_VKEY_DELETE
Definition LWAS.h:143
@ LWAS_VKEY_V
Definition LWAS.h:86
@ LWAS_VKEY_W
Definition LWAS.h:87
@ LWAS_VKEY_NUM1
Definition LWAS.h:154
@ LWAS_VKEY_UP
Definition LWAS.h:138
@ LWAS_VKEY_F11
Definition LWAS.h:115
@ LWAS_VKEY_M
Definition LWAS.h:77
@ LWAS_VKEY_SCROLLLOCK
Definition LWAS.h:149
@ LWAS_VKEY_9
Definition LWAS.h:102
@ LWAS_VKEY_COUNT
Definition LWAS.h:184
@ LWAS_VKEY_NUM9
Definition LWAS.h:162
@ LWAS_VKEY_F12
Definition LWAS.h:116
@ LWAS_VKEY_NUMMULTIPLY
Definition LWAS.h:165
@ LWAS_VKEY_U
Definition LWAS.h:85
@ LWAS_VKEY_MINUS
Definition LWAS.h:173
@ LWAS_VKEY_SLASH
Definition LWAS.h:182
@ LWAS_VKEY_NUM2
Definition LWAS.h:155
@ LWAS_VKEY_PRINTSCR
Definition LWAS.h:148
@ LWAS_VKEY_NUMDIVIDE
Definition LWAS.h:164
@ LWAS_VKEY_F7
Definition LWAS.h:111
@ LWAS_VKEY_B
Definition LWAS.h:66
@ LWAS_VKEY_END
Definition LWAS.h:145
@ LWAS_VKEY_NUM5
Definition LWAS.h:158
@ LWAS_VKEY_NUM6
Definition LWAS.h:159
@ LWAS_VKEY_GRAVE
Definition LWAS.h:172
@ LWAS_VKEY_F5
Definition LWAS.h:109
@ LWAS_VKEY_TAB
Definition LWAS.h:130
@ LWAS_VKEY_0
Definition LWAS.h:93
@ LWAS_VKEY_NUMLOCK
Definition LWAS.h:163
@ LWAS_VKEY_R
Definition LWAS.h:82
@ LWAS_VKEY_RALT
Definition LWAS.h:124
@ LWAS_VKEY_LSHIFT
Definition LWAS.h:119
@ LWAS_VKEY_1
Definition LWAS.h:94
@ LWAS_VKEY_COMMA
Definition LWAS.h:180
@ LWAS_VKEY_PAUSE
Definition LWAS.h:150
@ LWAS_VKEY_RIGHT
Definition LWAS.h:141
@ LWAS_VKEY_LCTRL
Definition LWAS.h:121
@ LWAS_VKEY_E
Definition LWAS.h:69
@ LWAS_VKEY_APOSTROPHE
Definition LWAS.h:179
@ LWAS_VKEY_NUMDECIMAL
Definition LWAS.h:169
@ LWAS_VKEY_SEMICOLON
Definition LWAS.h:178
@ LWAS_VKEY_H
Definition LWAS.h:72
@ LWAS_VKEY_A
Definition LWAS.h:65
@ LWAS_VKEY_P
Definition LWAS.h:80
@ LWAS_VKEY_NUM8
Definition LWAS.h:161
@ LWAS_VKEY_2
Definition LWAS.h:95
@ LWAS_VKEY_3
Definition LWAS.h:96
@ LWAS_VKEY_LBRACKET
Definition LWAS.h:175
@ LWAS_VKEY_F6
Definition LWAS.h:110
@ LWAS_VKEY_LSUPER
Definition LWAS.h:125
@ LWAS_VKEY_ESCAPE
Definition LWAS.h:129
@ LWAS_VKEY_PERIOD
Definition LWAS.h:181
@ LWAS_VKEY_RSHIFT
Definition LWAS.h:120
@ LWAS_VKEY_X
Definition LWAS.h:88
@ LWAS_VKEY_5
Definition LWAS.h:98
@ LWAS_VKEY_F
Definition LWAS.h:70
@ LWAS_VKEY_F8
Definition LWAS.h:112
@ LWAS_VKEY_NUMMINUS
Definition LWAS.h:166
@ LWAS_VKEY_T
Definition LWAS.h:84
@ LWAS_VKEY_HOME
Definition LWAS.h:144
@ LWAS_VKEY_RSUPER
Definition LWAS.h:126
@ LWAS_VKEY_F4
Definition LWAS.h:108
@ LWAS_VKEY_DOWN
Definition LWAS.h:139
@ LWAS_VKEY_RCTRL
Definition LWAS.h:122
@ LWAS_VKEY_PAGEDOWN
Definition LWAS.h:147
@ LWAS_VKEY_MENU
Definition LWAS.h:135
@ LWAS_VKEY_F10
Definition LWAS.h:114
@ LWAS_VKEY_J
Definition LWAS.h:74
@ LWAS_VKEY_6
Definition LWAS.h:99
@ LWAS_VKEY_NUM3
Definition LWAS.h:156
@ LWAS_VKEY_CAPSLOCK
Definition LWAS.h:131
@ LWAS_VKEY_EQUAL
Definition LWAS.h:174
@ LWAS_VKEY_BACKSPACE
Definition LWAS.h:133
@ LWAS_VKEY_Y
Definition LWAS.h:89
@ LWAS_VKEY_8
Definition LWAS.h:101
@ LWAS_VKEY_F1
Definition LWAS.h:105
@ LWAS_VKEY_O
Definition LWAS.h:79
@ LWAS_VKEY_NUMENTER
Definition LWAS.h:168
IMPORT_C SInt32 UsrGetVKeyUp(const SInt32)
Is Virtual Key Up?
struct LHANDLE HLWAS
Definition LWAS.h:49
HLWAS * PHLWAS
Definition LWAS.h:50
@ kUserInputInvalid
Definition LWAS.h:53
@ kUserInputKeyboard
Definition LWAS.h:55
@ kUserInputTouchInput
Definition LWAS.h:56
@ kUserInputJoystick
Definition LWAS.h:54
#define kNeAntPadLen
Definition LWAS.h:23
IMPORT_C SInt32 UsrGetInputType(Void)
Grabs the input type currently connected as the main input method.
IMPORT_C SInt32 UsrGetVKeyDown(const SInt32)
Is Virtual Key Down?
#define _SHARED
Shared attribute for the host pattern.
Definition Config.h:20
#define _PRIVATE
Private attribute for the host pattern.
Definition Config.h:25
The Subsystem Information for Program Loader.
Definition Config.h:46
_PRIVATE SInt32 fHostID
Definition LWAS.h:30
_PRIVATE Ref fHandle
Definition LWAS.h:27
_PRIVATE SInt64 fMagic
Definition LWAS.h:29