€•^IŒsphinx.addnodes”Œdocument”“”)�”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)�”}”(hhh]”(hŒ pending_xref”“”)�”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…”�”}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ4/translations/zh_CN/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)�”}”(hhh]”hŒChinese (Traditional)”…”�”}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ4/translations/zh_TW/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒItalian”…”�”}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ4/translations/it_IT/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒJapanese”…”�”}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ4/translations/ja_JP/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒKorean”…”�”}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ4/translations/ko_KR/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒPortuguese (Brazilian)”…”�”}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ4/translations/pt_BR/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)�”}”(hhh]”hŒSpanish”…”�”}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ4/translations/sp_SP/userspace-api/media/rc/lirc-read”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)�”}”(hŒCSPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later”h]”hŒCSPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later”…”�”}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒN/var/lib/git/docbuild/linux/Documentation/userspace-api/media/rc/lirc-read.rst”h´KubhŒtarget”“”)�”}”(hŒ.. _lirc-read:”h]”h}”(h]”h ]”h"]”h$]”h&]”Œrefid”Œ lirc-read”uh1hÈh´Khhh²hh³hÇubhŒsection”“”)�”}”(hhh]”(hŒtitle”“”)�”}”(hŒ LIRC read()”h]”hŒ LIRC read()”…”�”}”(hhÝh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhhØh²hh³hÇh´Kubh×)�”}”(hhh]”(hÜ)�”}”(hŒName”h]”hŒName”…”�”}”(hhîh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhhëh²hh³hÇh´K ubhŒ paragraph”“”)�”}”(hŒ#lirc-read - Read from a LIRC device”h]”hŒ#lirc-read - Read from a LIRC device”…”�”}”(hhþh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´K hhëh²hubeh}”(h]”Œname”ah ]”h"]”Œname”ah$]”h&]”uh1hÖhhØh²hh³hÇh´K ubh×)�”}”(hhh]”(hÜ)�”}”(hŒSynopsis”h]”hŒSynopsis”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjh²hh³hÇh´KubhŒ literal_block”“”)�”}”(hŒ#include ”h]”hŒ#include ”…”�”}”hj'sbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒforce”‰Œlanguage”Œc”Œhighlight_args”}”uh1j%h³hÇh´Khjh²hubhŒindex”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”Œentries”]”(Œsingle”ŒRC.read (C function)”Œ c.RC.read”hNt”auh1j:hjh²hh³Nh´NubhŒdesc”“”)�”}”(hhh]”(hŒdesc_signature”“”)�”}”(hŒ/ssize_t read( int fd, void *buf, size_t count )”h]”hŒdesc_signature_line”“”)�”}”(hŒ-ssize_t read(int fd, void *buf, size_t count)”h]”(h)�”}”(hhh]”hŒ desc_sig_name”“”)�”}”(hŒssize_t”h]”hŒssize_t”…”�”}”(hjah²hh³Nh´Nubah}”(h]”h ]”Œn”ah"]”h$]”h&]”uh1j_hj\ubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”j7Œreftype”Œ identifier”Œ reftarget”jcŒmodname”NŒ classname”NŒ c:parent_key”Œsphinx.domains.c”Œ LookupKey”“”)�”}”Œdata”]”(j}Œ ASTIdentifier”“”)�”}”jxŒRC”sbN†”j…)�”}”jxŒread”sbŒ c.RC.read”†”esbuh1hhjXh²hh³hÇh´KubhŒdesc_sig_space”“”)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj‘h²hh³Nh´Nubah}”(h]”h ]”Œw”ah"]”h$]”h&]”uh1j�hjXh²hh³hÇh´KubhŒ desc_name”“”)�”}”(hŒread”h]”j`)�”}”(hjŒh]”hŒread”…”�”}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”jlah"]”h$]”h&]”uh1j_hj¢ubah}”(h]”h ]”(Œsig-name”Œdescname”eh"]”h$]”h&]”hÅhÆuh1j hjXh²hh³hÇh´KubhŒdesc_parameterlist”“”)�”}”(hŒ!(int fd, void *buf, size_t count)”h]”(hŒdesc_parameter”“”)�”}”(hŒint fd”h]”(hŒdesc_sig_keyword_type”“”)�”}”(hŒint”h]”hŒint”…”�”}”(hjÉh²hh³Nh´Nubah}”(h]”h ]”Œkt”ah"]”h$]”h&]”uh1jÇhjÃubj�)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjØh²hh³Nh´Nubah}”(h]”h ]”jœah"]”h$]”h&]”uh1j�hjÃubj`)�”}”(hŒfd”h]”hŒfd”…”�”}”(hjæh²hh³Nh´Nubah}”(h]”h ]”jlah"]”h$]”h&]”uh1j_hjÃubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÁhj½ubjÂ)�”}”(hŒ void *buf”h]”(jÈ)�”}”(hŒvoid”h]”hŒvoid”…”�”}”(hjÿh²hh³Nh´Nubah}”(h]”h ]”jÔah"]”h$]”h&]”uh1jÇhjûubj�)�”}”(hŒ ”h]”hŒ ”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”jœah"]”h$]”h&]”uh1j�hjûubhŒdesc_sig_punctuation”“”)�”}”(hŒ*”h]”hŒ*”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”Œp”ah"]”h$]”h&]”uh1jhjûubj`)�”}”(hŒbuf”h]”hŒbuf”…”�”}”(hj,h²hh³Nh´Nubah}”(h]”h ]”jlah"]”h$]”h&]”uh1j_hjûubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÁhj½ubjÂ)�”}”(hŒ size_t count”h]”(h)�”}”(hhh]”j`)�”}”(hŒsize_t”h]”hŒsize_t”…”�”}”(hjHh²hh³Nh´Nubah}”(h]”h ]”jlah"]”h$]”h&]”uh1j_hjEubah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”j7Œreftype”jxŒ reftarget”jJŒmodname”NŒ classname”Nj|j)�”}”j‚]”(j†N†”jŠŒ c.RC.read”†”esbuh1hhjAubj�)�”}”(hŒ ”h]”hŒ ”…”�”}”(hjgh²hh³Nh´Nubah}”(h]”h ]”jœah"]”h$]”h&]”uh1j�hjAubj`)�”}”(hŒcount”h]”hŒcount”…”�”}”(hjuh²hh³Nh´Nubah}”(h]”h ]”jlah"]”h$]”h&]”uh1j_hjAubeh}”(h]”h ]”h"]”h$]”h&]”Œnoemph”ˆhÅhÆuh1jÁhj½ubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1j»hjXh²hh³hÇh´Kubeh}”(h]”h ]”h"]”h$]”h&]”hÅhÆŒ add_permalink”ˆuh1jVŒsphinx_line_type”Œ declarator”hjRh²hh³hÇh´Kubah}”(h]”jIah ]”(Œsig”Œ sig-object”eh"]”h$]”h&]”Œ is_multiline”ˆŒ _toc_parts”)Œ _toc_name”huh1jPh³hÇh´KhjMh²hubhŒ desc_content”“”)�”}”(hhh]”h}”(h]”h ]”h"]”h$]”h&]”uh1j¤hjMh²hh³hÇh´Kubeh}”(h]”h ]”(j7Œfunction”eh"]”h$]”h&]”Œdomain”j7Œobjtype”j²Œdesctype”j²Œnoindex”‰Œ noindexentry”‰Œnocontentsentry”‰uh1jKh²hhjh³Nh´Nubeh}”(h]”Œsynopsis”ah ]”h"]”Œsynopsis”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kubh×)�”}”(hhh]”(hÜ)�”}”(hŒ Arguments”h]”hŒ Arguments”…”�”}”(hjÇh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjÄh²hh³hÇh´KubhŒdefinition_list”“”)�”}”(hhh]”(hŒdefinition_list_item”“”)�”}”(hŒ/``fd`` File descriptor returned by ``open()``. ”h]”(hŒterm”“”)�”}”(hŒ``fd``”h]”hŒliteral”“”)�”}”(hjäh]”hŒfd”…”�”}”(hjèh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhjâubah}”(h]”h ]”h"]”h$]”h&]”uh1jàh³hÇh´KhjÜubhŒ definition”“”)�”}”(hhh]”hý)�”}”(hŒ'File descriptor returned by ``open()``.”h]”(hŒFile descriptor returned by ”…”�”}”(hjh²hh³Nh´Nubjç)�”}”(hŒ ``open()``”h]”hŒopen()”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhjubhŒ.”…”�”}”(hjh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´Khjýubah}”(h]”h ]”h"]”h$]”h&]”uh1jûhjÜubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÚh³hÇh´Khj×ubjÛ)�”}”(hŒ``buf`` Buffer to be filled ”h]”(já)�”}”(hŒ``buf``”h]”jç)�”}”(hj2h]”hŒbuf”…”�”}”(hj4h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj0ubah}”(h]”h ]”h"]”h$]”h&]”uh1jàh³hÇh´Khj,ubjü)�”}”(hhh]”hý)�”}”(hŒBuffer to be filled”h]”hŒBuffer to be filled”…”�”}”(hjJh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´KhjGubah}”(h]”h ]”h"]”h$]”h&]”uh1jûhj,ubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÚh³hÇh´Khj×h²hubjÛ)�”}”(hŒ&``count`` Max number of bytes to read ”h]”(já)�”}”(hŒ ``count``”h]”jç)�”}”(hjjh]”hŒcount”…”�”}”(hjlh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhjhubah}”(h]”h ]”h"]”h$]”h&]”uh1jàh³hÇh´K"hjdubjü)�”}”(hhh]”hý)�”}”(hŒMax number of bytes to read”h]”hŒMax number of bytes to read”…”�”}”(hj‚h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´K"hjubah}”(h]”h ]”h"]”h$]”h&]”uh1jûhjdubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÚh³hÇh´K"hj×h²hubeh}”(h]”h ]”h"]”h$]”h&]”uh1jÕhjÄh²hh³hÇh´Nubeh}”(h]”Œ arguments”ah ]”h"]”Œ arguments”ah$]”h&]”uh1hÖhhØh²hh³hÇh´Kubh×)�”}”(hhh]”(hÜ)�”}”(hŒ Description”h]”hŒ Description”…”�”}”(hj­h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjªh²hh³hÇh´K%ubhý)�”}”(hX:c:func:`read()` attempts to read up to ``count`` bytes from file descriptor ``fd`` into the buffer starting at ``buf``. If ``count`` is zero, :c:func:`read()` returns zero and has no other results. If ``count`` is greater than ``SSIZE_MAX``, the result is unspecified.”h]”(h)�”}”(hŒ:c:func:`read()`”h]”jç)�”}”(hjÁh]”hŒread()”…”�”}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”(Œxref”j7Œc-func”eh"]”h$]”h&]”uh1jæhj¿ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”Œ userspace-api/media/rc/lirc-read”Œ refdomain”j7Œreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j|j)�”}”j‚]”j†N†”asbŒ reftarget”Œread”uh1hh³hÇh´K'hj»ubhŒ attempts to read up to ”…”�”}”(hj»h²hh³Nh´Nubjç)�”}”(hŒ ``count``”h]”hŒcount”…”�”}”(hjéh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj»ubhŒ bytes from file descriptor ”…”�”}”(hj»h²hh³Nh´Nubjç)�”}”(hŒ``fd``”h]”hŒfd”…”�”}”(hjûh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj»ubhŒ into the buffer starting at ”…”�”}”(hj»h²hh³Nh´Nubjç)�”}”(hŒ``buf``”h]”hŒbuf”…”�”}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj»ubhŒ. If ”…”�”}”(hj»h²hh³Nh´Nubjç)�”}”(hŒ ``count``”h]”hŒcount”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj»ubhŒ is zero, ”…”�”}”(hj»h²hh³Nh´Nubh)�”}”(hŒ:c:func:`read()`”h]”jç)�”}”(hj3h]”hŒread()”…”�”}”(hj5h²hh³Nh´Nubah}”(h]”h ]”(jÍj7Œc-func”eh"]”h$]”h&]”uh1jæhj1ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”j7Œreftype”Œfunc”Œ refexplicit”‰Œrefwarn”‰j|jßjãŒread”uh1hh³hÇh´K'hj»ubhŒ+ returns zero and has no other results. If ”…”�”}”(hj»h²hh³Nh´Nubjç)�”}”(hŒ ``count``”h]”hŒcount”…”�”}”(hjTh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj»ubhŒ is greater than ”…”�”}”(hj»h²hh³Nh´Nubjç)�”}”(hŒ ``SSIZE_MAX``”h]”hŒ SSIZE_MAX”…”�”}”(hjfh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj»ubhŒ, the result is unspecified.”…”�”}”(hj»h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´K'hjªh²hubhý)�”}”(hŒÃThe exact format of the data depends on what :ref:`lirc_modes` a driver uses. Use :ref:`lirc_get_features` to get the supported mode, and use :ref:`lirc_set_rec_mode` set the current active mode.”h]”(hŒ-The exact format of the data depends on what ”…”�”}”(hj~h²hh³Nh´Nubh)�”}”(hŒ:ref:`lirc_modes`”h]”hŒinline”“”)�”}”(hjˆh]”hŒ lirc_modes”…”�”}”(hjŒh²hh³Nh´Nubah}”(h]”h ]”(jÍŒstd”Œstd-ref”eh"]”h$]”h&]”uh1jŠhj†ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”j–Œreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆj㌠lirc_modes”uh1hh³hÇh´K,hj~ubhŒ a driver uses. Use ”…”�”}”(hj~h²hh³Nh´Nubh)�”}”(hŒ:ref:`lirc_get_features`”h]”j‹)�”}”(hj®h]”hŒlirc_get_features”…”�”}”(hj°h²hh³Nh´Nubah}”(h]”h ]”(jÍŒstd”Œstd-ref”eh"]”h$]”h&]”uh1jŠhj¬ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”jºŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆjãŒlirc_get_features”uh1hh³hÇh´K,hj~ubhŒ$ to get the supported mode, and use ”…”�”}”(hj~h²hh³Nh´Nubh)�”}”(hŒ:ref:`lirc_set_rec_mode`”h]”j‹)�”}”(hjÒh]”hŒlirc_set_rec_mode”…”�”}”(hjÔh²hh³Nh´Nubah}”(h]”h ]”(jÍŒstd”Œstd-ref”eh"]”h$]”h&]”uh1jŠhjÐubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”jÞŒreftype”Œref”Œ refexplicit”‰Œrefwarn”ˆjãŒlirc_set_rec_mode”uh1hh³hÇh´K,hj~ubhŒ set the current active mode.”…”�”}”(hj~h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´K,hjªh²hubhý)�”}”(hŒ¥The mode :ref:`LIRC_MODE_MODE2 ` is for raw IR, in which packets containing an unsigned int value describing an IR signal are read from the chardev.”h]”(hŒ The mode ”…”�”}”(hjúh²hh³Nh´Nubh)�”}”(hŒ(:ref:`LIRC_MODE_MODE2 `”h]”j‹)�”}”(hjh]”hŒLIRC_MODE_MODE2”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”(jÍŒstd”Œstd-ref”eh"]”h$]”h&]”uh1jŠhjubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”jŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆjãŒlirc-mode-mode2”uh1hh³hÇh´K0hjúubhŒt is for raw IR, in which packets containing an unsigned int value describing an IR signal are read from the chardev.”…”�”}”(hjúh²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´K0hjªh²hubhý)�”}”(hX‰Alternatively, :ref:`LIRC_MODE_SCANCODE ` can be available, in this mode scancodes which are either decoded by software decoders, or by hardware decoders. The :c:type:`rc_proto` member is set to the :ref:`IR protocol ` used for transmission, and ``scancode`` to the decoded scancode, and the ``keycode`` set to the keycode or ``KEY_RESERVED``.”h]”(hŒAlternatively, ”…”�”}”(hj,h²hh³Nh´Nubh)�”}”(hŒ.:ref:`LIRC_MODE_SCANCODE `”h]”j‹)�”}”(hj6h]”hŒLIRC_MODE_SCANCODE”…”�”}”(hj8h²hh³Nh´Nubah}”(h]”h ]”(jÍŒstd”Œstd-ref”eh"]”h$]”h&]”uh1jŠhj4ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”jBŒreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆjãŒlirc-mode-scancode”uh1hh³hÇh´K4hj,ubhŒv can be available, in this mode scancodes which are either decoded by software decoders, or by hardware decoders. The ”…”�”}”(hj,h²hh³Nh´Nubh)�”}”(hŒ:c:type:`rc_proto`”h]”jç)�”}”(hjZh]”hŒrc_proto”…”�”}”(hj\h²hh³Nh´Nubah}”(h]”h ]”(jÍj7Œc-type”eh"]”h$]”h&]”uh1jæhjXubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”j7Œreftype”Œtype”Œ refexplicit”‰Œrefwarn”‰j|jßjãŒrc_proto”uh1hh³hÇh´K4hj,ubhŒ member is set to the ”…”�”}”(hj,h²hh³Nh´Nubh)�”}”(hŒ1:ref:`IR protocol `”h]”j‹)�”}”(hj}h]”hŒ IR protocol”…”�”}”(hjh²hh³Nh´Nubah}”(h]”h ]”(jÍŒstd”Œstd-ref”eh"]”h$]”h&]”uh1jŠhj{ubah}”(h]”h ]”h"]”h$]”h&]”Œrefdoc”jÙŒ refdomain”j‰Œreftype”Œref”Œ refexplicit”ˆŒrefwarn”ˆjãŒremote_controllers_protocols”uh1hh³hÇh´K4hj,ubhŒ used for transmission, and ”…”�”}”(hj,h²hh³Nh´Nubjç)�”}”(hŒ ``scancode``”h]”hŒscancode”…”�”}”(hjŸh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj,ubhŒ" to the decoded scancode, and the ”…”�”}”(hj,h²hh³Nh´Nubjç)�”}”(hŒ ``keycode``”h]”hŒkeycode”…”�”}”(hj±h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj,ubhŒ set to the keycode or ”…”�”}”(hj,h²hh³Nh´Nubjç)�”}”(hŒ``KEY_RESERVED``”h]”hŒ KEY_RESERVED”…”�”}”(hjÃh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1jæhj,ubhŒ.”…”�”}”(hj,h²hh³Nh´Nubeh}”(h]”h ]”h"]”h$]”h&]”uh1hüh³hÇh´K4hjªh²hubeh}”(h]”Œ description”ah ]”h"]”Œ description”ah$]”h&]”uh1hÖhhØh²hh³hÇh´K%ubh×)�”}”(hhh]”(hÜ)�”}”(hŒ Return Value”h]”hŒ Return Value”…”�”}”(hjæh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hÛhjãh²hh³hÇh´Khjãh²hubeh}”(h]”Œ return-value”ah ]”h"]”Œ return value”ah$]”h&]”uh1hÖhhØh²hh³hÇh´K