private static void Microsoft_Kinect_Face_HighDefinitionFaceFrameArrivedEventArgs_Delegate_Handler(RootSystem.IntPtr result, RootSystem.IntPtr pNative)
        {
            List <RootSystem.EventHandler <Microsoft.Kinect.Face.HighDefinitionFaceFrameArrivedEventArgs> > callbackList = null;

            Microsoft_Kinect_Face_HighDefinitionFaceFrameArrivedEventArgs_Delegate_callbacks.TryGetValue(pNative, out callbackList);
            lock (callbackList)
            {
                var objThis = Helper.NativeObjectCache.GetObject <HighDefinitionFaceFrameReader>(pNative);
                var args    = new Microsoft.Kinect.Face.HighDefinitionFaceFrameArrivedEventArgs(result);
                foreach (var func in callbackList)
                {
                    Helper.EventPump.Instance.Enqueue(() => { try { func(objThis, args); } catch { } });
                }
            }
        }
 private static void Microsoft_Kinect_Face_HighDefinitionFaceFrameArrivedEventArgs_Delegate_Handler(RootSystem.IntPtr result, RootSystem.IntPtr pNative)
 {
     List<RootSystem.EventHandler<Microsoft.Kinect.Face.HighDefinitionFaceFrameArrivedEventArgs>> callbackList = null;
     Microsoft_Kinect_Face_HighDefinitionFaceFrameArrivedEventArgs_Delegate_callbacks.TryGetValue(pNative, out callbackList);
     lock(callbackList)
     {
         var objThis = Helper.NativeObjectCache.GetObject<HighDefinitionFaceFrameReader>(pNative);
         var args = new Microsoft.Kinect.Face.HighDefinitionFaceFrameArrivedEventArgs(result);
         foreach(var func in callbackList)
         {
             Helper.EventPump.Instance.Enqueue(() => { try { func(objThis, args); } catch { } });
         }
     }
 }