/usr/share/doc/libevdev-dev/html/kernel_header.html is in libevdev-dev 1.0.99.2+dfsg-2ubuntu2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>libevdev: Kernel header</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="libevdev.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">libevdev
 <span id="projectnumber">1.0.99.2</span>
</div>
<div id="projectbrief">A wrapper library for evdev devices</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main Page</span></a></li>
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Pages</a></div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Kernel header </div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>libevdev provides its own copy of the Linux kernel header file and compiles against the definitions define here.</p>
<p>Event type and event code names, etc. are taken from the file below: </p>
<div class="fragment"><div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Copyright (c) 1999-2002 Vojtech Pavlik</span></div>
<div class="line"><span class="comment"> *</span></div>
<div class="line"><span class="comment"> * This program is free software; you can redistribute it and/or modify it</span></div>
<div class="line"><span class="comment"> * under the terms of the GNU General Public License version 2 as published by</span></div>
<div class="line"><span class="comment"> * the Free Software Foundation.</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"><span class="preprocessor">#ifndef _INPUT_H</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define _INPUT_H</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#include <sys/time.h></span></div>
<div class="line"><span class="preprocessor">#include <sys/ioctl.h></span></div>
<div class="line"><span class="preprocessor">#include <sys/types.h></span></div>
<div class="line"><span class="preprocessor">#include <linux/types.h></span></div>
<div class="line"></div>
<div class="line"></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * The event structure itself</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>input_event {</div>
<div class="line"> <span class="keyword">struct </span>timeval time;</div>
<div class="line"> __u16 type;</div>
<div class="line"> __u16 code;</div>
<div class="line"> __s32 value;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Protocol version.</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define EV_VERSION 0x010001</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * IOCTLs (0x00 - 0x7f)</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>input_id {</div>
<div class="line"> __u16 bustype;</div>
<div class="line"> __u16 vendor;</div>
<div class="line"> __u16 product;</div>
<div class="line"> __u16 version;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>input_absinfo {</div>
<div class="line"> __s32 value;</div>
<div class="line"> __s32 minimum;</div>
<div class="line"> __s32 maximum;</div>
<div class="line"> __s32 fuzz;</div>
<div class="line"> __s32 flat;</div>
<div class="line"> __s32 resolution;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>input_keymap_entry {</div>
<div class="line"><span class="preprocessor">#define INPUT_KEYMAP_BY_INDEX (1 << 0)</span></div>
<div class="line"><span class="preprocessor"></span> __u8 flags;</div>
<div class="line"> __u8 len;</div>
<div class="line"> __u16 index;</div>
<div class="line"> __u32 keycode;</div>
<div class="line"> __u8 scancode[32];</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define EVIOCGVERSION _IOR('E', 0x01, int) </span><span class="comment">/* get driver version */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGID _IOR('E', 0x02, struct input_id) </span><span class="comment">/* get device ID */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGREP _IOR('E', 0x03, unsigned int[2]) </span><span class="comment">/* get repeat settings */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCSREP _IOW('E', 0x03, unsigned int[2]) </span><span class="comment">/* set repeat settings */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCGKEYCODE _IOR('E', 0x04, unsigned int[2]) </span><span class="comment">/* get keycode */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGKEYCODE_V2 _IOR('E', 0x04, struct input_keymap_entry)</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCSKEYCODE _IOW('E', 0x04, unsigned int[2]) </span><span class="comment">/* set keycode */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCSKEYCODE_V2 _IOW('E', 0x04, struct input_keymap_entry)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCGNAME(len) _IOC(_IOC_READ, 'E', 0x06, len) </span><span class="comment">/* get device name */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGPHYS(len) _IOC(_IOC_READ, 'E', 0x07, len) </span><span class="comment">/* get physical location */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGUNIQ(len) _IOC(_IOC_READ, 'E', 0x08, len) </span><span class="comment">/* get unique identifier */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGPROP(len) _IOC(_IOC_READ, 'E', 0x09, len) </span><span class="comment">/* get device properties */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCGMTSLOTS(len) _IOC(_IOC_READ, 'E', 0x0a, len)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCGKEY(len) _IOC(_IOC_READ, 'E', 0x18, len) </span><span class="comment">/* get global key state */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGLED(len) _IOC(_IOC_READ, 'E', 0x19, len) </span><span class="comment">/* get all LEDs */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGSND(len) _IOC(_IOC_READ, 'E', 0x1a, len) </span><span class="comment">/* get all sounds status */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGSW(len) _IOC(_IOC_READ, 'E', 0x1b, len) </span><span class="comment">/* get all switch states */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCGBIT(ev,len) _IOC(_IOC_READ, 'E', 0x20 + (ev), len) </span><span class="comment">/* get event bits */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGABS(abs) _IOR('E', 0x40 + (abs), struct input_absinfo) </span><span class="comment">/* get abs value/limits */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCSABS(abs) _IOW('E', 0xc0 + (abs), struct input_absinfo) </span><span class="comment">/* set abs value/limits */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCSFF _IOC(_IOC_WRITE, 'E', 0x80, sizeof(struct ff_effect)) </span><span class="comment">/* send a force effect to a force feedback device */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCRMFF _IOW('E', 0x81, int) </span><span class="comment">/* Erase a force effect */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCGEFFECTS _IOR('E', 0x84, int) </span><span class="comment">/* Report number of effects playable at the same time */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCGRAB _IOW('E', 0x90, int) </span><span class="comment">/* Grab/Release device */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EVIOCREVOKE _IOW('E', 0x91, int) </span><span class="comment">/* Revoke device access */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define EVIOCSCLOCKID _IOW('E', 0xa0, int) </span><span class="comment">/* Set clockid to be used for timestamps */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Device properties and quirks</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define INPUT_PROP_POINTER 0x00 </span><span class="comment">/* needs a pointer */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define INPUT_PROP_DIRECT 0x01 </span><span class="comment">/* direct input devices */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define INPUT_PROP_BUTTONPAD 0x02 </span><span class="comment">/* has button(s) under pad */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define INPUT_PROP_SEMI_MT 0x03 </span><span class="comment">/* touch rectangle only */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define INPUT_PROP_MAX 0x1f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define INPUT_PROP_CNT (INPUT_PROP_MAX + 1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Event types</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define EV_SYN 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_KEY 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_REL 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_ABS 0x03</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_MSC 0x04</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_SW 0x05</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_LED 0x11</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_SND 0x12</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_REP 0x14</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_FF 0x15</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_PWR 0x16</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_FF_STATUS 0x17</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_MAX 0x1f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define EV_CNT (EV_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Synchronization events.</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define SYN_REPORT 0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SYN_CONFIG 1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SYN_MT_REPORT 2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SYN_DROPPED 3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SYN_MAX 0xf</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SYN_CNT (SYN_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Keys and buttons</span></div>
<div class="line"><span class="comment"> *</span></div>
<div class="line"><span class="comment"> * Most of the keys/buttons are modeled after USB HUT 1.12</span></div>
<div class="line"><span class="comment"> * (see http://www.usb.org/developers/hidpage).</span></div>
<div class="line"><span class="comment"> * Abbreviations in the comments:</span></div>
<div class="line"><span class="comment"> * AC - Application Control</span></div>
<div class="line"><span class="comment"> * AL - Application Launch Button</span></div>
<div class="line"><span class="comment"> * SC - System Control</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define KEY_RESERVED 0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ESC 1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_1 2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_2 3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_3 4</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_4 5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_5 6</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_6 7</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_7 8</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_8 9</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_9 10</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_0 11</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MINUS 12</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EQUAL 13</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BACKSPACE 14</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TAB 15</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_Q 16</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_W 17</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_E 18</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_R 19</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_T 20</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_Y 21</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_U 22</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_I 23</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_O 24</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_P 25</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LEFTBRACE 26</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RIGHTBRACE 27</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ENTER 28</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LEFTCTRL 29</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_A 30</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_S 31</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_D 32</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F 33</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_G 34</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_H 35</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_J 36</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_K 37</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_L 38</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SEMICOLON 39</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_APOSTROPHE 40</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_GRAVE 41</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LEFTSHIFT 42</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BACKSLASH 43</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_Z 44</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_X 45</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_C 46</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_V 47</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_B 48</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_N 49</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_M 50</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_COMMA 51</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DOT 52</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SLASH 53</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RIGHTSHIFT 54</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPASTERISK 55</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LEFTALT 56</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SPACE 57</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAPSLOCK 58</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F1 59</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F2 60</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F3 61</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F4 62</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F5 63</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F6 64</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F7 65</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F8 66</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F9 67</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F10 68</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMLOCK 69</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SCROLLLOCK 70</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP7 71</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP8 72</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP9 73</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPMINUS 74</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP4 75</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP5 76</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP6 77</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPPLUS 78</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP1 79</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP2 80</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP3 81</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KP0 82</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPDOT 83</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_ZENKAKUHANKAKU 85</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_102ND 86</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F11 87</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F12 88</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RO 89</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KATAKANA 90</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HIRAGANA 91</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HENKAN 92</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KATAKANAHIRAGANA 93</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MUHENKAN 94</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPJPCOMMA 95</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPENTER 96</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RIGHTCTRL 97</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPSLASH 98</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SYSRQ 99</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RIGHTALT 100</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LINEFEED 101</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HOME 102</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_UP 103</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PAGEUP 104</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LEFT 105</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RIGHT 106</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_END 107</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DOWN 108</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PAGEDOWN 109</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_INSERT 110</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DELETE 111</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MACRO 112</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MUTE 113</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VOLUMEDOWN 114</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VOLUMEUP 115</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_POWER 116 </span><span class="comment">/* SC System Power Down */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPEQUAL 117</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPPLUSMINUS 118</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PAUSE 119</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SCALE 120 </span><span class="comment">/* AL Compiz Scale (Expose) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_KPCOMMA 121</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HANGEUL 122</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HANGUEL KEY_HANGEUL</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HANJA 123</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_YEN 124</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LEFTMETA 125</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RIGHTMETA 126</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_COMPOSE 127</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_STOP 128 </span><span class="comment">/* AC Stop */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_AGAIN 129</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PROPS 130 </span><span class="comment">/* AC Properties */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_UNDO 131 </span><span class="comment">/* AC Undo */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FRONT 132</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_COPY 133 </span><span class="comment">/* AC Copy */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_OPEN 134 </span><span class="comment">/* AC Open */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PASTE 135 </span><span class="comment">/* AC Paste */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FIND 136 </span><span class="comment">/* AC Search */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CUT 137 </span><span class="comment">/* AC Cut */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HELP 138 </span><span class="comment">/* AL Integrated Help Center */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MENU 139 </span><span class="comment">/* Menu (show menu) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CALC 140 </span><span class="comment">/* AL Calculator */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SETUP 141</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SLEEP 142 </span><span class="comment">/* SC System Sleep */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_WAKEUP 143 </span><span class="comment">/* System Wake Up */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FILE 144 </span><span class="comment">/* AL Local Machine Browser */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SENDFILE 145</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DELETEFILE 146</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_XFER 147</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PROG1 148</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PROG2 149</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_WWW 150 </span><span class="comment">/* AL Internet Browser */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MSDOS 151</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_COFFEE 152 </span><span class="comment">/* AL Terminal Lock/Screensaver */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SCREENLOCK KEY_COFFEE</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DIRECTION 153</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CYCLEWINDOWS 154</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MAIL 155</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BOOKMARKS 156 </span><span class="comment">/* AC Bookmarks */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_COMPUTER 157</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BACK 158 </span><span class="comment">/* AC Back */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FORWARD 159 </span><span class="comment">/* AC Forward */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CLOSECD 160</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EJECTCD 161</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EJECTCLOSECD 162</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NEXTSONG 163</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PLAYPAUSE 164</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PREVIOUSSONG 165</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_STOPCD 166</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RECORD 167</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_REWIND 168</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PHONE 169 </span><span class="comment">/* Media Select Telephone */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ISO 170</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CONFIG 171 </span><span class="comment">/* AL Consumer Control Configuration */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HOMEPAGE 172 </span><span class="comment">/* AC Home */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_REFRESH 173 </span><span class="comment">/* AC Refresh */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EXIT 174 </span><span class="comment">/* AC Exit */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MOVE 175</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EDIT 176</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SCROLLUP 177</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SCROLLDOWN 178</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPLEFTPAREN 179</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KPRIGHTPAREN 180</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NEW 181 </span><span class="comment">/* AC New */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_REDO 182 </span><span class="comment">/* AC Redo/Repeat */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_F13 183</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F14 184</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F15 185</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F16 186</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F17 187</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F18 188</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F19 189</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F20 190</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F21 191</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F22 192</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F23 193</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_F24 194</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_PLAYCD 200</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PAUSECD 201</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PROG3 202</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PROG4 203</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DASHBOARD 204 </span><span class="comment">/* AL Dashboard */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SUSPEND 205</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CLOSE 206 </span><span class="comment">/* AC Close */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PLAY 207</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FASTFORWARD 208</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BASSBOOST 209</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PRINT 210 </span><span class="comment">/* AC Print */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_HP 211</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAMERA 212</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SOUND 213</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_QUESTION 214</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EMAIL 215</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CHAT 216</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SEARCH 217</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CONNECT 218</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FINANCE 219 </span><span class="comment">/* AL Checkbook/Finance */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SPORT 220</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SHOP 221</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ALTERASE 222</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CANCEL 223 </span><span class="comment">/* AC Cancel */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRIGHTNESSDOWN 224</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRIGHTNESSUP 225</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MEDIA 226</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_SWITCHVIDEOMODE 227 </span><span class="comment">/* Cycle between available video</span></div>
<div class="line"><span class="comment"> outputs (Monitor/LCD/TV-out/etc) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KBDILLUMTOGGLE 228</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KBDILLUMDOWN 229</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KBDILLUMUP 230</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_SEND 231 </span><span class="comment">/* AC Send */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_REPLY 232 </span><span class="comment">/* AC Reply */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FORWARDMAIL 233 </span><span class="comment">/* AC Forward Msg */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SAVE 234 </span><span class="comment">/* AC Save */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DOCUMENTS 235</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_BATTERY 236</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_BLUETOOTH 237</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_WLAN 238</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_UWB 239</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_UNKNOWN 240</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_VIDEO_NEXT 241 </span><span class="comment">/* drive next video source */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VIDEO_PREV 242 </span><span class="comment">/* drive previous video source */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRIGHTNESS_CYCLE 243 </span><span class="comment">/* brightness up, after max is min */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRIGHTNESS_ZERO 244 </span><span class="comment">/* brightness off, use ambient */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DISPLAY_OFF 245 </span><span class="comment">/* display device to off state */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_WWAN 246 </span><span class="comment">/* Wireless WAN (LTE, UMTS, GSM, etc.) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_WIMAX KEY_WWAN</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RFKILL 247 </span><span class="comment">/* Key that controls all radios */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_MICMUTE 248 </span><span class="comment">/* Mute / unmute the microphone */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/* Code 255 is reserved for special needs of AT keyboard driver */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define BTN_MISC 0x100</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_0 0x100</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_1 0x101</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_2 0x102</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_3 0x103</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_4 0x104</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_5 0x105</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_6 0x106</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_7 0x107</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_8 0x108</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_9 0x109</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_MOUSE 0x110</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_LEFT 0x110</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_RIGHT 0x111</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_MIDDLE 0x112</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_SIDE 0x113</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_EXTRA 0x114</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_FORWARD 0x115</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BACK 0x116</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TASK 0x117</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_JOYSTICK 0x120</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER 0x120</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_THUMB 0x121</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_THUMB2 0x122</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOP 0x123</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOP2 0x124</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_PINKIE 0x125</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BASE 0x126</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BASE2 0x127</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BASE3 0x128</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BASE4 0x129</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BASE5 0x12a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_BASE6 0x12b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_DEAD 0x12f</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_GAMEPAD 0x130</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_SOUTH 0x130</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_A BTN_SOUTH</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_EAST 0x131</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_B BTN_EAST</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_C 0x132</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_NORTH 0x133</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_X BTN_NORTH</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_WEST 0x134</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_Y BTN_WEST</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_Z 0x135</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TL 0x136</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TR 0x137</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TL2 0x138</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TR2 0x139</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_SELECT 0x13a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_START 0x13b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_MODE 0x13c</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_THUMBL 0x13d</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_THUMBR 0x13e</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_DIGI 0x140</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_PEN 0x140</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_RUBBER 0x141</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_BRUSH 0x142</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_PENCIL 0x143</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_AIRBRUSH 0x144</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_FINGER 0x145</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_MOUSE 0x146</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_LENS 0x147</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_QUINTTAP 0x148 </span><span class="comment">/* Five fingers on trackpad */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOUCH 0x14a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_STYLUS 0x14b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_STYLUS2 0x14c</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_DOUBLETAP 0x14d</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_TRIPLETAP 0x14e</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TOOL_QUADTAP 0x14f </span><span class="comment">/* Four fingers on trackpad */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_WHEEL 0x150</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_GEAR_DOWN 0x150</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_GEAR_UP 0x151</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_OK 0x160</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SELECT 0x161</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_GOTO 0x162</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CLEAR 0x163</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_POWER2 0x164</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_OPTION 0x165</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_INFO 0x166 </span><span class="comment">/* AL OEM Features/Tips/Tutorial */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TIME 0x167</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VENDOR 0x168</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ARCHIVE 0x169</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PROGRAM 0x16a </span><span class="comment">/* Media Select Program Guide */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CHANNEL 0x16b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FAVORITES 0x16c</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EPG 0x16d</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PVR 0x16e </span><span class="comment">/* Media Select Home */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MHP 0x16f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LANGUAGE 0x170</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TITLE 0x171</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SUBTITLE 0x172</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ANGLE 0x173</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ZOOM 0x174</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MODE 0x175</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_KEYBOARD 0x176</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SCREEN 0x177</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PC 0x178 </span><span class="comment">/* Media Select Computer */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TV 0x179 </span><span class="comment">/* Media Select TV */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TV2 0x17a </span><span class="comment">/* Media Select Cable */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VCR 0x17b </span><span class="comment">/* Media Select VCR */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VCR2 0x17c </span><span class="comment">/* VCR Plus */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SAT 0x17d </span><span class="comment">/* Media Select Satellite */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SAT2 0x17e</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CD 0x17f </span><span class="comment">/* Media Select CD */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TAPE 0x180 </span><span class="comment">/* Media Select Tape */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RADIO 0x181</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TUNER 0x182 </span><span class="comment">/* Media Select Tuner */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PLAYER 0x183</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TEXT 0x184</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DVD 0x185 </span><span class="comment">/* Media Select DVD */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_AUX 0x186</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MP3 0x187</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_AUDIO 0x188 </span><span class="comment">/* AL Audio Browser */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VIDEO 0x189 </span><span class="comment">/* AL Movie Browser */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DIRECTORY 0x18a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LIST 0x18b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MEMO 0x18c </span><span class="comment">/* Media Select Messages */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CALENDAR 0x18d</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RED 0x18e</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_GREEN 0x18f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_YELLOW 0x190</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BLUE 0x191</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CHANNELUP 0x192 </span><span class="comment">/* Channel Increment */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CHANNELDOWN 0x193 </span><span class="comment">/* Channel Decrement */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FIRST 0x194</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LAST 0x195 </span><span class="comment">/* Recall Last */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_AB 0x196</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NEXT 0x197</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_RESTART 0x198</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SLOW 0x199</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SHUFFLE 0x19a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BREAK 0x19b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PREVIOUS 0x19c</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DIGITS 0x19d</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TEEN 0x19e</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TWEN 0x19f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VIDEOPHONE 0x1a0 </span><span class="comment">/* Media Select Video Phone */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_GAMES 0x1a1 </span><span class="comment">/* Media Select Games */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ZOOMIN 0x1a2 </span><span class="comment">/* AC Zoom In */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ZOOMOUT 0x1a3 </span><span class="comment">/* AC Zoom Out */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ZOOMRESET 0x1a4 </span><span class="comment">/* AC Zoom */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_WORDPROCESSOR 0x1a5 </span><span class="comment">/* AL Word Processor */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EDITOR 0x1a6 </span><span class="comment">/* AL Text Editor */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SPREADSHEET 0x1a7 </span><span class="comment">/* AL Spreadsheet */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_GRAPHICSEDITOR 0x1a8 </span><span class="comment">/* AL Graphics Editor */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_PRESENTATION 0x1a9 </span><span class="comment">/* AL Presentation App */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DATABASE 0x1aa </span><span class="comment">/* AL Database App */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NEWS 0x1ab </span><span class="comment">/* AL Newsreader */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_VOICEMAIL 0x1ac </span><span class="comment">/* AL Voicemail */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ADDRESSBOOK 0x1ad </span><span class="comment">/* AL Contacts/Address Book */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MESSENGER 0x1ae </span><span class="comment">/* AL Instant Messaging */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DISPLAYTOGGLE 0x1af </span><span class="comment">/* Turn display (LCD) on and off */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_SPELLCHECK 0x1b0 </span><span class="comment">/* AL Spell Check */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LOGOFF 0x1b1 </span><span class="comment">/* AL Logoff */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_DOLLAR 0x1b2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_EURO 0x1b3</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_FRAMEBACK 0x1b4 </span><span class="comment">/* Consumer - transport controls */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FRAMEFORWARD 0x1b5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CONTEXT_MENU 0x1b6 </span><span class="comment">/* GenDesc - system context menu */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MEDIA_REPEAT 0x1b7 </span><span class="comment">/* Consumer - transport control */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_10CHANNELSUP 0x1b8 </span><span class="comment">/* 10 channels up (10+) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_10CHANNELSDOWN 0x1b9 </span><span class="comment">/* 10 channels down (10-) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_IMAGES 0x1ba </span><span class="comment">/* AL Image Browser */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_DEL_EOL 0x1c0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DEL_EOS 0x1c1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_INS_LINE 0x1c2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_DEL_LINE 0x1c3</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_FN 0x1d0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_ESC 0x1d1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F1 0x1d2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F2 0x1d3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F3 0x1d4</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F4 0x1d5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F5 0x1d6</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F6 0x1d7</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F7 0x1d8</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F8 0x1d9</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F9 0x1da</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F10 0x1db</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F11 0x1dc</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F12 0x1dd</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_1 0x1de</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_2 0x1df</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_D 0x1e0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_E 0x1e1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_F 0x1e2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_S 0x1e3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_FN_B 0x1e4</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_BRL_DOT1 0x1f1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT2 0x1f2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT3 0x1f3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT4 0x1f4</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT5 0x1f5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT6 0x1f6</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT7 0x1f7</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT8 0x1f8</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT9 0x1f9</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_BRL_DOT10 0x1fa</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_NUMERIC_0 0x200 </span><span class="comment">/* used by phones, remote controls, */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_1 0x201 </span><span class="comment">/* and other keypads */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_2 0x202</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_3 0x203</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_4 0x204</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_5 0x205</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_6 0x206</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_7 0x207</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_8 0x208</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_9 0x209</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_STAR 0x20a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_NUMERIC_POUND 0x20b</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_CAMERA_FOCUS 0x210</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_WPS_BUTTON 0x211 </span><span class="comment">/* WiFi Protected Setup key */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_TOUCHPAD_TOGGLE 0x212 </span><span class="comment">/* Request switch touchpad on or off */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TOUCHPAD_ON 0x213</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_TOUCHPAD_OFF 0x214</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_CAMERA_ZOOMIN 0x215</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAMERA_ZOOMOUT 0x216</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAMERA_UP 0x217</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAMERA_DOWN 0x218</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAMERA_LEFT 0x219</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CAMERA_RIGHT 0x21a</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_ATTENDANT_ON 0x21b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ATTENDANT_OFF 0x21c</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_ATTENDANT_TOGGLE 0x21d </span><span class="comment">/* Attendant call on or off */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_LIGHTS_TOGGLE 0x21e </span><span class="comment">/* Reading light on or off */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_DPAD_UP 0x220</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_DPAD_DOWN 0x221</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_DPAD_LEFT 0x222</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_DPAD_RIGHT 0x223</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define KEY_ALS_TOGGLE 0x230 </span><span class="comment">/* Ambient light sensor */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BTN_TRIGGER_HAPPY 0x2c0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY1 0x2c0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY2 0x2c1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY3 0x2c2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY4 0x2c3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY5 0x2c4</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY6 0x2c5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY7 0x2c6</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY8 0x2c7</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY9 0x2c8</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY10 0x2c9</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY11 0x2ca</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY12 0x2cb</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY13 0x2cc</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY14 0x2cd</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY15 0x2ce</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY16 0x2cf</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY17 0x2d0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY18 0x2d1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY19 0x2d2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY20 0x2d3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY21 0x2d4</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY22 0x2d5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY23 0x2d6</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY24 0x2d7</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY25 0x2d8</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY26 0x2d9</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY27 0x2da</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY28 0x2db</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY29 0x2dc</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY30 0x2dd</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY31 0x2de</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY32 0x2df</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY33 0x2e0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY34 0x2e1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY35 0x2e2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY36 0x2e3</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY37 0x2e4</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY38 0x2e5</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY39 0x2e6</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BTN_TRIGGER_HAPPY40 0x2e7</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/* We avoid low common keys in module aliases so they don't get huge. */</span></div>
<div class="line"><span class="preprocessor">#define KEY_MIN_INTERESTING KEY_MUTE</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_MAX 0x2ff</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define KEY_CNT (KEY_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Relative axes</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define REL_X 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_Y 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_Z 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_RX 0x03</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_RY 0x04</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_RZ 0x05</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_HWHEEL 0x06</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_DIAL 0x07</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_WHEEL 0x08</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_MISC 0x09</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_MAX 0x0f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REL_CNT (REL_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Absolute axes</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define ABS_X 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_Y 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_Z 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_RX 0x03</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_RY 0x04</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_RZ 0x05</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_THROTTLE 0x06</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_RUDDER 0x07</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_WHEEL 0x08</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_GAS 0x09</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_BRAKE 0x0a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT0X 0x10</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT0Y 0x11</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT1X 0x12</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT1Y 0x13</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT2X 0x14</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT2Y 0x15</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT3X 0x16</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_HAT3Y 0x17</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_PRESSURE 0x18</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_DISTANCE 0x19</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_TILT_X 0x1a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_TILT_Y 0x1b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_TOOL_WIDTH 0x1c</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define ABS_VOLUME 0x20</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define ABS_MISC 0x28</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define ABS_MT_SLOT 0x2f </span><span class="comment">/* MT slot being modified */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_TOUCH_MAJOR 0x30 </span><span class="comment">/* Major axis of touching ellipse */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_TOUCH_MINOR 0x31 </span><span class="comment">/* Minor axis (omit if circular) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_WIDTH_MAJOR 0x32 </span><span class="comment">/* Major axis of approaching ellipse */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_WIDTH_MINOR 0x33 </span><span class="comment">/* Minor axis (omit if circular) */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_ORIENTATION 0x34 </span><span class="comment">/* Ellipse orientation */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_POSITION_X 0x35 </span><span class="comment">/* Center X touch position */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_POSITION_Y 0x36 </span><span class="comment">/* Center Y touch position */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_TOOL_TYPE 0x37 </span><span class="comment">/* Type of touching device */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_BLOB_ID 0x38 </span><span class="comment">/* Group a set of packets as a blob */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_TRACKING_ID 0x39 </span><span class="comment">/* Unique ID of initiated contact */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_PRESSURE 0x3a </span><span class="comment">/* Pressure on contact area */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_DISTANCE 0x3b </span><span class="comment">/* Contact hover distance */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_TOOL_X 0x3c </span><span class="comment">/* Center X tool position */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_MT_TOOL_Y 0x3d </span><span class="comment">/* Center Y tool position */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define ABS_MAX 0x3f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ABS_CNT (ABS_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Switch events</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define SW_LID 0x00 </span><span class="comment">/* set = lid shut */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_TABLET_MODE 0x01 </span><span class="comment">/* set = tablet mode */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_HEADPHONE_INSERT 0x02 </span><span class="comment">/* set = inserted */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_RFKILL_ALL 0x03 </span><span class="comment">/* rfkill master switch, type "any"</span></div>
<div class="line"><span class="comment"> set = radio enabled */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_RADIO SW_RFKILL_ALL </span><span class="comment">/* deprecated */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_MICROPHONE_INSERT 0x04 </span><span class="comment">/* set = inserted */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_DOCK 0x05 </span><span class="comment">/* set = plugged into dock */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_LINEOUT_INSERT 0x06 </span><span class="comment">/* set = inserted */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_JACK_PHYSICAL_INSERT 0x07 </span><span class="comment">/* set = mechanical switch set */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_VIDEOOUT_INSERT 0x08 </span><span class="comment">/* set = inserted */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_CAMERA_LENS_COVER 0x09 </span><span class="comment">/* set = lens covered */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_KEYPAD_SLIDE 0x0a </span><span class="comment">/* set = keypad slide out */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_FRONT_PROXIMITY 0x0b </span><span class="comment">/* set = front proximity sensor active */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_ROTATE_LOCK 0x0c </span><span class="comment">/* set = rotate locked/disabled */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_LINEIN_INSERT 0x0d </span><span class="comment">/* set = inserted */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_MUTE_DEVICE 0x0e </span><span class="comment">/* set = device disabled */</span><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_MAX 0x0f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SW_CNT (SW_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Misc events</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define MSC_SERIAL 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_PULSELED 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_GESTURE 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_RAW 0x03</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_SCAN 0x04</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_TIMESTAMP 0x05</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_MAX 0x07</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MSC_CNT (MSC_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * LEDs</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define LED_NUML 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_CAPSL 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_SCROLLL 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_COMPOSE 0x03</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_KANA 0x04</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_SLEEP 0x05</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_SUSPEND 0x06</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_MUTE 0x07</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_MISC 0x08</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_MAIL 0x09</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_CHARGING 0x0a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_MAX 0x0f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define LED_CNT (LED_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Autorepeat values</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define REP_DELAY 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REP_PERIOD 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REP_MAX 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define REP_CNT (REP_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Sounds</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define SND_CLICK 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SND_BELL 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SND_TONE 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SND_MAX 0x07</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define SND_CNT (SND_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * IDs.</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define ID_BUS 0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ID_VENDOR 1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ID_PRODUCT 2</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define ID_VERSION 3</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BUS_PCI 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_ISAPNP 0x02</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_USB 0x03</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_HIL 0x04</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_BLUETOOTH 0x05</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_VIRTUAL 0x06</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define BUS_ISA 0x10</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_I8042 0x11</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_XTKBD 0x12</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_RS232 0x13</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_GAMEPORT 0x14</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_PARPORT 0x15</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_AMIGA 0x16</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_ADB 0x17</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_I2C 0x18</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_HOST 0x19</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_GSC 0x1A</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_ATARI 0x1B</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define BUS_SPI 0x1C</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * MT_TOOL types</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"><span class="preprocessor">#define MT_TOOL_FINGER 0</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MT_TOOL_PEN 1</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define MT_TOOL_MAX 1</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Values describing the status of a force-feedback effect</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"><span class="preprocessor">#define FF_STATUS_STOPPED 0x00</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_STATUS_PLAYING 0x01</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_STATUS_MAX 0x01</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Structures used in ioctls to upload effects to a device</span></div>
<div class="line"><span class="comment"> * They are pieces of a bigger structure (called ff_effect)</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * All duration values are expressed in ms. Values above 32767 ms (0x7fff)</span></div>
<div class="line"><span class="comment"> * should not be used and have unspecified results.</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_replay {</div>
<div class="line"> __u16 length;</div>
<div class="line"> __u16 delay;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_trigger {</div>
<div class="line"> __u16 button;</div>
<div class="line"> __u16 interval;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_envelope {</div>
<div class="line"> __u16 attack_length;</div>
<div class="line"> __u16 attack_level;</div>
<div class="line"> __u16 fade_length;</div>
<div class="line"> __u16 fade_level;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_constant_effect {</div>
<div class="line"> __s16 level;</div>
<div class="line"> <span class="keyword">struct </span>ff_envelope envelope;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_ramp_effect {</div>
<div class="line"> __s16 start_level;</div>
<div class="line"> __s16 end_level;</div>
<div class="line"> <span class="keyword">struct </span>ff_envelope envelope;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_condition_effect {</div>
<div class="line"> __u16 right_saturation;</div>
<div class="line"> __u16 left_saturation;</div>
<div class="line"></div>
<div class="line"> __s16 right_coeff;</div>
<div class="line"> __s16 left_coeff;</div>
<div class="line"></div>
<div class="line"> __u16 deadband;</div>
<div class="line"> __s16 center;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_periodic_effect {</div>
<div class="line"> __u16 waveform;</div>
<div class="line"> __u16 period;</div>
<div class="line"> __s16 magnitude;</div>
<div class="line"> __s16 offset;</div>
<div class="line"> __u16 phase;</div>
<div class="line"></div>
<div class="line"> <span class="keyword">struct </span>ff_envelope envelope;</div>
<div class="line"></div>
<div class="line"> __u32 custom_len;</div>
<div class="line"> __s16 *custom_data;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_rumble_effect {</div>
<div class="line"> __u16 strong_magnitude;</div>
<div class="line"> __u16 weak_magnitude;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="keyword">struct </span>ff_effect {</div>
<div class="line"> __u16 type;</div>
<div class="line"> __s16 id;</div>
<div class="line"> __u16 direction;</div>
<div class="line"> <span class="keyword">struct </span>ff_trigger trigger;</div>
<div class="line"> <span class="keyword">struct </span>ff_replay replay;</div>
<div class="line"></div>
<div class="line"> <span class="keyword">union </span>{</div>
<div class="line"> <span class="keyword">struct </span>ff_constant_effect constant;</div>
<div class="line"> <span class="keyword">struct </span>ff_ramp_effect ramp;</div>
<div class="line"> <span class="keyword">struct </span>ff_periodic_effect periodic;</div>
<div class="line"> <span class="keyword">struct </span>ff_condition_effect condition[2]; <span class="comment">/* One for each axis */</span></div>
<div class="line"> <span class="keyword">struct </span>ff_rumble_effect rumble;</div>
<div class="line"> } u;</div>
<div class="line">};</div>
<div class="line"></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Force feedback effect types</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define FF_RUMBLE 0x50</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_PERIODIC 0x51</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_CONSTANT 0x52</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_SPRING 0x53</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_FRICTION 0x54</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_DAMPER 0x55</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_INERTIA 0x56</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_RAMP 0x57</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define FF_EFFECT_MIN FF_RUMBLE</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_EFFECT_MAX FF_RAMP</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Force feedback periodic effect types</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define FF_SQUARE 0x58</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_TRIANGLE 0x59</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_SINE 0x5a</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_SAW_UP 0x5b</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_SAW_DOWN 0x5c</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_CUSTOM 0x5d</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define FF_WAVEFORM_MIN FF_SQUARE</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_WAVEFORM_MAX FF_CUSTOM</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="comment">/*</span></div>
<div class="line"><span class="comment"> * Set ff device properties</span></div>
<div class="line"><span class="comment"> */</span></div>
<div class="line"></div>
<div class="line"><span class="preprocessor">#define FF_GAIN 0x60</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_AUTOCENTER 0x61</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#define FF_MAX 0x7f</span></div>
<div class="line"><span class="preprocessor"></span><span class="preprocessor">#define FF_CNT (FF_MAX+1)</span></div>
<div class="line"><span class="preprocessor"></span></div>
<div class="line"><span class="preprocessor">#endif </span><span class="comment">/* _INPUT_H */</span><span class="preprocessor"></span></div>
</div><!-- fragment --> </div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Mar 21 2014 12:03:59 for libevdev by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>
|