/*
* This file is auto - generated . Modifications will be lost .
*
* See https : //android.googlesource.com/platform/bionic/+/master/libc/kernel/
* for more information .
*/
#ifndef _UAPI_INPUT_H
#define _UAPI_INPUT_H
#include <sys/time.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <linux/types.h>
#include "input-event-codes.h"
struct input_event {
#if __BITS_PER_LONG != 32 || !defined (__USE_TIME_BITS64)
struct timeval time;
#define input_event_sec time.tv_sec
#define input_event_usec time.tv_usec
#else
__kernel_ulong_t __sec;
#if defined (__sparc__) && defined (__arch64__)
unsigned int __usec;
unsigned int __pad;
#else
__kernel_ulong_t __usec;
#endif
#define input_event_sec __sec
#define input_event_usec __usec
#endif
__u16 type;
__u16 code;
__s32 value;
};
#define EV_VERSION 0 x010001
struct input_id {
__u16 bustype;
__u16 vendor;
__u16 product;
__u16 version;
};
struct input_absinfo {
__s32 value;
__s32 minimum;
__s32 maximum;
__s32 fuzz;
__s32 flat;
__s32 resolution;
};
struct input_keymap_entry {
#define INPUT_KEYMAP_BY_INDEX (1 << 0 )
__u8 flags;
__u8 len;
__u16 index;
__u32 keycode;
__u8 scancode[32 ];
};
struct input_mask {
__u32 type;
__u32 codes_size;
__u64 codes_ptr;
};
#define EVIOCGVERSION _IOR('E' , 0 x01, int )
#define EVIOCGID _IOR('E' , 0 x02, struct input_id)
#define EVIOCGREP _IOR('E' , 0 x03, unsigned int [2 ])
#define EVIOCSREP _IOW('E' , 0 x03, unsigned int [2 ])
#define EVIOCGKEYCODE _IOR('E' , 0 x04, unsigned int [2 ])
#define EVIOCGKEYCODE_V2 _IOR('E' , 0 x04, struct input_keymap_entry)
#define EVIOCSKEYCODE _IOW('E' , 0 x04, unsigned int [2 ])
#define EVIOCSKEYCODE_V2 _IOW('E' , 0 x04, struct input_keymap_entry)
#define EVIOCGNAME(len) _IOC(_IOC_READ, 'E' , 0 x06, len)
#define EVIOCGPHYS(len) _IOC(_IOC_READ, 'E' , 0 x07, len)
#define EVIOCGUNIQ(len) _IOC(_IOC_READ, 'E' , 0 x08, len)
#define EVIOCGPROP(len) _IOC(_IOC_READ, 'E' , 0 x09, len)
#define EVIOCGMTSLOTS(len) _IOC(_IOC_READ, 'E' , 0 x0a, len)
#define EVIOCGKEY(len) _IOC(_IOC_READ, 'E' , 0 x18, len)
#define EVIOCGLED(len) _IOC(_IOC_READ, 'E' , 0 x19, len)
#define EVIOCGSND(len) _IOC(_IOC_READ, 'E' , 0 x1a, len)
#define EVIOCGSW(len) _IOC(_IOC_READ, 'E' , 0 x1b, len)
#define EVIOCGBIT(ev,len) _IOC(_IOC_READ, 'E' , 0 x20 + (ev), len)
#define EVIOCGABS(abs) _IOR('E' , 0 x40 + (abs), struct input_absinfo)
#define EVIOCSABS(abs) _IOW('E' , 0 xc0 + (abs), struct input_absinfo)
#define EVIOCSFF _IOW('E' , 0 x80, struct ff_effect)
#define EVIOCRMFF _IOW('E' , 0 x81, int )
#define EVIOCGEFFECTS _IOR('E' , 0 x84, int )
#define EVIOCGRAB _IOW('E' , 0 x90, int )
#define EVIOCREVOKE _IOW('E' , 0 x91, int )
#define EVIOCGMASK _IOR('E' , 0 x92, struct input_mask)
#define EVIOCSMASK _IOW('E' , 0 x93, struct input_mask)
#define EVIOCSCLOCKID _IOW('E' , 0 xa0, int )
#define ID_BUS 0
#define ID_VENDOR 1
#define ID_PRODUCT 2
#define ID_VERSION 3
#define BUS_PCI 0 x01
#define BUS_ISAPNP 0 x02
#define BUS_USB 0 x03
#define BUS_HIL 0 x04
#define BUS_BLUETOOTH 0 x05
#define BUS_VIRTUAL 0 x06
#define BUS_ISA 0 x10
#define BUS_I8042 0 x11
#define BUS_XTKBD 0 x12
#define BUS_RS232 0 x13
#define BUS_GAMEPORT 0 x14
#define BUS_PARPORT 0 x15
#define BUS_AMIGA 0 x16
#define BUS_ADB 0 x17
#define BUS_I2C 0 x18
#define BUS_HOST 0 x19
#define BUS_GSC 0 x1A
#define BUS_ATARI 0 x1B
#define BUS_SPI 0 x1C
#define BUS_RMI 0 x1D
#define BUS_CEC 0 x1E
#define BUS_INTEL_ISHTP 0 x1F
#define BUS_AMD_SFH 0 x20
#define BUS_SDW 0 x21
#define MT_TOOL_FINGER 0 x00
#define MT_TOOL_PEN 0 x01
#define MT_TOOL_PALM 0 x02
#define MT_TOOL_DIAL 0 x0a
#define MT_TOOL_MAX 0 x0f
#define FF_STATUS_STOPPED 0 x00
#define FF_STATUS_PLAYING 0 x01
#define FF_STATUS_MAX 0 x01
struct ff_replay {
__u16 length;
__u16 delay;
};
struct ff_trigger {
__u16 button;
__u16 interval;
};
struct ff_envelope {
__u16 attack_length;
__u16 attack_level;
__u16 fade_length;
__u16 fade_level;
};
struct ff_constant_effect {
__s16 level;
struct ff_envelope envelope;
};
struct ff_ramp_effect {
__s16 start_level;
__s16 end_level;
struct ff_envelope envelope;
};
struct ff_condition_effect {
__u16 right_saturation;
__u16 left_saturation;
__s16 right_coeff;
__s16 left_coeff;
__u16 deadband;
__s16 center;
};
struct ff_periodic_effect {
__u16 waveform;
__u16 period;
__s16 magnitude;
__s16 offset;
__u16 phase;
struct ff_envelope envelope;
__u32 custom_len;
__s16 * custom_data;
};
struct ff_rumble_effect {
__u16 strong_magnitude;
__u16 weak_magnitude;
};
struct ff_haptic_effect {
__u16 hid_usage;
__u16 vendor_id;
__u8 vendor_waveform_page;
__u16 intensity;
__u16 repeat_count;
__u16 retrigger_period;
};
struct ff_effect {
__u16 type;
__s16 id;
__u16 direction;
struct ff_trigger trigger;
struct ff_replay replay;
union {
struct ff_constant_effect constant;
struct ff_ramp_effect ramp;
struct ff_periodic_effect periodic;
struct ff_condition_effect condition[2 ];
struct ff_rumble_effect rumble;
struct ff_haptic_effect haptic;
} u;
};
#define FF_HAPTIC 0 x4f
#define FF_RUMBLE 0 x50
#define FF_PERIODIC 0 x51
#define FF_CONSTANT 0 x52
#define FF_SPRING 0 x53
#define FF_FRICTION 0 x54
#define FF_DAMPER 0 x55
#define FF_INERTIA 0 x56
#define FF_RAMP 0 x57
#define FF_EFFECT_MIN FF_HAPTIC
#define FF_EFFECT_MAX FF_RAMP
#define FF_SQUARE 0 x58
#define FF_TRIANGLE 0 x59
#define FF_SINE 0 x5a
#define FF_SAW_UP 0 x5b
#define FF_SAW_DOWN 0 x5c
#define FF_CUSTOM 0 x5d
#define FF_WAVEFORM_MIN FF_SQUARE
#define FF_WAVEFORM_MAX FF_CUSTOM
#define FF_GAIN 0 x60
#define FF_AUTOCENTER 0 x61
#define FF_MAX_EFFECTS FF_GAIN
#define FF_MAX 0 x7f
#define FF_CNT (FF_MAX + 1 )
#endif
Messung V0.5 in Prozent C=85 H=96 G=90
¤ Dauer der Verarbeitung: 0.9 Sekunden
(vorverarbeitet am 2026-06-28)
¤
*© Formatika GbR, Deutschland