+
     h  c                   s,    ^RI HtHt  ! R R]4      tR# )i   )	EventType	EventCodec                   sd   a  ] tR t^t o RtR
R lt]R 4       t]R 4       tRR lt	R t
R tR	tV tR# )
InputEventa  
Represents one input event of type struct input_event as defined in
``linux/input.h`` and returned by ``libevdev_next_event()``.

Comparison between events can be done via the :func:`matches()` function
or by comparing two input events. Two events match when their most
precise attribute match and all other attributes are None::

    >>> e = InputEvent(libevdev.EV_REL.REL_X, value=1)
    >>> e == InputEvent(libevdev.EV_REL)
    True
    >>> e == InputEvent(libevdev.EV_ABS)
    True
    >>> e == InputEvent(libevdev.EV_REL.REL_X)
    True
    >>> e == InputEvent(libevdev.EV_REL.REL_Y)
    False
    >>> e == InputEvent(libevdev.EV_REL.REL_X, value=1)
    True
    >>> e == InputEvent(libevdev.EV_REL.REL_X, value=2)
    False

.. attribute:: value

    The (optional) value for the event's axis

.. attribute:: sec

    The timestamp, seconds

.. attribute:: usec

    The timestamp, microseconds
Nc                s    \        V\        4      '       g   \        V\        4      '       g   Q h\        V\        4      '       d   VP                  V n        Wn        MWn        R V n        W0n        W@n        W n        R # N)	
isinstancer   r    type_type_codesecusecvalue)selfcoder
   r   r	   s   &&&&&3/usr/lib/python3.14/site-packages/libevdev/event.py__init__ZInputEvent.__init__>   sY    $	**jy.I.IIIdI&&DJJJDJ	
    c                    V P                   # )z^
:return: The :class:`EventCode` or :class:`EventType` for this input event
:rtype: EventCode
)r   r      &r   r   ZInputEvent.codeK        zzr   c                r   )z:
:return: the event type for this event
:rtype: EventType
)r   r   r   r   r   ZInputEvent.typeS   r   r   c                s    Ve"   V P                   e   V P                   V8w  d   R# \        V\        4      '       d   V P                  V8H  # V P                  V8H  # )a  
:param code: the event type or code
:type code: EventType or EventCode
:param value: optional, the event value
:return: True if the type matches this event's type and this event's
         code matches the given code (if any) and this event's value
         matches the given value (if any)

Check if an event matches a given event type and/or code. The
following invocations show how to match on an event type, an event
code and an event code with a specific value::


        if ev.matches(libevdev.EV_REL):
                pass

        if ev.matches(libevdev.EV_REL.REL_X):
                pass

        if ev.matches(libevdev.EV_REL.REL_X, 1):
                pass
F)r
   r   r    r   r   )r   r   r
   s   &&&r   matchesZInputEvent.matches[   sL    0 !7DJJ%<OdI&&::%%::%%r   c                s   \        V\        4      '       g   R # V P                  e   VP                  f'   V P                  VP                  VP
                  4      # V P                  VP                  VP
                  4      # )F)r   r   r   r   r   r
   )r   Zothers   &&r   __eq__ZInputEvent.__eq__{   sW    %,,99

 2<<

EKK88||EJJ44r   c                s    V P                   P                  pR pV P                  e   V P                  P                  pRP                  WV P                  4      # )NzInputEvent({}, {}, {}))r   Znamer   Zformatr
   )r   ZtnameZcnames   &  r   __repr__ZInputEvent.__repr__   sB    		99 IINNE'..uTZZHHr   )r   r   r   r	   r
   )N    r   r   )Z__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__r   Zpropertyr   r   r   r   r   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r      sO     !F    &@5I Ir   r   N)Zconstr    r   Zobjectr   ) r   r   <module>r      s   . (oI oIr   