public void RegisterCallback(ButtonCallback callback)
 {
     Start(); // make sure the interface is initialized.
     if (null == buttonCallbacks)
     {
         buttonCallbacks   = callback;
         rawButtonCallback = new OSVR.ClientKit.ButtonCallback(ButtonCb);
         iface.registerCallback(rawButtonCallback, System.IntPtr.Zero);
     }
     else
     {
         buttonCallbacks += callback;
     }
 }
 public void RegisterCallback(ButtonCallback callback)
 {
     Start(); // make sure the interface is initialized.
     if (null == buttonCallbacks)
     {
         buttonCallbacks = callback;
         rawButtonCallback = new OSVR.ClientKit.ButtonCallback(ButtonCb);
         iface.registerCallback(rawButtonCallback, System.IntPtr.Zero);
     }
     else
     {
         buttonCallbacks += callback;
     }
 }