ohos_input_sys/input_manager/input_manager_ffi.rs
1// automatically generated by rust-bindgen 0.71.1
2
3#![allow(non_upper_case_globals)]
4#![allow(non_camel_case_types)]
5#![allow(non_snake_case)]
6use crate::axis_type::{InputEvent_AxisAction, InputEvent_AxisEventType, InputEvent_AxisType};
7#[cfg(feature = "api-14")]
8use ohos_sys_opaque_types::Input_Hotkey;
9use ohos_sys_opaque_types::{
10 Input_AxisEvent, Input_KeyEvent, Input_KeyState, Input_MouseEvent, Input_TouchEvent,
11};
12
13#[cfg(feature = "api-12")]
14#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
15impl Input_KeyStateAction {
16 /// Default
17 pub const KEY_DEFAULT: Input_KeyStateAction = Input_KeyStateAction(-1);
18 /// Pressing of a key
19 pub const KEY_PRESSED: Input_KeyStateAction = Input_KeyStateAction(0);
20 /// Release of a key
21 pub const KEY_RELEASED: Input_KeyStateAction = Input_KeyStateAction(1);
22 /// Key switch enabled
23 pub const KEY_SWITCH_ON: Input_KeyStateAction = Input_KeyStateAction(2);
24 /// Key switch disabled
25 pub const KEY_SWITCH_OFF: Input_KeyStateAction = Input_KeyStateAction(3);
26}
27#[repr(transparent)]
28/// Enumerated values of key event action.
29///
30///
31/// Available since API-level: 12
32#[cfg(feature = "api-12")]
33#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
34#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
35pub struct Input_KeyStateAction(pub ::core::ffi::c_int);
36#[cfg(feature = "api-12")]
37#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
38impl Input_KeyEventAction {
39 /// Cancellation of a key action.
40 pub const KEY_ACTION_CANCEL: Input_KeyEventAction = Input_KeyEventAction(0);
41 /// Pressing of a key.
42 pub const KEY_ACTION_DOWN: Input_KeyEventAction = Input_KeyEventAction(1);
43 /// Release of a key.
44 pub const KEY_ACTION_UP: Input_KeyEventAction = Input_KeyEventAction(2);
45}
46#[repr(transparent)]
47/// Enumerates key event types.
48///
49///
50/// Available since API-level: 12
51#[cfg(feature = "api-12")]
52#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
53#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
54pub struct Input_KeyEventAction(pub ::core::ffi::c_uint);
55#[cfg(feature = "api-12")]
56#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
57impl Input_MouseEventAction {
58 /// Cancel.
59 pub const MOUSE_ACTION_CANCEL: Input_MouseEventAction = Input_MouseEventAction(0);
60 /// Moving of the mouse pointer.
61 pub const MOUSE_ACTION_MOVE: Input_MouseEventAction = Input_MouseEventAction(1);
62 /// Pressing down of the mouse.
63 pub const MOUSE_ACTION_BUTTON_DOWN: Input_MouseEventAction = Input_MouseEventAction(2);
64 /// Lifting of the mouse button.
65 pub const MOUSE_ACTION_BUTTON_UP: Input_MouseEventAction = Input_MouseEventAction(3);
66 /// Beginning of the mouse axis event
67 pub const MOUSE_ACTION_AXIS_BEGIN: Input_MouseEventAction = Input_MouseEventAction(4);
68 /// Updating of the mouse axis event
69 pub const MOUSE_ACTION_AXIS_UPDATE: Input_MouseEventAction = Input_MouseEventAction(5);
70 /// End of the mouse axis event
71 pub const MOUSE_ACTION_AXIS_END: Input_MouseEventAction = Input_MouseEventAction(6);
72}
73#[repr(transparent)]
74/// Enumerated values of mouse event action.
75///
76///
77/// Available since API-level: 12
78#[cfg(feature = "api-12")]
79#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
80#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
81pub struct Input_MouseEventAction(pub ::core::ffi::c_uint);
82#[cfg(feature = "api-12")]
83#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
84impl InputEvent_MouseAxis {
85 /// Vertical scroll axis
86 pub const MOUSE_AXIS_SCROLL_VERTICAL: InputEvent_MouseAxis = InputEvent_MouseAxis(0);
87 /// Horizontal scroll axis
88 pub const MOUSE_AXIS_SCROLL_HORIZONTAL: InputEvent_MouseAxis = InputEvent_MouseAxis(1);
89}
90#[repr(transparent)]
91/// Mouse axis types.
92///
93///
94/// Available since API-level: 12
95#[cfg(feature = "api-12")]
96#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
97#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
98pub struct InputEvent_MouseAxis(pub ::core::ffi::c_uint);
99#[cfg(feature = "api-12")]
100#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
101impl Input_MouseEventButton {
102 /// Invalid button
103 pub const MOUSE_BUTTON_NONE: Input_MouseEventButton = Input_MouseEventButton(-1);
104 /// Left button on the mouse.
105 pub const MOUSE_BUTTON_LEFT: Input_MouseEventButton = Input_MouseEventButton(0);
106 /// Middle button on the mouse.
107 pub const MOUSE_BUTTON_MIDDLE: Input_MouseEventButton = Input_MouseEventButton(1);
108 /// Right button on the mouse.
109 pub const MOUSE_BUTTON_RIGHT: Input_MouseEventButton = Input_MouseEventButton(2);
110 /// Forward button on the mouse.
111 pub const MOUSE_BUTTON_FORWARD: Input_MouseEventButton = Input_MouseEventButton(3);
112 /// Back button on the mouse.
113 pub const MOUSE_BUTTON_BACK: Input_MouseEventButton = Input_MouseEventButton(4);
114}
115#[repr(transparent)]
116/// Enumerated values of mouse event button.
117///
118///
119/// Available since API-level: 12
120#[cfg(feature = "api-12")]
121#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
122#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
123pub struct Input_MouseEventButton(pub ::core::ffi::c_int);
124#[cfg(feature = "api-12")]
125#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
126impl Input_TouchEventAction {
127 /// Touch cancelled.
128 pub const TOUCH_ACTION_CANCEL: Input_TouchEventAction = Input_TouchEventAction(0);
129 /// Touch pressed.
130 pub const TOUCH_ACTION_DOWN: Input_TouchEventAction = Input_TouchEventAction(1);
131 /// Touch moved.
132 pub const TOUCH_ACTION_MOVE: Input_TouchEventAction = Input_TouchEventAction(2);
133 /// Touch lifted.
134 pub const TOUCH_ACTION_UP: Input_TouchEventAction = Input_TouchEventAction(3);
135}
136#[repr(transparent)]
137/// Enumerated values of touch event action.
138///
139///
140/// Available since API-level: 12
141#[cfg(feature = "api-12")]
142#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
143#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
144pub struct Input_TouchEventAction(pub ::core::ffi::c_uint);
145#[cfg(feature = "api-13")]
146#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
147impl Input_KeyboardType {
148 /// Keyboard without keys
149 pub const KEYBOARD_TYPE_NONE: Input_KeyboardType = Input_KeyboardType(0);
150 /// Keyboard with unknown keys
151 pub const KEYBOARD_TYPE_UNKNOWN: Input_KeyboardType = Input_KeyboardType(1);
152 /// Full keyboard
153 pub const KEYBOARD_TYPE_ALPHABETIC: Input_KeyboardType = Input_KeyboardType(2);
154 /// Digital keyboard
155 pub const KEYBOARD_TYPE_DIGITAL: Input_KeyboardType = Input_KeyboardType(3);
156 /// Stylus
157 pub const KEYBOARD_TYPE_STYLUS: Input_KeyboardType = Input_KeyboardType(4);
158 /// Remote control
159 pub const KEYBOARD_TYPE_REMOTE_CONTROL: Input_KeyboardType = Input_KeyboardType(5);
160}
161#[repr(transparent)]
162/// Enumerates keyboard types.
163///
164///
165/// Available since API-level: 13
166#[cfg(feature = "api-13")]
167#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
168#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
169pub struct Input_KeyboardType(pub ::core::ffi::c_uint);
170#[cfg(feature = "api-12")]
171#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
172impl InputEvent_SourceType {
173 /// Indicates that the input source generates events similar to mouse cursor movement,
174 /// button press and release, and wheel scrolling.
175 ///
176 ///
177 /// Available since API-level: 12
178 #[cfg(feature = "api-12")]
179 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
180 pub const SOURCE_TYPE_MOUSE: InputEvent_SourceType = InputEvent_SourceType(1);
181 /// Indicates that the input source generates a touchscreen multi-touch event.
182 ///
183 ///
184 /// Available since API-level: 12
185 #[cfg(feature = "api-12")]
186 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
187 pub const SOURCE_TYPE_TOUCHSCREEN: InputEvent_SourceType = InputEvent_SourceType(2);
188 /// Indicates that the input source generates a touchpad multi-touch event.
189 ///
190 ///
191 /// Available since API-level: 12
192 #[cfg(feature = "api-12")]
193 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
194 pub const SOURCE_TYPE_TOUCHPAD: InputEvent_SourceType = InputEvent_SourceType(3);
195}
196#[repr(transparent)]
197/// Enumerates event source types.
198///
199///
200/// Available since API-level: 12
201#[cfg(feature = "api-12")]
202#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
203#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
204pub struct InputEvent_SourceType(pub ::core::ffi::c_uint);
205pub type Input_Result = Result<(), InputErrorCode>;
206#[cfg(feature = "api-12")]
207#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
208impl InputErrorCode {
209 /// Permission verification failed
210 pub const PERMISSION_DENIED: InputErrorCode =
211 InputErrorCode(const { core::num::NonZero::new(201).unwrap() });
212 /// Non-system application
213 pub const NOT_SYSTEM_APPLICATION: InputErrorCode =
214 InputErrorCode(const { core::num::NonZero::new(202).unwrap() });
215 /// Parameter check failed
216 pub const PARAMETER_ERROR: InputErrorCode =
217 InputErrorCode(const { core::num::NonZero::new(401).unwrap() });
218 /// Device not support
219 pub const DEVICE_NOT_SUPPORTED: InputErrorCode =
220 InputErrorCode(const { core::num::NonZero::new(801).unwrap() });
221 /// Service error
222 pub const SERVICE_EXCEPTION: InputErrorCode =
223 InputErrorCode(const { core::num::NonZero::new(3800001).unwrap() });
224 /// Interceptor repeatedly created for an application
225 pub const REPEAT_INTERCEPTOR: InputErrorCode =
226 InputErrorCode(const { core::num::NonZero::new(4200001).unwrap() });
227 /// Already occupied by the system
228 ///
229 /// Available since API-level: 14
230 #[cfg(feature = "api-14")]
231 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
232 pub const OCCUPIED_BY_SYSTEM: InputErrorCode =
233 InputErrorCode(const { core::num::NonZero::new(4200002).unwrap() });
234 /// Already occupied by the other
235 ///
236 /// Available since API-level: 14
237 #[cfg(feature = "api-14")]
238 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
239 pub const OCCUPIED_BY_OTHER: InputErrorCode =
240 InputErrorCode(const { core::num::NonZero::new(4200003).unwrap() });
241 /// No keyboard device connected
242 ///
243 /// Available since API-level: 15
244 #[cfg(feature = "api-15")]
245 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
246 pub const KEYBOARD_DEVICE_NOT_EXIST: InputErrorCode =
247 InputErrorCode(const { core::num::NonZero::new(3900002).unwrap() });
248}
249#[repr(transparent)]
250/// Enumerates error codes.
251///
252///
253/// Available since API-level: 12
254#[cfg(feature = "api-12")]
255#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
256#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
257pub struct InputErrorCode(pub core::num::NonZero<::core::ffi::c_uint>);
258/// Callback used to return shortcut key events.
259///
260/// Available since API-level: 14
261#[cfg(feature = "api-14")]
262#[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
263pub type Input_HotkeyCallback =
264 ::core::option::Option<unsafe extern "C" fn(hotkey: *mut Input_Hotkey)>;
265/// Represents information about the input device.
266///
267///
268/// Available since API-level: 13
269#[cfg(feature = "api-13")]
270#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
271#[repr(C)]
272pub struct Input_DeviceInfo {
273 _unused: [u8; 0],
274}
275/// Defines a lifecycle callback for keyEvent. If the callback is triggered, keyEvent will be destroyed.
276///
277/// # Arguments
278///
279/// * `keyEvent` - Key event object.
280///
281/// Available since API-level: 12
282#[cfg(feature = "api-12")]
283#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
284pub type Input_KeyEventCallback =
285 ::core::option::Option<unsafe extern "C" fn(keyEvent: *const Input_KeyEvent)>;
286/// Defines a lifecycle callback for mouseEvent. If the callback is triggered, mouseEvent will be destroyed.
287///
288/// # Arguments
289///
290/// * `mouseEvent` - Mouse event object.
291///
292/// Available since API-level: 12
293#[cfg(feature = "api-12")]
294#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
295pub type Input_MouseEventCallback =
296 ::core::option::Option<unsafe extern "C" fn(mouseEvent: *const Input_MouseEvent)>;
297/// Defines a lifecycle callback for touchEvent. If the callback is triggered, touchEvent will be destroyed.
298///
299/// # Arguments
300///
301/// * `touchEvent` - Touch event object.
302///
303/// Available since API-level: 12
304#[cfg(feature = "api-12")]
305#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
306pub type Input_TouchEventCallback =
307 ::core::option::Option<unsafe extern "C" fn(touchEvent: *const Input_TouchEvent)>;
308/// Defines a lifecycle callback for axisEvent. If the callback is triggered, axisEvent will be destroyed.
309///
310/// # Arguments
311///
312/// * `axisEvent` - Axis event object.
313///
314/// Available since API-level: 12
315#[cfg(feature = "api-12")]
316#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
317pub type Input_AxisEventCallback =
318 ::core::option::Option<unsafe extern "C" fn(axisEvent: *const Input_AxisEvent)>;
319/// Defines the callback for device addition events.
320/// # Arguments
321///
322/// * `deviceId` - Device ID.
323///
324/// Available since API-level: 13
325#[cfg(feature = "api-13")]
326#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
327pub type Input_DeviceAddedCallback = ::core::option::Option<unsafe extern "C" fn(deviceId: i32)>;
328/// Defines the callback for device removal events.
329/// # Arguments
330///
331/// * `deviceId` - Device ID.
332///
333/// Available since API-level: 13
334#[cfg(feature = "api-13")]
335#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
336pub type Input_DeviceRemovedCallback = ::core::option::Option<unsafe extern "C" fn(deviceId: i32)>;
337/// Defines the structure for the interceptor of event callbacks,
338/// including mouseCallback, touchCallback, and axisCallback.
339///
340/// Available since API-level: 12
341#[cfg(feature = "api-12")]
342#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
343#[repr(C)]
344#[derive(Debug, Copy, Clone)]
345pub struct Input_InterceptorEventCallback {
346 /// Defines a lifecycle callback for **mouseEvent**.
347 pub mouseCallback: Input_MouseEventCallback,
348 /// Defines a lifecycle callback for **touchEvent**.
349 pub touchCallback: Input_TouchEventCallback,
350 /// Defines a lifecycle callback for **axisEvent**.
351 pub axisCallback: Input_AxisEventCallback,
352}
353/// Defines a listener for device insertion and removal events.
354///
355/// Available since API-level: 13
356#[cfg(feature = "api-13")]
357#[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
358#[repr(C)]
359#[derive(Debug, Copy, Clone)]
360pub struct Input_DeviceListener {
361 /// Callback for device addition events
362 pub deviceAddedCallback: Input_DeviceAddedCallback,
363 /// Callback for device removal events
364 pub deviceRemovedCallback: Input_DeviceRemovedCallback,
365}
366/// Defines event interceptor options.
367///
368/// Available since API-level: 12
369#[cfg(feature = "api-12")]
370#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
371#[repr(C)]
372pub struct Input_InterceptorOptions {
373 _unused: [u8; 0],
374}
375extern "C" {
376 /// Queries the key state.
377 ///
378 /// # Arguments
379 ///
380 /// * `keyState` - Key state.
381 ///
382 /// # Returns
383 ///
384 /// * OH_Input_GetKeyState function result code.
385 /// [`INPUT_SUCCESS`] get KeyState success.
386 ///
387 /// [`INPUT_PARAMETER_ERROR`] keyCode is invalid.
388 ///
389 ///
390 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
391 ///
392 /// Available since API-level: 12
393 #[cfg(feature = "api-12")]
394 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
395 pub fn OH_Input_GetKeyState(keyState: *mut Input_KeyState) -> Input_Result;
396 /// Creates a key status enumeration object.
397 ///
398 ///
399 /// # Returns
400 ///
401 /// * Returns an [`Input_KeyState`] pointer object if the operation is successful.
402 /// Otherwise, a null pointer is returned. The possible cause is memory allocation failure.
403 ///
404 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
405 ///
406 /// Available since API-level: 12
407 #[cfg(feature = "api-12")]
408 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
409 pub fn OH_Input_CreateKeyState() -> *mut Input_KeyState;
410 /// Destroys a key status enumeration object.
411 ///
412 /// # Arguments
413 ///
414 /// * `keyState` - Key status enumeration object.
415 ///
416 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
417 ///
418 /// Available since API-level: 12
419 #[cfg(feature = "api-12")]
420 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
421 pub fn OH_Input_DestroyKeyState(keyState: *mut *mut Input_KeyState);
422 /// Sets the key value of a key status enumeration object.
423 ///
424 /// # Arguments
425 ///
426 /// * `keyState` - Key status enumeration object.
427 ///
428 /// * `keyCode` - Key value of the key status enumeration object.
429 ///
430 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
431 ///
432 /// Available since API-level: 12
433 #[cfg(feature = "api-12")]
434 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
435 pub fn OH_Input_SetKeyCode(keyState: *mut Input_KeyState, keyCode: i32);
436 /// Obtains the key value of a key status enumeration object.
437 ///
438 /// # Arguments
439 ///
440 /// * `keyState` - Key status enumeration object.
441 ///
442 /// # Returns
443 ///
444 /// * Key value of the key status enumeration object.
445 ///
446 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
447 ///
448 /// Available since API-level: 12
449 #[cfg(feature = "api-12")]
450 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
451 pub fn OH_Input_GetKeyCode(keyState: *const Input_KeyState) -> i32;
452 /// Sets whether the key specific to a key status enumeration object is pressed.
453 ///
454 /// # Arguments
455 ///
456 /// * `keyState` - Key status enumeration object.
457 ///
458 /// * `keyAction` - Whether the key is pressed.
459 ///
460 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
461 ///
462 /// Available since API-level: 12
463 #[cfg(feature = "api-12")]
464 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
465 pub fn OH_Input_SetKeyPressed(keyState: *mut Input_KeyState, keyAction: i32);
466 /// Checks whether the key specific to a key status enumeration object is pressed.
467 ///
468 /// # Arguments
469 ///
470 /// * `keyState` - Key status enumeration object.
471 ///
472 /// # Returns
473 ///
474 /// * Key pressing status of the key status enumeration object.
475 ///
476 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
477 ///
478 /// Available since API-level: 12
479 #[cfg(feature = "api-12")]
480 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
481 pub fn OH_Input_GetKeyPressed(keyState: *const Input_KeyState) -> i32;
482 /// Sets the key switch of the key status enumeration object.
483 ///
484 /// # Arguments
485 ///
486 /// * `keyState` - Key status enumeration object.
487 ///
488 /// * `keySwitch` - Key switch of the key status enumeration object.
489 ///
490 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
491 ///
492 /// Available since API-level: 12
493 #[cfg(feature = "api-12")]
494 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
495 pub fn OH_Input_SetKeySwitch(keyState: *mut Input_KeyState, keySwitch: i32);
496 /// Obtains the key switch of the key status enumeration object.
497 ///
498 /// # Arguments
499 ///
500 /// * `keyState` - Key status enumeration object.
501 ///
502 /// # Returns
503 ///
504 /// * Key switch of the key status enumeration object.
505 ///
506 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
507 ///
508 /// Available since API-level: 12
509 #[cfg(feature = "api-12")]
510 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
511 pub fn OH_Input_GetKeySwitch(keyState: *const Input_KeyState) -> i32;
512 /// Inject system keys.
513 ///
514 /// # Arguments
515 ///
516 /// * `keyEvent` - - the key event to be injected.
517 ///
518 /// # Returns
519 ///
520 /// * OH_Input_InjectKeyEvent function result code.
521 /// [`INPUT_SUCCESS`] inject keyEvent success.
522 ///
523 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
524 ///
525 /// [`INPUT_PARAMETER_ERROR`] keyCode is less 0, can not process.
526 ///
527 ///
528 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
529 ///
530 /// Available since API-level: 12
531 #[cfg(feature = "api-12")]
532 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
533 pub fn OH_Input_InjectKeyEvent(keyEvent: *const Input_KeyEvent) -> i32;
534 /// Creates a key event object.
535 ///
536 ///
537 /// # Returns
538 ///
539 /// * Returns an [`Input_KeyEvent`] pointer object if the operation is successful.
540 /// Otherwise, a null pointer is returned. The possible cause is memory allocation failure.
541 ///
542 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
543 ///
544 /// Available since API-level: 12
545 #[cfg(feature = "api-12")]
546 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
547 pub fn OH_Input_CreateKeyEvent() -> *mut Input_KeyEvent;
548 /// Destroys a key event object.
549 ///
550 /// # Arguments
551 ///
552 /// * `keyEvent` - Key event object.
553 ///
554 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
555 ///
556 /// Available since API-level: 12
557 #[cfg(feature = "api-12")]
558 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
559 pub fn OH_Input_DestroyKeyEvent(keyEvent: *mut *mut Input_KeyEvent);
560 /// Sets the key event type.
561 ///
562 /// # Arguments
563 ///
564 /// * `keyEvent` - Key event object.
565 ///
566 /// * `action` - Key event type.
567 ///
568 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
569 ///
570 /// Available since API-level: 12
571 #[cfg(feature = "api-12")]
572 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
573 pub fn OH_Input_SetKeyEventAction(keyEvent: *mut Input_KeyEvent, action: i32);
574 /// Obtains the key event type.
575 ///
576 /// # Arguments
577 ///
578 /// * `keyEvent` - Key event object.
579 ///
580 /// # Returns
581 ///
582 /// * Key event type.
583 ///
584 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
585 ///
586 /// Available since API-level: 12
587 #[cfg(feature = "api-12")]
588 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
589 pub fn OH_Input_GetKeyEventAction(keyEvent: *const Input_KeyEvent) -> i32;
590 /// Sets the key value for a key event.
591 ///
592 /// # Arguments
593 ///
594 /// * `keyEvent` - Key event object.
595 ///
596 /// * `keyCode` - keyCode Key code.
597 ///
598 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
599 ///
600 /// Available since API-level: 12
601 #[cfg(feature = "api-12")]
602 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
603 pub fn OH_Input_SetKeyEventKeyCode(keyEvent: *mut Input_KeyEvent, keyCode: i32);
604 /// Obtains the key value of a key event.
605 ///
606 /// # Arguments
607 ///
608 /// * `keyEvent` - Key event object.
609 ///
610 /// # Returns
611 ///
612 /// * Key code.
613 ///
614 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
615 ///
616 /// Available since API-level: 12
617 #[cfg(feature = "api-12")]
618 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
619 pub fn OH_Input_GetKeyEventKeyCode(keyEvent: *const Input_KeyEvent) -> i32;
620 /// Sets the time when a key event occurs.
621 ///
622 /// # Arguments
623 ///
624 /// * `keyEvent` - Key event object.
625 ///
626 /// * `actionTime` - Time when the key event occurs.
627 ///
628 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
629 ///
630 /// Available since API-level: 12
631 #[cfg(feature = "api-12")]
632 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
633 pub fn OH_Input_SetKeyEventActionTime(keyEvent: *mut Input_KeyEvent, actionTime: i64);
634 /// Obtains the time when a key event occurs.
635 ///
636 /// # Arguments
637 ///
638 /// * `keyEvent` - Key event object.
639 ///
640 /// # Returns
641 ///
642 /// * Returns the time when the key event occurs.
643 ///
644 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
645 ///
646 /// Available since API-level: 12
647 #[cfg(feature = "api-12")]
648 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
649 pub fn OH_Input_GetKeyEventActionTime(keyEvent: *const Input_KeyEvent) -> i64;
650 /// Sets the windowId for a key event.
651 ///
652 /// # Arguments
653 ///
654 /// * `keyEvent` - Key event object.
655 ///
656 /// * `windowId` - The windowId for a key event.
657 ///
658 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
659 ///
660 /// Available since API-level: 15
661 #[cfg(feature = "api-15")]
662 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
663 pub fn OH_Input_SetKeyEventWindowId(keyEvent: *mut Input_KeyEvent, windowId: i32);
664 /// Obtains the windowId of a key event.
665 ///
666 /// # Arguments
667 ///
668 /// * `keyEvent` - Key event object.
669 ///
670 /// # Returns
671 ///
672 /// * windowId.
673 ///
674 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
675 ///
676 /// Available since API-level: 15
677 #[cfg(feature = "api-15")]
678 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
679 pub fn OH_Input_GetKeyEventWindowId(keyEvent: *const Input_KeyEvent) -> i32;
680 /// Sets the displayId for a key event.
681 ///
682 /// # Arguments
683 ///
684 /// * `keyEvent` - Key event object.
685 ///
686 /// * `displayId` - The displayId for a key event.
687 ///
688 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
689 ///
690 /// Available since API-level: 15
691 #[cfg(feature = "api-15")]
692 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
693 pub fn OH_Input_SetKeyEventDisplayId(keyEvent: *mut Input_KeyEvent, displayId: i32);
694 /// Obtains the displayId of a key event.
695 ///
696 /// # Arguments
697 ///
698 /// * `keyEvent` - Key event object.
699 ///
700 /// # Returns
701 ///
702 /// * displayId.
703 ///
704 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
705 ///
706 /// Available since API-level: 15
707 #[cfg(feature = "api-15")]
708 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
709 pub fn OH_Input_GetKeyEventDisplayId(keyEvent: *const Input_KeyEvent) -> i32;
710 /// Inject mouse event.
711 ///
712 /// # Arguments
713 ///
714 /// * `mouseEvent` - - the mouse event to be injected.
715 ///
716 /// # Returns
717 ///
718 /// * OH_Input_InjectMouseEvent function result code.
719 /// [`INPUT_SUCCESS`] inject mouseEvent success.
720 ///
721 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
722 ///
723 /// [`INPUT_PARAMETER_ERROR`] Parameter check failed.
724 ///
725 ///
726 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
727 ///
728 /// Available since API-level: 12
729 #[cfg(feature = "api-12")]
730 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
731 pub fn OH_Input_InjectMouseEvent(mouseEvent: *const Input_MouseEvent) -> i32;
732 /// Creates a mouse event object.
733 ///
734 ///
735 /// # Returns
736 ///
737 /// * Returns an [`Input_MouseEvent`] pointer object if the operation is successful.
738 /// Otherwise, a null pointer is returned. The possible cause is memory allocation failure.
739 ///
740 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
741 ///
742 /// Available since API-level: 12
743 #[cfg(feature = "api-12")]
744 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
745 pub fn OH_Input_CreateMouseEvent() -> *mut Input_MouseEvent;
746 /// Destroys a mouse event object.
747 ///
748 /// # Arguments
749 ///
750 /// * `mouseEvent` - Mouse event object.
751 ///
752 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
753 ///
754 /// Available since API-level: 12
755 #[cfg(feature = "api-12")]
756 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
757 pub fn OH_Input_DestroyMouseEvent(mouseEvent: *mut *mut Input_MouseEvent);
758 /// Sets the action for a mouse event.
759 ///
760 /// # Arguments
761 ///
762 /// * `mouseEvent` - Mouse event object.
763 ///
764 /// * `action` - Mouse action.
765 ///
766 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
767 ///
768 /// Available since API-level: 12
769 #[cfg(feature = "api-12")]
770 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
771 pub fn OH_Input_SetMouseEventAction(mouseEvent: *mut Input_MouseEvent, action: i32);
772 /// Obtains the action of a mouse event.
773 ///
774 /// # Arguments
775 ///
776 /// * `mouseEvent` - Mouse event object.
777 ///
778 /// # Returns
779 ///
780 /// * Mouse action.
781 ///
782 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
783 ///
784 /// Available since API-level: 12
785 #[cfg(feature = "api-12")]
786 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
787 pub fn OH_Input_GetMouseEventAction(mouseEvent: *const Input_MouseEvent) -> i32;
788 /// Sets the X coordinate for a mouse event.
789 ///
790 /// # Arguments
791 ///
792 /// * `mouseEvent` - Mouse event object.
793 ///
794 /// * `displayX` - X coordinate on the display.
795 ///
796 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
797 ///
798 /// Available since API-level: 12
799 #[cfg(feature = "api-12")]
800 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
801 pub fn OH_Input_SetMouseEventDisplayX(mouseEvent: *mut Input_MouseEvent, displayX: i32);
802 /// Obtains the X coordinate of a mouse event.
803 ///
804 /// # Arguments
805 ///
806 /// * `mouseEvent` - Mouse event object.
807 ///
808 /// # Returns
809 ///
810 /// * X coordinate on the display.
811 ///
812 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
813 ///
814 /// Available since API-level: 12
815 #[cfg(feature = "api-12")]
816 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
817 pub fn OH_Input_GetMouseEventDisplayX(mouseEvent: *const Input_MouseEvent) -> i32;
818 /// Sets the Y coordinate for a mouse event.
819 ///
820 /// # Arguments
821 ///
822 /// * `mouseEvent` - Mouse event object.
823 ///
824 /// * `displayY` - Y coordinate on the display.
825 ///
826 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
827 ///
828 /// Available since API-level: 12
829 #[cfg(feature = "api-12")]
830 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
831 pub fn OH_Input_SetMouseEventDisplayY(mouseEvent: *mut Input_MouseEvent, displayY: i32);
832 /// Obtains the Y coordinate of a mouse event.
833 ///
834 /// # Arguments
835 ///
836 /// * `mouseEvent` - Mouse event object.
837 ///
838 /// # Returns
839 ///
840 /// * Y coordinate on the display.
841 ///
842 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
843 ///
844 /// Available since API-level: 12
845 #[cfg(feature = "api-12")]
846 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
847 pub fn OH_Input_GetMouseEventDisplayY(mouseEvent: *const Input_MouseEvent) -> i32;
848 /// Sets the button for a mouse event.
849 ///
850 /// # Arguments
851 ///
852 /// * `mouseEvent` - Mouse event object.
853 ///
854 /// * `button` - Mouse button.
855 ///
856 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
857 ///
858 /// Available since API-level: 12
859 #[cfg(feature = "api-12")]
860 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
861 pub fn OH_Input_SetMouseEventButton(mouseEvent: *mut Input_MouseEvent, button: i32);
862 /// Obtains the button of a mouse event.
863 ///
864 /// # Arguments
865 ///
866 /// * `mouseEvent` - Mouse event object.
867 ///
868 /// # Returns
869 ///
870 /// * Mouse button.
871 ///
872 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
873 ///
874 /// Available since API-level: 12
875 #[cfg(feature = "api-12")]
876 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
877 pub fn OH_Input_GetMouseEventButton(mouseEvent: *const Input_MouseEvent) -> i32;
878 /// Sets the axis type for mouse event.
879 ///
880 /// # Arguments
881 ///
882 /// * `mouseEvent` - Mouse event object.
883 ///
884 /// * `axisType` - Axis type, for example, X axis or Y axis.
885 ///
886 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
887 ///
888 /// Available since API-level: 12
889 #[cfg(feature = "api-12")]
890 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
891 pub fn OH_Input_SetMouseEventAxisType(mouseEvent: *mut Input_MouseEvent, axisType: i32);
892 /// Obtains the axis type of a mouse event.
893 ///
894 /// # Arguments
895 ///
896 /// * `mouseEvent` - Mouse event object.
897 ///
898 /// # Returns
899 ///
900 /// * Axis type.
901 ///
902 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
903 ///
904 /// Available since API-level: 12
905 #[cfg(feature = "api-12")]
906 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
907 pub fn OH_Input_GetMouseEventAxisType(mouseEvent: *const Input_MouseEvent) -> i32;
908 /// Sets the axis value for a mouse axis event.
909 ///
910 /// # Arguments
911 ///
912 /// * `mouseEvent` - Mouse event object.
913 ///
914 /// * `axisValue` - Axis value. A positive value means scrolling forward,
915 /// and a negative number means scrolling backward.
916 ///
917 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
918 ///
919 /// Available since API-level: 12
920 #[cfg(feature = "api-12")]
921 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
922 pub fn OH_Input_SetMouseEventAxisValue(mouseEvent: *mut Input_MouseEvent, axisValue: f32);
923 /// Obtains the axis value of a mouse event.
924 ///
925 /// # Arguments
926 ///
927 /// * `mouseEvent` - Mouse event object.
928 ///
929 /// # Returns
930 ///
931 /// * Axis value.
932 ///
933 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
934 ///
935 /// Available since API-level: 12
936 #[cfg(feature = "api-12")]
937 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
938 pub fn OH_Input_GetMouseEventAxisValue(mouseEvent: *const Input_MouseEvent) -> f32;
939 /// Sets the time when a mouse event occurs.
940 ///
941 /// # Arguments
942 ///
943 /// * `mouseEvent` - Mouse event object.
944 ///
945 /// * `actionTime` - Time when the mouse event occurs.
946 ///
947 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
948 ///
949 /// Available since API-level: 12
950 #[cfg(feature = "api-12")]
951 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
952 pub fn OH_Input_SetMouseEventActionTime(mouseEvent: *mut Input_MouseEvent, actionTime: i64);
953 /// Obtains the time when a mouse event occurs.
954 ///
955 /// # Arguments
956 ///
957 /// * `mouseEvent` - Mouse event object.
958 ///
959 /// # Returns
960 ///
961 /// * Returns the time when the mouse event occurs.
962 ///
963 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
964 ///
965 /// Available since API-level: 12
966 #[cfg(feature = "api-12")]
967 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
968 pub fn OH_Input_GetMouseEventActionTime(mouseEvent: *const Input_MouseEvent) -> i64;
969 /// Sets the windowId for a mouse event.
970 ///
971 /// # Arguments
972 ///
973 /// * `mouseEvent` - Mouse event object.
974 ///
975 /// * `windowId` - The windowId for a mouse event.
976 ///
977 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
978 ///
979 /// Available since API-level: 15
980 #[cfg(feature = "api-15")]
981 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
982 pub fn OH_Input_SetMouseEventWindowId(mouseEvent: *mut Input_MouseEvent, windowId: i32);
983 /// Obtains the windowId of a mouse event.
984 ///
985 /// # Arguments
986 ///
987 /// * `mouseEvent` - Mouse event object.
988 ///
989 /// # Returns
990 ///
991 /// * windowId.
992 ///
993 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
994 ///
995 /// Available since API-level: 15
996 #[cfg(feature = "api-15")]
997 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
998 pub fn OH_Input_GetMouseEventWindowId(mouseEvent: *const Input_MouseEvent) -> i32;
999 /// Sets the displayId for a mouse event.
1000 ///
1001 /// # Arguments
1002 ///
1003 /// * `mouseEvent` - Mouse event object.
1004 ///
1005 /// * `displayId` - The displayId for a mouse event.
1006 ///
1007 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1008 ///
1009 /// Available since API-level: 15
1010 #[cfg(feature = "api-15")]
1011 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1012 pub fn OH_Input_SetMouseEventDisplayId(mouseEvent: *mut Input_MouseEvent, displayId: i32);
1013 /// Obtains the displayId of a mouse event.
1014 ///
1015 /// # Arguments
1016 ///
1017 /// * `mouseEvent` - Mouse event object.
1018 ///
1019 /// # Returns
1020 ///
1021 /// * displayId.
1022 ///
1023 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1024 ///
1025 /// Available since API-level: 15
1026 #[cfg(feature = "api-15")]
1027 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1028 pub fn OH_Input_GetMouseEventDisplayId(mouseEvent: *const Input_MouseEvent) -> i32;
1029 /// Inject touch event.
1030 ///
1031 /// # Arguments
1032 ///
1033 /// * `touchEvent` - - the touch event to be injected.
1034 ///
1035 /// # Returns
1036 ///
1037 /// * OH_Input_InjectTouchEvent function result code.
1038 /// [`INPUT_SUCCESS`] inject touchEvent success.
1039 ///
1040 /// [`INPUT_PARAMETER_ERROR`] Parameter check failed.
1041 ///
1042 ///
1043 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1044 ///
1045 /// Available since API-level: 12
1046 #[cfg(feature = "api-12")]
1047 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1048 pub fn OH_Input_InjectTouchEvent(touchEvent: *const Input_TouchEvent) -> i32;
1049 /// Creates a touch event object.
1050 ///
1051 ///
1052 /// # Returns
1053 ///
1054 /// * Returns an [`Input_TouchEvent`] pointer object if the operation is successful.
1055 /// Otherwise, a null pointer is returned. The possible cause is memory allocation failure.
1056 ///
1057 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1058 ///
1059 /// Available since API-level: 12
1060 #[cfg(feature = "api-12")]
1061 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1062 pub fn OH_Input_CreateTouchEvent() -> *mut Input_TouchEvent;
1063 /// Destroys a touch event object.
1064 ///
1065 /// # Arguments
1066 ///
1067 /// * `touchEvent` - Touch event object.
1068 ///
1069 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1070 ///
1071 /// Available since API-level: 12
1072 #[cfg(feature = "api-12")]
1073 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1074 pub fn OH_Input_DestroyTouchEvent(touchEvent: *mut *mut Input_TouchEvent);
1075 /// Sets the action for a touch event.
1076 ///
1077 /// # Arguments
1078 ///
1079 /// * `touchEvent` - Touch event object.
1080 ///
1081 /// * `action` - Touch action.
1082 ///
1083 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1084 ///
1085 /// Available since API-level: 12
1086 #[cfg(feature = "api-12")]
1087 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1088 pub fn OH_Input_SetTouchEventAction(touchEvent: *mut Input_TouchEvent, action: i32);
1089 /// Obtains the action of a touch event.
1090 ///
1091 /// # Arguments
1092 ///
1093 /// * `touchEvent` - Touch event object.
1094 ///
1095 /// # Returns
1096 ///
1097 /// * Touch action.
1098 ///
1099 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1100 ///
1101 /// Available since API-level: 12
1102 #[cfg(feature = "api-12")]
1103 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1104 pub fn OH_Input_GetTouchEventAction(touchEvent: *const Input_TouchEvent) -> i32;
1105 /// Sets the finger ID for the touch event.
1106 ///
1107 /// # Arguments
1108 ///
1109 /// * `touchEvent` - Touch event object.
1110 ///
1111 /// * `id` - Finger ID.
1112 ///
1113 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1114 ///
1115 /// Available since API-level: 12
1116 #[cfg(feature = "api-12")]
1117 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1118 pub fn OH_Input_SetTouchEventFingerId(touchEvent: *mut Input_TouchEvent, id: i32);
1119 /// Obtains the finger ID of a touch event.
1120 ///
1121 /// # Arguments
1122 ///
1123 /// * `touchEvent` - Touch event object.
1124 ///
1125 /// # Returns
1126 ///
1127 /// * Finger ID.
1128 ///
1129 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1130 ///
1131 /// Available since API-level: 12
1132 #[cfg(feature = "api-12")]
1133 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1134 pub fn OH_Input_GetTouchEventFingerId(touchEvent: *const Input_TouchEvent) -> i32;
1135 /// Sets the X coordinate for a touch event.
1136 ///
1137 /// # Arguments
1138 ///
1139 /// * `touchEvent` - Touch event object.
1140 ///
1141 /// * `displayX` - X coordinate.
1142 ///
1143 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1144 ///
1145 /// Available since API-level: 12
1146 #[cfg(feature = "api-12")]
1147 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1148 pub fn OH_Input_SetTouchEventDisplayX(touchEvent: *mut Input_TouchEvent, displayX: i32);
1149 /// Obtains the X coordinate of a touch event.
1150 ///
1151 /// # Arguments
1152 ///
1153 /// * `touchEvent` - Touch event object.
1154 ///
1155 /// # Returns
1156 ///
1157 /// * X coordinate.
1158 ///
1159 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1160 ///
1161 /// Available since API-level: 12
1162 #[cfg(feature = "api-12")]
1163 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1164 pub fn OH_Input_GetTouchEventDisplayX(touchEvent: *const Input_TouchEvent) -> i32;
1165 /// Sets the Y coordinate for a touch event.
1166 ///
1167 /// # Arguments
1168 ///
1169 /// * `touchEvent` - Touch event object.
1170 ///
1171 /// * `displayY` - Y coordinate.
1172 ///
1173 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1174 ///
1175 /// Available since API-level: 12
1176 #[cfg(feature = "api-12")]
1177 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1178 pub fn OH_Input_SetTouchEventDisplayY(touchEvent: *mut Input_TouchEvent, displayY: i32);
1179 /// Obtains the Y coordinate of a touch event.
1180 ///
1181 /// # Arguments
1182 ///
1183 /// * `touchEvent` - Touch event object.
1184 ///
1185 /// # Returns
1186 ///
1187 /// * Y coordinate.
1188 ///
1189 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1190 ///
1191 /// Available since API-level: 12
1192 #[cfg(feature = "api-12")]
1193 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1194 pub fn OH_Input_GetTouchEventDisplayY(touchEvent: *const Input_TouchEvent) -> i32;
1195 /// Sets the time when a touch event occurs.
1196 ///
1197 /// # Arguments
1198 ///
1199 /// * `touchEvent` - Touch event object.
1200 ///
1201 /// * `actionTime` - Time when the touch event occurs.
1202 ///
1203 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1204 ///
1205 /// Available since API-level: 12
1206 #[cfg(feature = "api-12")]
1207 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1208 pub fn OH_Input_SetTouchEventActionTime(touchEvent: *mut Input_TouchEvent, actionTime: i64);
1209 /// Obtains the time when a touch event occurs.
1210 ///
1211 /// # Arguments
1212 ///
1213 /// * `touchEvent` - touch event object.
1214 ///
1215 /// # Returns
1216 ///
1217 /// * Returns the time when the touch event occurs.
1218 ///
1219 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1220 ///
1221 /// Available since API-level: 12
1222 #[cfg(feature = "api-12")]
1223 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1224 pub fn OH_Input_GetTouchEventActionTime(touchEvent: *const Input_TouchEvent) -> i64;
1225 /// Sets the windowId for a touch event.
1226 ///
1227 /// # Arguments
1228 ///
1229 /// * `touchEvent` - Touch event object.
1230 ///
1231 /// * `windowId` - The windowId for a touch event.
1232 ///
1233 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1234 ///
1235 /// Available since API-level: 15
1236 #[cfg(feature = "api-15")]
1237 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1238 pub fn OH_Input_SetTouchEventWindowId(touchEvent: *mut Input_TouchEvent, windowId: i32);
1239 /// Obtains the windowId of a touch event.
1240 ///
1241 /// # Arguments
1242 ///
1243 /// * `touchEvent` - Touch event object.
1244 ///
1245 /// # Returns
1246 ///
1247 /// * windowId.
1248 ///
1249 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1250 ///
1251 /// Available since API-level: 15
1252 #[cfg(feature = "api-15")]
1253 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1254 pub fn OH_Input_GetTouchEventWindowId(touchEvent: *const Input_TouchEvent) -> i32;
1255 /// Sets the displayId for a touch event.
1256 ///
1257 /// # Arguments
1258 ///
1259 /// * `touchEvent` - Touch event object.
1260 ///
1261 /// * `displayId` - The displayId for a touch event.
1262 ///
1263 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1264 ///
1265 /// Available since API-level: 15
1266 #[cfg(feature = "api-15")]
1267 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1268 pub fn OH_Input_SetTouchEventDisplayId(touchEvent: *mut Input_TouchEvent, displayId: i32);
1269 /// Obtains the displayId of a touch event.
1270 ///
1271 /// # Arguments
1272 ///
1273 /// * `touchEvent` - Touch event object.
1274 ///
1275 /// # Returns
1276 ///
1277 /// * displayId.
1278 ///
1279 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1280 ///
1281 /// Available since API-level: 15
1282 #[cfg(feature = "api-15")]
1283 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1284 pub fn OH_Input_GetTouchEventDisplayId(touchEvent: *const Input_TouchEvent) -> i32;
1285 /// Cancels event injection and revokes authorization.
1286 ///
1287 ///
1288 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1289 ///
1290 /// Available since API-level: 12
1291 #[cfg(feature = "api-12")]
1292 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1293 pub fn OH_Input_CancelInjection();
1294 /// Creates an axis event object.
1295 ///
1296 ///
1297 /// # Returns
1298 ///
1299 /// * If the operation is successful, a [`Input_AxisEvent`] object is returned.
1300 /// If the operation fails, null is returned.
1301 ///
1302 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1303 ///
1304 /// Available since API-level: 12
1305 #[cfg(feature = "api-12")]
1306 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1307 pub fn OH_Input_CreateAxisEvent() -> *mut Input_AxisEvent;
1308 /// Destroys an axis event object.
1309 ///
1310 /// # Arguments
1311 ///
1312 /// * `axisEvent` - Pointer to the axis event object.
1313 ///
1314 /// # Returns
1315 ///
1316 /// * OH_Input_DestroyAxisEvent function result code.
1317 /// [`INPUT_SUCCESS`] Destroys axisEvent success.
1318 ///
1319 /// [`INPUT_PARAMETER_ERROR`]The axisEvent is NULL or the *axisEvent is NULL.
1320 ///
1321 ///
1322 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1323 ///
1324 /// Available since API-level: 12
1325 #[cfg(feature = "api-12")]
1326 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1327 pub fn OH_Input_DestroyAxisEvent(axisEvent: *mut *mut Input_AxisEvent) -> Input_Result;
1328 /// Sets the axis event action.
1329 ///
1330 /// # Arguments
1331 ///
1332 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1333 ///
1334 /// * `action` - Axis event action. The values are defined in [`InputEvent_AxisAction`].
1335 ///
1336 /// # Returns
1337 ///
1338 /// * OH_Input_SetAxisEventAction function result code.
1339 /// [`INPUT_SUCCESS`] Sets the axis event action success.
1340 ///
1341 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1342 ///
1343 ///
1344 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1345 ///
1346 /// Available since API-level: 12
1347 #[cfg(feature = "api-12")]
1348 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1349 pub fn OH_Input_SetAxisEventAction(
1350 axisEvent: *mut Input_AxisEvent,
1351 action: InputEvent_AxisAction,
1352 ) -> Input_Result;
1353 /// Obtains the axis event action.
1354 ///
1355 /// # Arguments
1356 ///
1357 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1358 ///
1359 /// * `action` - Axis event action. The values are defined in [`InputEvent_AxisAction`].
1360 ///
1361 /// # Returns
1362 ///
1363 /// * OH_Input_GetAxisEventAction function result code.
1364 /// [`INPUT_SUCCESS`] Obtains the axis event action success.
1365 ///
1366 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the action is NULL.
1367 ///
1368 ///
1369 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1370 ///
1371 /// Available since API-level: 12
1372 #[cfg(feature = "api-12")]
1373 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1374 pub fn OH_Input_GetAxisEventAction(
1375 axisEvent: *const Input_AxisEvent,
1376 action: *mut InputEvent_AxisAction,
1377 ) -> Input_Result;
1378 /// Sets the X coordinate of an axis event.
1379 ///
1380 /// # Arguments
1381 ///
1382 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1383 ///
1384 /// * `displayX` - X coordinate of the axis event.
1385 ///
1386 /// # Returns
1387 ///
1388 /// * OH_Input_SetAxisEventDisplayX function result code.
1389 /// [`INPUT_SUCCESS`] Sets the X coordinate of the axis event success.
1390 ///
1391 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1392 ///
1393 ///
1394 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1395 ///
1396 /// Available since API-level: 12
1397 #[cfg(feature = "api-12")]
1398 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1399 pub fn OH_Input_SetAxisEventDisplayX(
1400 axisEvent: *mut Input_AxisEvent,
1401 displayX: f32,
1402 ) -> Input_Result;
1403 /// Obtains the X coordinate of an axis event.
1404 ///
1405 /// # Arguments
1406 ///
1407 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1408 ///
1409 /// * `displayX` - X coordinate of the axis event.
1410 ///
1411 /// # Returns
1412 ///
1413 /// * OH_Input_GetAxisEventDisplayX function result code.
1414 /// [`INPUT_SUCCESS`] Obtains the X coordinate of the axis event success.
1415 ///
1416 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the displayX is NULL.
1417 ///
1418 ///
1419 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1420 ///
1421 /// Available since API-level: 12
1422 #[cfg(feature = "api-12")]
1423 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1424 pub fn OH_Input_GetAxisEventDisplayX(
1425 axisEvent: *const Input_AxisEvent,
1426 displayX: *mut f32,
1427 ) -> Input_Result;
1428 /// Sets the Y coordinate of an axis event.
1429 ///
1430 /// # Arguments
1431 ///
1432 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1433 ///
1434 /// * `displayY` - Y coordinate of the axis event.
1435 ///
1436 /// # Returns
1437 ///
1438 /// * OH_Input_SetAxisEventDisplayY function result code.
1439 /// [`INPUT_SUCCESS`] Sets the Y coordinate of the axis event success.
1440 ///
1441 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1442 ///
1443 ///
1444 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1445 ///
1446 /// Available since API-level: 12
1447 #[cfg(feature = "api-12")]
1448 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1449 pub fn OH_Input_SetAxisEventDisplayY(
1450 axisEvent: *mut Input_AxisEvent,
1451 displayY: f32,
1452 ) -> Input_Result;
1453 /// Obtains the Y coordinate of an axis event.
1454 ///
1455 /// # Arguments
1456 ///
1457 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1458 ///
1459 /// * `displayY` - Y coordinate of the axis event.
1460 ///
1461 /// # Returns
1462 ///
1463 /// * OH_Input_GetAxisEventDisplayY function result code.
1464 /// [`INPUT_SUCCESS`] Obtains the Y coordinate of the axis event success.
1465 ///
1466 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the displayY is NULL.
1467 ///
1468 ///
1469 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1470 ///
1471 /// Available since API-level: 12
1472 #[cfg(feature = "api-12")]
1473 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1474 pub fn OH_Input_GetAxisEventDisplayY(
1475 axisEvent: *const Input_AxisEvent,
1476 displayY: *mut f32,
1477 ) -> Input_Result;
1478 /// Sets the axis value of the axis type specified by the axis event.
1479 ///
1480 /// # Arguments
1481 ///
1482 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1483 ///
1484 /// * `axisType` - Axis type. The values are defined in [`InputEvent_AxisType`].
1485 ///
1486 /// * `axisValue` - Axis value.
1487 ///
1488 /// # Returns
1489 ///
1490 /// * OH_Input_SetAxisEventAxisValue function result code.
1491 /// [`INPUT_SUCCESS`] Sets the axis value of the axis event success.
1492 ///
1493 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1494 ///
1495 ///
1496 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1497 ///
1498 /// Available since API-level: 12
1499 #[cfg(feature = "api-12")]
1500 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1501 pub fn OH_Input_SetAxisEventAxisValue(
1502 axisEvent: *mut Input_AxisEvent,
1503 axisType: InputEvent_AxisType,
1504 axisValue: f64,
1505 ) -> Input_Result;
1506 /// Obtains the axis value for the specified axis type of the axis event.
1507 ///
1508 /// # Arguments
1509 ///
1510 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1511 ///
1512 /// * `axisType` - Axis type. The values are defined in [`InputEvent_AxisType`].
1513 ///
1514 /// * `axisValue` - Axis value.
1515 ///
1516 /// # Returns
1517 ///
1518 /// * OH_Input_GetAxisEventAxisValue function result code.
1519 /// [`INPUT_SUCCESS`] Obtains the axis value of the axis event success.
1520 ///
1521 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the axisValue is NULL,
1522 /// or the axisType not found in the axisEvent.
1523 ///
1524 ///
1525 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1526 ///
1527 /// Available since API-level: 12
1528 #[cfg(feature = "api-12")]
1529 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1530 pub fn OH_Input_GetAxisEventAxisValue(
1531 axisEvent: *const Input_AxisEvent,
1532 axisType: InputEvent_AxisType,
1533 axisValue: *mut f64,
1534 ) -> Input_Result;
1535 /// Sets the time when an axis event occurs.
1536 ///
1537 /// # Arguments
1538 ///
1539 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1540 ///
1541 /// * `actionTime` - Time when an axis event occurs.
1542 ///
1543 /// # Returns
1544 ///
1545 /// * OH_Input_SetAxisEventActionTime function result code.
1546 /// [`INPUT_SUCCESS`] Sets the time when an axis event occurs success.
1547 ///
1548 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1549 ///
1550 ///
1551 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1552 ///
1553 /// Available since API-level: 12
1554 #[cfg(feature = "api-12")]
1555 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1556 pub fn OH_Input_SetAxisEventActionTime(
1557 axisEvent: *mut Input_AxisEvent,
1558 actionTime: i64,
1559 ) -> Input_Result;
1560 /// Obtains the time when an axis event occurs.
1561 ///
1562 /// # Arguments
1563 ///
1564 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1565 ///
1566 /// * `actionTime` - Time when an axis event occurs.
1567 ///
1568 /// # Returns
1569 ///
1570 /// * OH_Input_GetAxisEventActionTime function result code.
1571 /// [`INPUT_SUCCESS`] Obtains the time when an axis event occurs success.
1572 ///
1573 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the actionTime is NULL.
1574 ///
1575 ///
1576 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1577 ///
1578 /// Available since API-level: 12
1579 #[cfg(feature = "api-12")]
1580 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1581 pub fn OH_Input_GetAxisEventActionTime(
1582 axisEvent: *const Input_AxisEvent,
1583 actionTime: *mut i64,
1584 ) -> Input_Result;
1585 /// Sets the axis event type.
1586 ///
1587 /// # Arguments
1588 ///
1589 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1590 ///
1591 /// * `axisEventType` - Axis event type. The values are defined in [`InputEvent_AxisEventType`].
1592 ///
1593 /// # Returns
1594 ///
1595 /// * OH_Input_SetAxisEventType function result code.
1596 /// [`INPUT_SUCCESS`] Sets the axis event type success.
1597 ///
1598 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1599 ///
1600 ///
1601 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1602 ///
1603 /// Available since API-level: 12
1604 #[cfg(feature = "api-12")]
1605 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1606 pub fn OH_Input_SetAxisEventType(
1607 axisEvent: *mut Input_AxisEvent,
1608 axisEventType: InputEvent_AxisEventType,
1609 ) -> Input_Result;
1610 /// Obtains the axis event type.
1611 ///
1612 /// # Arguments
1613 ///
1614 /// * `axisEvent` - Axis event object.
1615 ///
1616 /// * `axisEventType` - Axis event type. The values are defined in [`InputEvent_AxisEventType`].
1617 ///
1618 /// # Returns
1619 ///
1620 /// * OH_Input_GetAxisEventType function result code.
1621 /// [`INPUT_SUCCESS`] Obtains the axis event type success.
1622 ///
1623 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the axisEventType is NULL.
1624 ///
1625 ///
1626 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1627 ///
1628 /// Available since API-level: 12
1629 #[cfg(feature = "api-12")]
1630 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1631 pub fn OH_Input_GetAxisEventType(
1632 axisEvent: *const Input_AxisEvent,
1633 axisEventType: *mut InputEvent_AxisEventType,
1634 ) -> Input_Result;
1635 /// Sets the axis event source type.
1636 ///
1637 /// # Arguments
1638 ///
1639 /// * `axisEvent` - Axis event object.
1640 ///
1641 /// * `sourceType` - Axis event source type. The values are defined in [`InputEvent_SourceType`].
1642 ///
1643 /// # Returns
1644 ///
1645 /// * OH_Input_SetAxisEventSourceType function result code.
1646 /// [`INPUT_SUCCESS`] Sets the axis event source type success.
1647 ///
1648 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1649 ///
1650 ///
1651 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1652 ///
1653 /// Available since API-level: 12
1654 #[cfg(feature = "api-12")]
1655 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1656 pub fn OH_Input_SetAxisEventSourceType(
1657 axisEvent: *mut Input_AxisEvent,
1658 sourceType: InputEvent_SourceType,
1659 ) -> Input_Result;
1660 /// Obtains the axis event source type.
1661 ///
1662 /// # Arguments
1663 ///
1664 /// * `axisEvent` - Axis event object.
1665 ///
1666 /// * `sourceType` - Axis event source type. The values are defined in [`InputEvent_SourceType`].
1667 ///
1668 /// # Returns
1669 ///
1670 /// * OH_Input_GetAxisEventSourceType function result code.
1671 /// [`INPUT_SUCCESS`] Obtains the axis event source type success.
1672 ///
1673 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the sourceType is NULL.
1674 ///
1675 ///
1676 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1677 ///
1678 /// Available since API-level: 12
1679 #[cfg(feature = "api-12")]
1680 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1681 pub fn OH_Input_GetAxisEventSourceType(
1682 axisEvent: *const Input_AxisEvent,
1683 sourceType: *mut InputEvent_SourceType,
1684 ) -> Input_Result;
1685 /// Sets the windowId of an axis event.
1686 ///
1687 /// # Arguments
1688 ///
1689 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1690 ///
1691 /// * `windowId` - The windowId for the axis event.
1692 ///
1693 /// # Returns
1694 ///
1695 /// * OH_Input_SetAxisEventDisplayY function result code.
1696 /// [`INPUT_SUCCESS`] Sets the Y coordinate of the axis event success.
1697 ///
1698 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1699 ///
1700 ///
1701 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1702 ///
1703 /// Available since API-level: 15
1704 #[cfg(feature = "api-15")]
1705 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1706 pub fn OH_Input_SetAxisEventWindowId(
1707 axisEvent: *mut Input_AxisEvent,
1708 windowId: i32,
1709 ) -> Input_Result;
1710 /// Obtains the windowId of an axis event.
1711 ///
1712 /// # Arguments
1713 ///
1714 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1715 ///
1716 /// * `windowId` - The windowId for the axis event.
1717 ///
1718 /// # Returns
1719 ///
1720 /// * OH_Input_GetAxisEventDisplayY function result code.
1721 /// [`INPUT_SUCCESS`] Obtains the Y coordinate of the axis event success.
1722 ///
1723 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the displayY is NULL.
1724 ///
1725 ///
1726 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1727 ///
1728 /// Available since API-level: 15
1729 #[cfg(feature = "api-15")]
1730 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1731 pub fn OH_Input_GetAxisEventWindowId(
1732 axisEvent: *const Input_AxisEvent,
1733 windowId: *mut i32,
1734 ) -> Input_Result;
1735 /// Sets the displayId of an axis event.
1736 ///
1737 /// # Arguments
1738 ///
1739 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1740 ///
1741 /// * `displayId` - The displayId for the axis event.
1742 ///
1743 /// # Returns
1744 ///
1745 /// * OH_Input_SetAxisEventDisplayY function result code.
1746 /// [`INPUT_SUCCESS`] Sets the Y coordinate of the axis event success.
1747 ///
1748 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL.
1749 ///
1750 ///
1751 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1752 ///
1753 /// Available since API-level: 15
1754 #[cfg(feature = "api-15")]
1755 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1756 pub fn OH_Input_SetAxisEventDisplayId(
1757 axisEvent: *mut Input_AxisEvent,
1758 displayId: i32,
1759 ) -> Input_Result;
1760 /// Obtains the displayId of an axis event.
1761 ///
1762 /// # Arguments
1763 ///
1764 /// * `axisEvent` - Axis event object. For details, see [`Input_AxisEvent`].
1765 ///
1766 /// * `displayId` - The displayId for the axis event.
1767 ///
1768 /// # Returns
1769 ///
1770 /// * OH_Input_GetAxisEventDisplayY function result code.
1771 /// [`INPUT_SUCCESS`] Obtains the Y coordinate of the axis event success.
1772 ///
1773 /// [`INPUT_PARAMETER_ERROR`] The axisEvent is NULL or the displayY is NULL.
1774 ///
1775 ///
1776 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1777 ///
1778 /// Available since API-level: 15
1779 #[cfg(feature = "api-15")]
1780 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
1781 pub fn OH_Input_GetAxisEventDisplayId(
1782 axisEvent: *const Input_AxisEvent,
1783 displayId: *mut i32,
1784 ) -> Input_Result;
1785 /// Adds a listener of key events.
1786 ///
1787 /// ohos.permission.INPUT_MONITORING
1788 /// # Arguments
1789 ///
1790 /// * `callback` - - Callback used to receive key events.
1791 ///
1792 /// # Returns
1793 ///
1794 /// * OH_Input_AddKeyEventMonitor function result code.
1795 /// [`INPUT_SUCCESS`] Adds a listener of key events success.
1796 ///
1797 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1798 ///
1799 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
1800 ///
1801 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the monitor because the service is exception.
1802 ///
1803 ///
1804 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1805 ///
1806 /// Available since API-level: 12
1807 #[cfg(feature = "api-12")]
1808 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1809 pub fn OH_Input_AddKeyEventMonitor(callback: Input_KeyEventCallback) -> Input_Result;
1810 /// Adds a listener for mouse events, including mouse click and movement events,
1811 /// but not scroll wheel events. Scroll wheel events are axis events.
1812 ///
1813 /// ohos.permission.INPUT_MONITORING
1814 /// # Arguments
1815 ///
1816 /// * `callback` - - Callback used to receive mouse events.
1817 ///
1818 /// # Returns
1819 ///
1820 /// * OH_Input_AddMouseEventMonitor function result code.
1821 /// [`INPUT_SUCCESS`] Adds a listener of mouse events success.
1822 ///
1823 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1824 ///
1825 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
1826 ///
1827 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the monitor because the service is exception.
1828 ///
1829 ///
1830 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1831 ///
1832 /// Available since API-level: 12
1833 #[cfg(feature = "api-12")]
1834 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1835 pub fn OH_Input_AddMouseEventMonitor(callback: Input_MouseEventCallback) -> Input_Result;
1836 /// Add a listener for touch events.
1837 ///
1838 /// ohos.permission.INPUT_MONITORING
1839 /// # Arguments
1840 ///
1841 /// * `callback` - - Callback used to receive touch events.
1842 ///
1843 /// # Returns
1844 ///
1845 /// * OH_Input_AddTouchEventMonitor function result code.
1846 /// [`INPUT_SUCCESS`] Adds a listener of touch events success.
1847 ///
1848 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1849 ///
1850 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
1851 ///
1852 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the monitor because the service is exception.
1853 ///
1854 ///
1855 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1856 ///
1857 /// Available since API-level: 12
1858 #[cfg(feature = "api-12")]
1859 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1860 pub fn OH_Input_AddTouchEventMonitor(callback: Input_TouchEventCallback) -> Input_Result;
1861 /// Adds a listener for all types of axis events.
1862 /// The axis event types are defined in [`InputEvent_AxisEventType`].
1863 ///
1864 /// ohos.permission.INPUT_MONITORING
1865 /// # Arguments
1866 ///
1867 /// * `callback` - - Callback used to receive axis events.
1868 ///
1869 /// # Returns
1870 ///
1871 /// * OH_Input_AddAxisEventMonitorForAll function result code.
1872 /// [`INPUT_SUCCESS`] Adds a listener for all types of axis events success.
1873 ///
1874 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1875 ///
1876 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
1877 ///
1878 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the monitor because the service is exception.
1879 ///
1880 ///
1881 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1882 ///
1883 /// Available since API-level: 12
1884 #[cfg(feature = "api-12")]
1885 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1886 pub fn OH_Input_AddAxisEventMonitorForAll(callback: Input_AxisEventCallback) -> Input_Result;
1887 /// Adds a listener for the specified type of axis events.
1888 ///
1889 /// ohos.permission.INPUT_MONITORING
1890 /// # Arguments
1891 ///
1892 /// * `axisEventType` - - Axis event type. The values are defined in [`InputEvent_AxisEventType`].
1893 ///
1894 /// * `callback` - - Callback used to receive the specified type of axis events.
1895 ///
1896 /// # Returns
1897 ///
1898 /// * OH_Input_AddAxisEventMonitor function result code.
1899 /// [`INPUT_SUCCESS`] Adds a listener for the specified types of axis events success.
1900 ///
1901 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1902 ///
1903 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
1904 ///
1905 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the monitor because the service is exception.
1906 ///
1907 ///
1908 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1909 ///
1910 /// Available since API-level: 12
1911 #[cfg(feature = "api-12")]
1912 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1913 pub fn OH_Input_AddAxisEventMonitor(
1914 axisEventType: InputEvent_AxisEventType,
1915 callback: Input_AxisEventCallback,
1916 ) -> Input_Result;
1917 /// Removes a key event listener.
1918 ///
1919 /// ohos.permission.INPUT_MONITORING
1920 /// # Arguments
1921 ///
1922 /// * `callback` - - Callback for the key event listener.
1923 ///
1924 /// # Returns
1925 ///
1926 /// * OH_Input_RemoveKeyEventMonitor function result code.
1927 /// [`INPUT_SUCCESS`] Removes a key event listener success.
1928 ///
1929 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1930 ///
1931 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL or has not been added.
1932 ///
1933 /// [`INPUT_SERVICE_EXCEPTION`] Fail to remove the monitor because the service is exception.
1934 ///
1935 ///
1936 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1937 ///
1938 /// Available since API-level: 12
1939 #[cfg(feature = "api-12")]
1940 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1941 pub fn OH_Input_RemoveKeyEventMonitor(callback: Input_KeyEventCallback) -> Input_Result;
1942 /// Removes a mouse event listener.
1943 ///
1944 /// ohos.permission.INPUT_MONITORING
1945 /// # Arguments
1946 ///
1947 /// * `callback` - - Callback for the mouse event listener.
1948 ///
1949 /// # Returns
1950 ///
1951 /// * OH_Input_RemoveMouseEventMonitor function result code.
1952 /// [`INPUT_SUCCESS`] Removes a mouse event listener success.
1953 ///
1954 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1955 ///
1956 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL or has not been added.
1957 ///
1958 /// [`INPUT_SERVICE_EXCEPTION`] Fail to remove the monitor because the service is exception.
1959 ///
1960 ///
1961 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1962 ///
1963 /// Available since API-level: 12
1964 #[cfg(feature = "api-12")]
1965 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1966 pub fn OH_Input_RemoveMouseEventMonitor(callback: Input_MouseEventCallback) -> Input_Result;
1967 /// Removes a touch event listener.
1968 ///
1969 /// ohos.permission.INPUT_MONITORING
1970 /// # Arguments
1971 ///
1972 /// * `callback` - - Callback for the touch event listener.
1973 ///
1974 /// # Returns
1975 ///
1976 /// * OH_Input_RemoveTouchEventMonitor function result code.
1977 /// [`INPUT_SUCCESS`] Removes a touch event listener success.
1978 ///
1979 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
1980 ///
1981 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL or has not been added.
1982 ///
1983 /// [`INPUT_SERVICE_EXCEPTION`] Fail to remove the monitor because the service is exception.
1984 ///
1985 ///
1986 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
1987 ///
1988 /// Available since API-level: 12
1989 #[cfg(feature = "api-12")]
1990 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
1991 pub fn OH_Input_RemoveTouchEventMonitor(callback: Input_TouchEventCallback) -> Input_Result;
1992 /// Removes the listener for all types of axis events.
1993 ///
1994 /// ohos.permission.INPUT_MONITORING
1995 /// # Arguments
1996 ///
1997 /// * `callback` - - Callback for the listener used to listen for all types of axis events.
1998 ///
1999 /// # Returns
2000 ///
2001 /// * OH_Input_RemoveAxisEventMonitorForAll function result code.
2002 /// [`INPUT_SUCCESS`] Removes the listener for all types of axis events success.
2003 ///
2004 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
2005 ///
2006 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL or has not been added.
2007 ///
2008 /// [`INPUT_SERVICE_EXCEPTION`] Fail to remove the monitor because the service is exception.
2009 ///
2010 ///
2011 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2012 ///
2013 /// Available since API-level: 12
2014 #[cfg(feature = "api-12")]
2015 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
2016 pub fn OH_Input_RemoveAxisEventMonitorForAll(callback: Input_AxisEventCallback)
2017 -> Input_Result;
2018 /// Removes the listener for the specified type of axis events.
2019 ///
2020 /// ohos.permission.INPUT_MONITORING
2021 /// # Arguments
2022 ///
2023 /// * `axisEventType` - - Axis event type. The axis event type is defined in [`InputEvent_AxisEventType`].
2024 ///
2025 /// * `callback` - - Callback for the listener used to listen for the specified type of axis events.
2026 ///
2027 /// # Returns
2028 ///
2029 /// * OH_Input_RemoveAxisEventMonitor function result code.
2030 /// [`INPUT_SUCCESS`] Removes the listener for the specified type of axis events success.
2031 ///
2032 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
2033 ///
2034 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL or has not been added.
2035 ///
2036 /// [`INPUT_SERVICE_EXCEPTION`] Fail to remove the monitor because the service is exception.
2037 ///
2038 ///
2039 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2040 ///
2041 /// Available since API-level: 12
2042 #[cfg(feature = "api-12")]
2043 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
2044 pub fn OH_Input_RemoveAxisEventMonitor(
2045 axisEventType: InputEvent_AxisEventType,
2046 callback: Input_AxisEventCallback,
2047 ) -> Input_Result;
2048 /// Adds a key event interceptor. If multiple interceptors are added, only the first one takes effect.
2049 ///
2050 /// ohos.permission.INTERCEPT_INPUT_EVENT
2051 /// # Arguments
2052 ///
2053 /// * `callback` - - Callback used to receive key events.
2054 ///
2055 /// * `option` - - Options for event interception. If **null** is passed, the default value is used.
2056 ///
2057 /// # Returns
2058 ///
2059 /// * OH_Input_AddKeyEventInterceptor function result code.
2060 /// [`INPUT_SUCCESS`] Adds a key event interceptor success.
2061 ///
2062 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
2063 ///
2064 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
2065 ///
2066 /// [`INPUT_REPEAT_INTERCEPTOR`] Interceptor repeatedly created for an application.
2067 ///
2068 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the interceptor because the service is exception.
2069 ///
2070 ///
2071 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2072 ///
2073 /// Available since API-level: 12
2074 #[cfg(feature = "api-12")]
2075 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
2076 pub fn OH_Input_AddKeyEventInterceptor(
2077 callback: Input_KeyEventCallback,
2078 option: *mut Input_InterceptorOptions,
2079 ) -> Input_Result;
2080 /// Adds an interceptor for input events, including mouse, touch, and axis events.
2081 /// If multiple interceptors are added, only the first one takes effect.
2082 ///
2083 /// ohos.permission.INTERCEPT_INPUT_EVENT
2084 /// # Arguments
2085 ///
2086 /// * `callback` - - Pointer to the structure of the callback for the input event interceptor.
2087 /// For details, see [`Input_InterceptorEventCallback`].
2088 ///
2089 /// * `option` - - Options for event interception. If **null** is passed, the default value is used.
2090 ///
2091 /// # Returns
2092 ///
2093 /// * OH_Input_AddInputEventInterceptor function result code.
2094 /// [`INPUT_SUCCESS`] Adds an interceptor for input events success.
2095 ///
2096 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
2097 ///
2098 /// [`INPUT_PARAMETER_ERROR`] The callback is NULL.
2099 ///
2100 /// [`INPUT_REPEAT_INTERCEPTOR`] Interceptor repeatedly created for an application.
2101 ///
2102 /// [`INPUT_SERVICE_EXCEPTION`] Failed to add the interceptor because the service is exception.
2103 ///
2104 ///
2105 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2106 ///
2107 /// Available since API-level: 12
2108 #[cfg(feature = "api-12")]
2109 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
2110 pub fn OH_Input_AddInputEventInterceptor(
2111 callback: *mut Input_InterceptorEventCallback,
2112 option: *mut Input_InterceptorOptions,
2113 ) -> Input_Result;
2114 /// Removes a key event interceptor.
2115 ///
2116 /// ohos.permission.INTERCEPT_INPUT_EVENT
2117 ///
2118 /// # Returns
2119 ///
2120 /// * OH_Input_RemoveKeyEventInterceptor function result code.
2121 /// [`INPUT_SUCCESS`]Removes a key event interceptor success.
2122 ///
2123 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
2124 ///
2125 /// [`INPUT_SERVICE_EXCEPTION`] Failed to remove the interceptor because the service is exception.
2126 ///
2127 ///
2128 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2129 ///
2130 /// Available since API-level: 12
2131 #[cfg(feature = "api-12")]
2132 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
2133 pub fn OH_Input_RemoveKeyEventInterceptor() -> Input_Result;
2134 /// Removes an interceptor for input events, including mouse, touch, and axis events.
2135 ///
2136 /// ohos.permission.INTERCEPT_INPUT_EVENT
2137 ///
2138 /// # Returns
2139 ///
2140 /// * OH_Input_RemoveInputEventInterceptor function result code.
2141 /// [`INPUT_SUCCESS`] Removes an interceptor for input events success.
2142 ///
2143 /// [`INPUT_PERMISSION_DENIED`] Permission verification failed.
2144 ///
2145 /// [`INPUT_SERVICE_EXCEPTION`] Failed to remove the interceptor because the service is exception.
2146 ///
2147 ///
2148 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2149 ///
2150 /// Available since API-level: 12
2151 #[cfg(feature = "api-12")]
2152 #[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
2153 pub fn OH_Input_RemoveInputEventInterceptor() -> Input_Result;
2154 /// Obtains the interval since the last system input event.
2155 ///
2156 /// # Arguments
2157 ///
2158 /// * `timeInterval` - Interval, in microseconds.
2159 ///
2160 /// # Returns
2161 ///
2162 /// * OH_Input_GetIntervalSinceLastInput status code, specifically.
2163 /// [`INPUT_SUCCESS`] if the Operation is successful.
2164 ///
2165 /// [`INPUT_SERVICE_EXCEPTION`] Failed to get the interval because the service is exception.
2166 ///
2167 /// [`INPUT_PARAMETER_ERROR`] The timeInterval is NULL.
2168 ///
2169 ///
2170 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2171 ///
2172 /// Available since API-level: 14
2173 #[cfg(feature = "api-14")]
2174 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2175 pub fn OH_Input_GetIntervalSinceLastInput(timeInterval: *mut i64) -> Input_Result;
2176 /// Creates a hot key object.
2177 ///
2178 ///
2179 /// # Returns
2180 ///
2181 /// * Returns an [`Input_Hotkey`] pointer object if the operation is successful. Otherwise, a null pointer is
2182 /// returned. The possible cause is memory allocation failure.
2183 ///
2184 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2185 ///
2186 /// Available since API-level: 14
2187 #[cfg(feature = "api-14")]
2188 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2189 pub fn OH_Input_CreateHotkey() -> *mut Input_Hotkey;
2190 /// Destroys a hot key object.
2191 ///
2192 /// # Arguments
2193 ///
2194 /// * `hotkey` - Hot key object.
2195 ///
2196 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2197 ///
2198 /// Available since API-level: 14
2199 #[cfg(feature = "api-14")]
2200 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2201 pub fn OH_Input_DestroyHotkey(hotkey: *mut *mut Input_Hotkey);
2202 /// Sets a modifier key.
2203 ///
2204 /// # Arguments
2205 ///
2206 /// * `hotkey` - Hotkey key object.
2207 ///
2208 /// * `preKeys` - List of modifier keys.
2209 ///
2210 /// * `size` - Number of modifier keys. One or two modifier keys are supported.
2211 ///
2212 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2213 ///
2214 /// Available since API-level: 14
2215 #[cfg(feature = "api-14")]
2216 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2217 pub fn OH_Input_SetPreKeys(hotkey: *mut Input_Hotkey, preKeys: *mut i32, size: i32);
2218 /// Obtains a modifier key.
2219 ///
2220 /// # Arguments
2221 ///
2222 /// * `hotkey` - Hotkey key object.
2223 ///
2224 /// * `preKeys` - List of modifier keys.
2225 ///
2226 /// * `preKeyCount` - Number of modifier keys.
2227 ///
2228 /// # Returns
2229 ///
2230 /// * OH_Input_GetPreKeys status code, specifically,
2231 /// [`INPUT_SUCCESS`] if the operation is successful;
2232 ///
2233 /// [`INPUT_PARAMETER_ERROR`] The hotkey is NULL or the pressedKeys is NULL or the pressedKeyCount
2234 /// is NULL;
2235 ///
2236 /// [`INPUT_DEVICE_NOT_SUPPORTED`] Capability not supported.
2237 ///
2238 ///
2239 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2240 ///
2241 /// Available since API-level: 14
2242 #[cfg(feature = "api-14")]
2243 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2244 pub fn OH_Input_GetPreKeys(
2245 hotkey: *const Input_Hotkey,
2246 preKeys: *mut *mut i32,
2247 preKeyCount: *mut i32,
2248 ) -> Input_Result;
2249 /// Sets a modified key.
2250 ///
2251 /// # Arguments
2252 ///
2253 /// * `hotkey` - Hotkey key object.
2254 ///
2255 /// * `finalKey` - Modified key. Only one modified key is supported.
2256 ///
2257 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2258 ///
2259 /// Available since API-level: 14
2260 #[cfg(feature = "api-14")]
2261 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2262 pub fn OH_Input_SetFinalKey(hotkey: *mut Input_Hotkey, finalKey: i32);
2263 /// Obtains a modified key.
2264 ///
2265 /// # Arguments
2266 ///
2267 /// * `hotkey` - Hotkey key object.
2268 ///
2269 /// * `finalKeyCode` - Returns the key value of the decorated key.
2270 ///
2271 /// # Returns
2272 ///
2273 /// * OH_Input_GetfinalKey status code, specifically,
2274 /// [`INPUT_SUCCESS`] if the operation is successful;
2275 ///
2276 /// [`INPUT_PARAMETER_ERROR`] The hotkey is NULL or the finalKeyCode is NULL;
2277 ///
2278 /// [`INPUT_DEVICE_NOT_SUPPORTED`] Capability not supported.
2279 ///
2280 ///
2281 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2282 ///
2283 /// Available since API-level: 14
2284 #[cfg(feature = "api-14")]
2285 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2286 pub fn OH_Input_GetFinalKey(
2287 hotkey: *const Input_Hotkey,
2288 finalKeyCode: *mut i32,
2289 ) -> Input_Result;
2290 /// Creates an array of [`Input_Hotkey`] instances.
2291 ///
2292 /// # Arguments
2293 ///
2294 /// * `count` - Number of [`Input_Hotkey`] instances to be created. The count must be the same as the number of
2295 /// system shortcut keys.
2296 ///
2297 /// # Returns
2298 ///
2299 /// * Returns a pointer to an array of [`Input_Hotkey`] instances if the operation is successful. If the
2300 /// operation fails, a null pointer is returned. The possible cause is memory allocation failure or count is not equal
2301 /// to the number of system hotkeys.
2302 ///
2303 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2304 ///
2305 /// Available since API-level: 14
2306 #[cfg(feature = "api-14")]
2307 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2308 pub fn OH_Input_CreateAllSystemHotkeys(count: i32) -> *mut *mut Input_Hotkey;
2309 /// Destroys an array of [`Input_Hotkey`] instances and reclaims memory.
2310 ///
2311 /// # Arguments
2312 ///
2313 /// * `hotkeys` - Pointer to an array of [`Input_Hotkey`] instances created by the
2314 /// [`OH_Input_CreateAllSystemHotkeys`] method.
2315 ///
2316 /// * `count` - Count of the array to be destroyed, which must be the same as the number of system shortcut keys.
2317 ///
2318 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2319 ///
2320 /// Available since API-level: 14
2321 #[cfg(feature = "api-14")]
2322 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2323 pub fn OH_Input_DestroyAllSystemHotkeys(hotkeys: *mut *mut Input_Hotkey, count: i32);
2324 /// Obtains all hot keys supported by the system.
2325 ///
2326 /// # Arguments
2327 ///
2328 /// * `hotkey` - Array of [`Input_Hotkey`] instances.
2329 /// When calling this API for the first time, you can pass NULL to obtain the array length.
2330 ///
2331 /// * `count` - Number of hot keys supported by the system.
2332 ///
2333 /// # Returns
2334 ///
2335 /// * OH_Input_GetAllSystemHotkeys status code, specifically,
2336 /// [`INPUT_SUCCESS`] if the operation is successful;
2337 ///
2338 /// [`INPUT_PARAMETER_ERROR`] The hotkey or count is NULL, or the value of count does not match the number
2339 /// of system shortcut keys supported by the system;
2340 /// [`INPUT_DEVICE_NOT_SUPPORTED`] Capability not supported.
2341 ///
2342 ///
2343 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2344 ///
2345 /// Available since API-level: 14
2346 #[cfg(feature = "api-14")]
2347 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2348 pub fn OH_Input_GetAllSystemHotkeys(
2349 hotkey: *mut *mut Input_Hotkey,
2350 count: *mut i32,
2351 ) -> Input_Result;
2352 /// Specifies whether to report repeated key events.
2353 ///
2354 /// # Arguments
2355 ///
2356 /// * `hotkey` - Shortcut key object.
2357 ///
2358 /// * `isRepeat` - Whether to report repeated key events.
2359 /// The value <b>true</b> means to report repeated key events, and the value <b>false</b> means the opposite.
2360 ///
2361 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2362 ///
2363 /// Available since API-level: 14
2364 #[cfg(feature = "api-14")]
2365 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2366 pub fn OH_Input_SetRepeat(hotkey: *mut Input_Hotkey, isRepeat: bool);
2367 /// Checks whether to report repeated key events.
2368 ///
2369 /// # Arguments
2370 ///
2371 /// * `hotkey` - Shortcut key object.
2372 ///
2373 /// * `isRepeat` - Whether a key event is repeated.
2374 ///
2375 /// # Returns
2376 ///
2377 /// * OH_Input_GetIsRepeat status code, specifically,
2378 /// [`INPUT_SUCCESS`] if the operation is successful;
2379 ///
2380 /// [`INPUT_PARAMETER_ERROR`] otherwise;
2381 ///
2382 /// [`INPUT_DEVICE_NOT_SUPPORTED`] Capability not supported.
2383 ///
2384 ///
2385 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2386 ///
2387 /// Available since API-level: 14
2388 #[cfg(feature = "api-14")]
2389 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2390 pub fn OH_Input_GetRepeat(hotkey: *const Input_Hotkey, isRepeat: *mut bool) -> Input_Result;
2391 /// Subscribes to shortcut key events.
2392 ///
2393 /// # Arguments
2394 ///
2395 /// * `hotkey` - Shortcut key object.
2396 ///
2397 /// * `callback` - Callback used to return shortcut key events.
2398 ///
2399 /// # Returns
2400 ///
2401 /// * OH_Input_AddHotkeyMonitor status code, specifically,
2402 /// [`INPUT_SUCCESS`] if the operation is successful;
2403 ///
2404 /// [`INPUT_PARAMETER_ERROR`] if hotkey or callback is NULL;
2405 ///
2406 /// [`INPUT_DEVICE_NOT_SUPPORTED`] Capability not supported;
2407 ///
2408 /// [`INPUT_OCCUPIED_BY_SYSTEM`] The hotkey has been used by the system. You can call the [`GetAllSystemHotkeys`] interface to query all system shortcut keys.
2409 ///
2410 /// [`INPUT_OCCUPIED_BY_OTHER`] The hotkey has been subscribed to by another.
2411 ///
2412 ///
2413 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2414 ///
2415 /// Available since API-level: 14
2416 #[cfg(feature = "api-14")]
2417 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2418 pub fn OH_Input_AddHotkeyMonitor(
2419 hotkey: *const Input_Hotkey,
2420 callback: Input_HotkeyCallback,
2421 ) -> Input_Result;
2422 /// Unsubscribes from shortcut key events.
2423 ///
2424 /// # Arguments
2425 ///
2426 /// * `hotkey` - Shortcut key object.
2427 ///
2428 /// * `callback` - Callback used to return shortcut key events.
2429 ///
2430 /// # Returns
2431 ///
2432 /// * OH_Input_RemoveHotkeyMonitor status code, specifically,
2433 /// [`INPUT_SUCCESS`] if the operation is successful;
2434 ///
2435 /// [`INPUT_PARAMETER_ERROR`] if hotkey or callback is NULL;
2436 ///
2437 /// [`INPUT_DEVICE_NOT_SUPPORTED`] Capability not supported.
2438 ///
2439 ///
2440 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2441 ///
2442 /// Available since API-level: 14
2443 #[cfg(feature = "api-14")]
2444 #[cfg_attr(docsrs, doc(cfg(feature = "api-14")))]
2445 pub fn OH_Input_RemoveHotkeyMonitor(
2446 hotkey: *const Input_Hotkey,
2447 callback: Input_HotkeyCallback,
2448 ) -> Input_Result;
2449 /// Registers a listener for device hot swap events.
2450 ///
2451 /// # Arguments
2452 ///
2453 /// * `listener` - Pointer to an [`Input_DeviceListener`] object.
2454 ///
2455 ///
2456 /// # Returns
2457 ///
2458 /// * OH_Input_RegisterDeviceListener status code, specifically,
2459 /// [`INPUT_SUCCESS`] if the operation is successful;
2460 ///
2461 /// [`INPUT_PARAMETER_ERROR`] if listener is NULL;
2462 ///
2463 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2464 ///
2465 /// Available since API-level: 13
2466 #[cfg(feature = "api-13")]
2467 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2468 pub fn OH_Input_RegisterDeviceListener(listener: *mut Input_DeviceListener) -> Input_Result;
2469 /// Unregisters the listener for device hot swap events.
2470 ///
2471 /// # Arguments
2472 ///
2473 /// * `listener` - Pointer to the listener for device hot swap events. For details, see [`Input_DeviceListener`].
2474 ///
2475 ///
2476 /// # Returns
2477 ///
2478 /// * OH_Input_UnregisterDeviceListener status code, specifically,
2479 /// [`INPUT_SUCCESS`] if the operation is successful;
2480 ///
2481 /// [`INPUT_PARAMETER_ERROR`] if listener is NULL or no listener is registered;
2482 /// [`INPUT_SERVICE_EXCEPTION`] if the service is abnormal.
2483 ///
2484 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2485 ///
2486 /// Available since API-level: 13
2487 #[cfg(feature = "api-13")]
2488 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2489 pub fn OH_Input_UnregisterDeviceListener(listener: *mut Input_DeviceListener) -> Input_Result;
2490 /// Unregisters the listener for all device hot swap events.
2491 ///
2492 ///
2493 /// # Returns
2494 ///
2495 /// * OH_Input_UnregisterDeviceListener status code, specifically,
2496 /// [`INPUT_SUCCESS`] if the operation is successful;
2497 ///
2498 /// [`INPUT_SERVICE_EXCEPTION`] if the service is abnormal.
2499 ///
2500 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2501 ///
2502 /// Available since API-level: 13
2503 #[cfg(feature = "api-13")]
2504 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2505 pub fn OH_Input_UnregisterDeviceListeners() -> Input_Result;
2506 /// Obtains the IDs of all input devices.
2507 ///
2508 /// # Arguments
2509 ///
2510 /// * `deviceIds` - Array of input device IDs.
2511 ///
2512 /// * `inSize` - Size of the array of input device IDs.
2513 ///
2514 /// * `outSize` - Length of the list of input device IDs. The value cannot be greater than the value of inSize.
2515 ///
2516 /// # Returns
2517 ///
2518 /// * OH_Input_GetDeviceIds result code, specifically,
2519 /// [`INPUT_SUCCESS`] if the operation is successful;
2520 /// [`INPUT_PARAMETER_ERROR`] if deviceIds or outSize is a null pointer or inSize is less than 0.
2521 ///
2522 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2523 ///
2524 /// Available since API-level: 13
2525 #[cfg(feature = "api-13")]
2526 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2527 pub fn OH_Input_GetDeviceIds(
2528 deviceIds: *mut i32,
2529 inSize: i32,
2530 outSize: *mut i32,
2531 ) -> Input_Result;
2532 /// Obtains the information about an input device.
2533 ///
2534 /// # Arguments
2535 ///
2536 /// * `deviceId` - Device ID.
2537 ///
2538 /// * `deviceInfo` - Pointer to an [`Input_DeviceInfo`] object.
2539 ///
2540 /// # Returns
2541 ///
2542 /// * OH_Input_GetDevice result code, specifically,
2543 /// [`INPUT_SUCCESS`] if the operation is successful;
2544 /// [`INPUT_PARAMETER_ERROR`] if the deviceInfo is a null pointer or the deviceId is invalid.
2545 /// You can use the [`OH_Input_GetDeviceIds`] interface to query the device IDs supported by the system.
2546 ///
2547 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2548 ///
2549 /// Available since API-level: 13
2550 #[cfg(feature = "api-13")]
2551 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2552 pub fn OH_Input_GetDevice(
2553 deviceId: i32,
2554 deviceInfo: *mut *mut Input_DeviceInfo,
2555 ) -> Input_Result;
2556 /// Creates a deviceInfo object.
2557 ///
2558 ///
2559 /// # Returns
2560 ///
2561 /// * Pointer to an [`Input_DeviceInfo`] object if the operation is successful;
2562 /// a null pointer otherwise (possibly because of a memory allocation failure).
2563 ///
2564 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2565 ///
2566 /// Available since API-level: 13
2567 #[cfg(feature = "api-13")]
2568 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2569 pub fn OH_Input_CreateDeviceInfo() -> *mut Input_DeviceInfo;
2570 /// Destroys a deviceInfo object.
2571 ///
2572 /// # Arguments
2573 ///
2574 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2575 ///
2576 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2577 ///
2578 /// Available since API-level: 13
2579 #[cfg(feature = "api-13")]
2580 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2581 pub fn OH_Input_DestroyDeviceInfo(deviceInfo: *mut *mut Input_DeviceInfo);
2582 /// Obtains the keyboard type of an input device.
2583 ///
2584 /// # Arguments
2585 ///
2586 /// * `deviceId` - Device ID.
2587 ///
2588 /// * `keyboardType` - Pointer to the keyboard type of the input device.
2589 ///
2590 /// # Returns
2591 ///
2592 /// * OH_Input_GetKeyboardType result code, specifically,
2593 /// [`INPUT_SUCCESS`] if the operation is successful;
2594 /// [`INPUT_PARAMETER_ERROR`] if the device ID is invalid or keyboardType is a null pointer.
2595 ///
2596 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2597 ///
2598 /// Available since API-level: 13
2599 #[cfg(feature = "api-13")]
2600 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2601 pub fn OH_Input_GetKeyboardType(deviceId: i32, keyboardType: *mut i32) -> Input_Result;
2602 /// Obtains the ID of an input device.
2603 ///
2604 /// # Arguments
2605 ///
2606 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2607 ///
2608 /// * `id` - Pointer to the ID of the input device.
2609 ///
2610 /// # Returns
2611 ///
2612 /// * OH_Input_GetDeviceId result code, specifically,
2613 /// [`INPUT_SUCCESS`] if the operation is successful;
2614 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or id is a null pointer.
2615 ///
2616 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2617 ///
2618 /// Available since API-level: 13
2619 #[cfg(feature = "api-13")]
2620 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2621 pub fn OH_Input_GetDeviceId(deviceInfo: *mut Input_DeviceInfo, id: *mut i32) -> Input_Result;
2622 /// Obtains the name of an input device.
2623 ///
2624 /// # Arguments
2625 ///
2626 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2627 ///
2628 /// * `name` - Pointer to the name of the input device.
2629 ///
2630 /// # Returns
2631 ///
2632 /// * OH_Input_GetDeviceName result code, specifically,
2633 /// [`INPUT_SUCCESS`] if the operation is successful;
2634 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or name is a null pointer.
2635 ///
2636 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2637 ///
2638 /// Available since API-level: 13
2639 #[cfg(feature = "api-13")]
2640 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2641 pub fn OH_Input_GetDeviceName(
2642 deviceInfo: *mut Input_DeviceInfo,
2643 name: *mut *mut ::core::ffi::c_char,
2644 ) -> Input_Result;
2645 /// Obtains the capabilities of an input device, for example, a touchscreen, touchpad, or keyboard.
2646 ///
2647 /// # Arguments
2648 ///
2649 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2650 ///
2651 /// * `capabilities` - Pointer to the capabilities of the input device.
2652 ///
2653 /// # Returns
2654 ///
2655 /// * OH_Input_GetCapabilities result code, specifically,
2656 /// [`INPUT_SUCCESS`] if the operation is successful;
2657 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or capabilities is a null pointer.
2658 ///
2659 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2660 ///
2661 /// Available since API-level: 13
2662 #[cfg(feature = "api-13")]
2663 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2664 pub fn OH_Input_GetCapabilities(
2665 deviceInfo: *mut Input_DeviceInfo,
2666 capabilities: *mut i32,
2667 ) -> Input_Result;
2668 /// Obtains the version information of an input device.
2669 ///
2670 /// # Arguments
2671 ///
2672 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2673 ///
2674 /// * `version` - Pointer to the version information of the input device.
2675 ///
2676 /// # Returns
2677 ///
2678 /// * OH_Input_GetDeviceVersion result code, specifically,
2679 /// [`INPUT_SUCCESS`] if the operation is successful;
2680 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or version is a null pointer.
2681 ///
2682 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2683 ///
2684 /// Available since API-level: 13
2685 #[cfg(feature = "api-13")]
2686 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2687 pub fn OH_Input_GetDeviceVersion(
2688 deviceInfo: *mut Input_DeviceInfo,
2689 version: *mut i32,
2690 ) -> Input_Result;
2691 /// Obtains the product information of an input device.
2692 ///
2693 /// # Arguments
2694 ///
2695 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2696 ///
2697 /// * `product` - Pointer to the product information of the input device.
2698 ///
2699 /// # Returns
2700 ///
2701 /// * OH_Input_GetDeviceProduct result code, specifically,
2702 /// [`INPUT_SUCCESS`] if the operation is successful;
2703 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or product is a null pointer.
2704 ///
2705 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2706 ///
2707 /// Available since API-level: 13
2708 #[cfg(feature = "api-13")]
2709 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2710 pub fn OH_Input_GetDeviceProduct(
2711 deviceInfo: *mut Input_DeviceInfo,
2712 product: *mut i32,
2713 ) -> Input_Result;
2714 /// Obtains the vendor information of an input device.
2715 ///
2716 /// # Arguments
2717 ///
2718 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2719 ///
2720 /// * `vendor` - Pointer to the vendor information of the input device.
2721 ///
2722 /// # Returns
2723 ///
2724 /// * OH_Input_GetDeviceVendor result code, specifically,
2725 /// [`INPUT_SUCCESS`] if the operation is successful;
2726 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or vendor is a null pointer.
2727 ///
2728 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2729 ///
2730 /// Available since API-level: 13
2731 #[cfg(feature = "api-13")]
2732 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2733 pub fn OH_Input_GetDeviceVendor(
2734 deviceInfo: *mut Input_DeviceInfo,
2735 vendor: *mut i32,
2736 ) -> Input_Result;
2737 /// Obtains the physical address of an input device.
2738 ///
2739 /// # Arguments
2740 ///
2741 /// * `deviceInfo` - information object. For details, see [`Input_DeviceInfo`].
2742 ///
2743 /// * `address` - Pointer to the physical address of the input device.
2744 ///
2745 /// # Returns
2746 ///
2747 /// * OH_Input_GetDeviceAddress result code, specifically,
2748 /// [`INPUT_SUCCESS`] if the operation is successful;
2749 /// [`INPUT_PARAMETER_ERROR`] if deviceInfo or address is a null pointer.
2750 ///
2751 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2752 ///
2753 /// Available since API-level: 13
2754 #[cfg(feature = "api-13")]
2755 #[cfg_attr(docsrs, doc(cfg(feature = "api-13")))]
2756 pub fn OH_Input_GetDeviceAddress(
2757 deviceInfo: *mut Input_DeviceInfo,
2758 address: *mut *mut ::core::ffi::c_char,
2759 ) -> Input_Result;
2760 /// Obtains the function key status.
2761 ///
2762 /// # Arguments
2763 ///
2764 /// * `keyCode` - Function key value. Supported function keys include capsLock, NumLock, and ScrollLock.
2765 ///
2766 /// * `state` - Function key status. The value 0 indicates that the function key is disabled,
2767 /// and the value 1 indicates the opposite.
2768 ///
2769 /// # Returns
2770 ///
2771 /// * OH_Input_GetFunctionKeyState function api result code
2772 /// [`INPUT_SUCCESS`] if the operation is successful;
2773 /// [`INPUT_PARAMETER_ERROR`] if keyCode is invalid or state is a null pointer.
2774 /// [`INPUT_KEYBOARD_DEVICE_NOT_EXIST`] no keyboard device connected.
2775 ///
2776 /// Required System Capabilities: SystemCapability.MultimodalInput.Input.Core
2777 ///
2778 /// Available since API-level: 15
2779 #[cfg(feature = "api-15")]
2780 #[cfg_attr(docsrs, doc(cfg(feature = "api-15")))]
2781 pub fn OH_Input_GetFunctionKeyState(keyCode: i32, state: *mut i32) -> Input_Result;
2782}