Exemple #1
0
 static void PollOverlayEvents(ulong handle)
 {
     if (m_cvrOverlay.HandleControllerOverlayInteractionAsMouse(handle, m_controller2ID))
     {
         //controller points to the overlay and event was generated. Unsure if the call above must be called every tick to generate event
         VREvent_t oEvent     = new VREvent_t();
         uint      oEventSize = (uint)Marshal.SizeOf(oEvent);
         while (m_cvrOverlay.PollNextOverlayEvent(handle, ref oEvent, oEventSize))
         {
             Log.WriteLineAndConsole("OVERLAY event (#" + oEvent.trackedDeviceIndex + "): " + oEvent.eventType.ToString() + " " + Enum.GetName(typeof(EVREventType), oEvent.eventType));
             switch (oEvent.eventType)
             {
             case (uint)EVREventType.VREvent_MouseMove:
                 if (oEvent.trackedDeviceIndex == m_controller2ID)
                 {
                     Log.WriteLineAndConsole("  " + oEvent.data.mouse.x + "," + oEvent.data.mouse.y);
                 }
                 break;
             }
         }
     }
     ;
 }