// Token: 0x06002957 RID: 10583 RVA: 0x000D3978 File Offset: 0x000D1D78 public void CopyFrameDataToArray(ushort[] frameData) { if (this._pNative == IntPtr.Zero) { throw new ObjectDisposedException("InfraredFrame"); } SmartGCHandle smartGCHandle = new SmartGCHandle(GCHandle.Alloc(frameData, GCHandleType.Pinned)); IntPtr frameData2 = smartGCHandle.AddrOfPinnedObject(); InfraredFrame.Windows_Kinect_InfraredFrame_CopyFrameDataToArray(this._pNative, frameData2, frameData.Length); ExceptionHelper.CheckLastError(); }
// Token: 0x0600294F RID: 10575 RVA: 0x000D3800 File Offset: 0x000D1C00 private void Dispose(bool disposing) { if (this._pNative == IntPtr.Zero) { return; } this.__EventCleanup(); NativeObjectCache.RemoveObject <InfraredFrame>(this._pNative); if (disposing) { InfraredFrame.Windows_Kinect_InfraredFrame_Dispose(this._pNative); } InfraredFrame.Windows_Kinect_InfraredFrame_ReleaseObject(ref this._pNative); this._pNative = IntPtr.Zero; }
// Token: 0x0600294A RID: 10570 RVA: 0x000D3754 File Offset: 0x000D1B54 public KinectBuffer LockImageBuffer() { if (this._pNative == IntPtr.Zero) { throw new ObjectDisposedException("InfraredFrame"); } IntPtr intPtr = InfraredFrame.Windows_Kinect_InfraredFrame_LockImageBuffer(this._pNative); ExceptionHelper.CheckLastError(); if (intPtr == IntPtr.Zero) { return(null); } return(NativeObjectCache.CreateOrGetObject <KinectBuffer>(intPtr, (IntPtr n) => new KinectBuffer(n))); }
public bool GetMultiSourceFrame(KinectInterop.SensorData sensorData) { if(multiSourceFrameReader != null) { multiSourceFrame = multiSourceFrameReader.AcquireLatestFrame(); if(multiSourceFrame != null) { // try to get all frames at once msBodyFrame = (sensorFlags & KinectInterop.FrameSource.TypeBody) != 0 ? multiSourceFrame.BodyFrameReference.AcquireFrame() : null; msBodyIndexFrame = (sensorFlags & KinectInterop.FrameSource.TypeBodyIndex) != 0 ? multiSourceFrame.BodyIndexFrameReference.AcquireFrame() : null; msColorFrame = (sensorFlags & KinectInterop.FrameSource.TypeColor) != 0 ? multiSourceFrame.ColorFrameReference.AcquireFrame() : null; msDepthFrame = (sensorFlags & KinectInterop.FrameSource.TypeDepth) != 0 ? multiSourceFrame.DepthFrameReference.AcquireFrame() : null; msInfraredFrame = (sensorFlags & KinectInterop.FrameSource.TypeInfrared) != 0 ? multiSourceFrame.InfraredFrameReference.AcquireFrame() : null; bool bAllSet = ((sensorFlags & KinectInterop.FrameSource.TypeBody) == 0 || msBodyFrame != null) && ((sensorFlags & KinectInterop.FrameSource.TypeBodyIndex) == 0 || msBodyIndexFrame != null) && ((sensorFlags & KinectInterop.FrameSource.TypeColor) == 0 || msColorFrame != null) && ((sensorFlags & KinectInterop.FrameSource.TypeDepth) == 0 || msDepthFrame != null) && ((sensorFlags & KinectInterop.FrameSource.TypeInfrared) == 0 || msInfraredFrame != null); if(!bAllSet) { // release all frames if(msBodyFrame != null) { msBodyFrame.Dispose(); msBodyFrame = null; } if(msBodyIndexFrame != null) { msBodyIndexFrame.Dispose(); msBodyIndexFrame = null; } if(msColorFrame != null) { msColorFrame.Dispose(); msColorFrame = null; } if(msDepthFrame != null) { msDepthFrame.Dispose(); msDepthFrame = null; } if(msInfraredFrame != null) { msInfraredFrame.Dispose(); msInfraredFrame = null; } } // else // { // bool bNeedBody = (sensorFlags & KinectInterop.FrameSource.TypeBody) != 0; // bool bNeedBodyIndex = (sensorFlags & KinectInterop.FrameSource.TypeBodyIndex) != 0; // bool bNeedColor = (sensorFlags & KinectInterop.FrameSource.TypeColor) != 0; // bool bNeedDepth = (sensorFlags & KinectInterop.FrameSource.TypeDepth) != 0; // bool bNeedInfrared = (sensorFlags & KinectInterop.FrameSource.TypeInfrared) != 0; // // bAllSet = true; // } } return (multiSourceFrame != null); } return false; }
public void FreeMultiSourceFrame(KinectInterop.SensorData sensorData) { // release all frames if(msBodyFrame != null) { msBodyFrame.Dispose(); msBodyFrame = null; } if(msBodyIndexFrame != null) { msBodyIndexFrame.Dispose(); msBodyIndexFrame = null; } if(msColorFrame != null) { msColorFrame.Dispose(); msColorFrame = null; } if(msDepthFrame != null) { msDepthFrame.Dispose(); msDepthFrame = null; } if(msInfraredFrame != null) { msInfraredFrame.Dispose(); msInfraredFrame = null; } if(multiSourceFrame != null) { multiSourceFrame = null; } }
// Token: 0x06002946 RID: 10566 RVA: 0x000D3704 File Offset: 0x000D1B04 internal InfraredFrame(IntPtr pNative) { this._pNative = pNative; InfraredFrame.Windows_Kinect_InfraredFrame_AddRefObject(ref this._pNative); }