// Token: 0x06002D8E RID: 11662 RVA: 0x000E07D8 File Offset: 0x000DEBD8 private void Dispose(bool disposing) { if (this._pNative == IntPtr.Zero) { return; } this.__EventCleanup(); NativeObjectCache.RemoveObject <MultiSourceFrame>(this._pNative); MultiSourceFrame.Windows_Kinect_MultiSourceFrame_ReleaseObject(ref this._pNative); this._pNative = IntPtr.Zero; }
public Status Update() { Kinect.MultiSourceFrame frame = _Reader.AcquireLatestFrame(); if (frame == null) { //Debug.LogWarning("Frame not arrived"); return(Status.ZeroBody); } Kinect.DepthFrame depthFrame = frame.DepthFrameReference.AcquireFrame(); if (depthFrame == null) { return(Status.ZeroBody); } depthFrame.CopyFrameDataToArray(DepthData); depthFrame.Dispose(); depthFrame = null; Kinect.BodyFrame bodyFrame = frame.BodyFrameReference.AcquireFrame(); if (bodyFrame == null) { return(Status.ZeroBody); } bodyFrame.GetAndRefreshBodyData(_BodyData); bodyFrame.Dispose(); bodyFrame = null; int bodyIdx; Status status; checkTrackedBody(out bodyIdx, out status); if (status != Status.ZeroBody) { JointData = _BodyData[bodyIdx].Joints; JointOriendationData = _BodyData[bodyIdx].JointOrientations; } return(status); }
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; } }
public bool GetMultiSourceFrame(KinectInterop.SensorData sensorData) { if(multiSourceFrameReader != null) { multiSourceFrame = multiSourceFrameReader.AcquireLatestFrame(); return (multiSourceFrame != null); } return false; }
public void FreeMultiSourceFrame(KinectInterop.SensorData sensorData) { if(multiSourceFrame != null) { multiSourceFrame = null; } }
// Token: 0x06002D89 RID: 11657 RVA: 0x000E0784 File Offset: 0x000DEB84 internal MultiSourceFrame(IntPtr pNative) { this._pNative = pNative; MultiSourceFrame.Windows_Kinect_MultiSourceFrame_AddRefObject(ref this._pNative); }