Exemplo n.º 1
0
        public ImuSample GetImuSample(int timeoutInMS = -1)
        {
            lock (this)
            {
                if (disposedValue)
                {
                    throw new ObjectDisposedException(nameof(Device));
                }

                ImuSample sample = new ImuSample();
                NativeMethods.k4a_wait_result_t result = NativeMethods.k4a_device_get_imu_sample(handle, sample, timeoutInMS);

                if (result == NativeMethods.k4a_wait_result_t.K4A_WAIT_RESULT_TIMEOUT)
                {
                    throw new TimeoutException("Timed out waiting for imu sample");
                }

                AzureKinectException.ThrowIfNotSuccess(result);

                return(sample);
            }
        }
 public static extern k4a_wait_result_t k4a_device_get_imu_sample(
     k4a_device_t device_handle,
     ImuSample imu_sample,
     Int32 timeout_in_ms);