public Device(int id, PacketPipeline pipeline = PacketPipeline.Default) { handle = freenect2_device_create(Context, id, pipeline); if (handle == IntPtr.Zero) { throw new Exception("Could not create Kinect device"); } ++contextRefCount; frameCallback = new FrameCallback(HandleFrame); freenect2_device_set_frame_callback(handle, frameCallback); }
[DllImport("freenect2c")] private static extern IntPtr freenect2_device_create(IntPtr context, int id, PacketPipeline pipeline);