+
    ^|i              	       f   R t ^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
t ^<t]P                  ]P                  ,          ]P                  ,          tRt]P                  R8X  d'    ]P$                  ! R]P
                  R. RRR7      t]tM']P.                  '       d   ]P"                  tM]! R4      hR tR	 tR
 tR t]P8                  ! ]P:                  4       ]P<                  ! ]4       ]! ]P@                  4      '       d(   ]P@                  ! ]PB                  ]PD                  4       ]PF                  ! R4       ]PH                  ! ^^4       ]PJ                  ! 4        ]PL                  ! ]4       ]PN                  ! ]4       ]PP                  ! ]4       R t)R#   ] d   t]! R4      ]hRtAii ; i)z8GLUT Input hook for interactive use with prompt_toolkit
N)default_timerdarwinglutCheckLoopzglutCheckLoop(  ) -> None)dll
resultTypeargTypesdocargNamesz[Your glut implementation does not allow interactive sessions. Consider installing freeglut.c                      R # N r       E/usr/lib/python3/dist-packages/IPython/terminal/pt_inputhooks/glut.pyglut_displayr   <       r   c                      R # r   r   r   r   r   	glut_idler   @   r   r   c                  D    \         P                  ! 4        \        4        R # r   )glutglutHideWindowglutMainLoopEventr   r   r   
glut_closer   D   s    r   c                     \         P                   ! \         P                  \         P                  4       \        R 4       R# )z
KeyboardInterruptN)signalSIGINTdefault_int_handlerprint)signumframes   &&r   glut_int_handlerr   I   s#    
MM&--!;!;<	
 r   s   ipythonc                   \         P                   ! \         P                  \        4        \        4       p\        P
                  ! 4       ^ 8X  d#   \        P                  ! ^4       \        4        ^ # V P                  4       '       gr   \        4        \        4       V,
          pVR8  d   \        P                  ! R4       KP  VR8  d   \        P                  ! R4       Ko  \        P                  ! R4       K  R#   \         d     R# i ; i)a1  Run the pyglet event loop by processing pending events only.

This keeps processing pending events until stdin is ready.  After
processing all pending events, a call to time.sleep is inserted.  This is
needed, otherwise, CPU usage is at 100%.  This sleep time should be tuned
though for best performance.
g      $@g      ?g?g?gMbP?N)r   r   r   clockr   glutGetWindowglutSetWindowr   input_is_readytimesleepKeyboardInterrupt)contextt	used_times   &  r   	inputhookr+   ^   s     MM&--!12!G 1$#((** !I4

3S 

4  

5!- +.  s   AC: 1C: A1C: :D	D	r   )*__doc__sysr%   r   OpenGL.GLUTGLUTr   OpenGL.platformplatformtimeitr   r!   glut_fpsGLUT_DOUBLE	GLUT_RGBA
GLUT_DEPTHglut_display_moder   createBaseFunctionr   AttributeErroreRuntimeErrorHAVE_FREEGLUTr   r   r   r   glutInitargvglutInitDisplayModeboolglutSetOptionGLUT_ACTION_ON_WINDOW_CLOSE GLUT_ACTION_GLUTMAINLOOP_RETURNSglutCreateWindowglutReshapeWindowr   glutWMCloseFuncglutDisplayFuncglutIdleFuncr+   r   r   r   <module>rI      s  (     " )  %%^^$__%   <<8
8 334+	 &	..
	,- -
		
! sxx    + -88==@   z #   1        j "   l $   9 ._  80167	88s   %"F F0"	F++F0