private void KinectWatcherThread(object data) { while (true) { WaitHandle.WaitAll(new WaitHandle[] { SkeletonStream.NextFrameReadyEvent, ColorStream.NextFrameReadyEvent }, 0); if (this.ColorStream != null && this.ColorFrameReady != null && ColorFrameReady.GetInvocationList().Length > 0) { var args = new ImageFrameReadyEventArgs(); // Get the next colorframe. var frame = this.ColorStream.OpenNextFrame(); if (frame != null) { args.ImageFrame = frame; // Fire ColorFrameReady event. ColorFrameReady(this, args); } } if (this.DepthStream != null && this.DepthFrameReady != null && DepthFrameReady.GetInvocationList().Length > 0) { var args = new ImageFrameReadyEventArgs(); // Get the next depthframe. var frame = this.DepthStream.OpenNextFrame(); if (frame != null) { args.ImageFrame = frame; // Fire DepthFrameReady event. DepthFrameReady(this, args); } } if (this.SkeletonStream != null && this.SkeletonFrameReady != null && SkeletonFrameReady.GetInvocationList().Length > 0) { var args = new SkeletonFrameReadyEventArgs(); // Get the next frame of skeletons. var frame = this.SkeletonStream.OpenNextFrame(); if (frame != null) { args.SkeletonFrame = frame; // Fire SkeletonFrameReady event. SkeletonFrameReady(this, args); } } } }
private void sensor_DepthFrameReady(object sender, ImageFrameReadyEventArgs e) { throw new NotImplementedException(); }