
    >                     "    S r SSKrS rS rS rg)zImplements interface for talking to hid devices.

This module implenets an interface for talking to low level hid devices
using various methods on different platforms.
    Nc                      [        S5      $ )N	EnumerateInternalPlatformSwitch     %lib/third_party/pyu2f/hid/__init__.pyr   r      s    		,,r   c                     [        SU 5      $ )N__init__r   )paths    r	   Openr      s    	
D	11r   c                    Sn[         R                  R                  S5      (       a  SSKJn  UR
                  nOm[         R                  R                  S5      (       a  SSKJn  UR                  nO6[         R                  R                  S5      (       a  SSKJn  UR                  nU(       d  [        S	[         R                  -   5      eU S
:X  a  U" U0 UD6$ [        X05      " U0 UD6$ )z=Determine, on a platform-specific basis, which module to use.Nlinuxr   )r   win32)windowsdarwin)macoszUnsupported platform: r   )sysplatform
startswith	pyu2f.hidr   LinuxHidDevicer   WindowsHidDevicer   MacOsHidDevice	Exceptiongetattr)funcnameargskwargsclzr   r   r   s          r	   r   r      s     	#\\W%%


C
||w''!

"
"C
||x((


C	
,s||;
<<			0	00r   )__doc__r   r   r   r   r   r   r	   <module>r"      s   
 -21r   