internal AsyncCameraImageConversion(ICameraImageApi api, int nativeHandle, CameraImageConversionParams conversionParams) { m_CameraImageApi = api; m_RequestId = m_CameraImageApi.ConvertAsync(nativeHandle, conversionParams); this.conversionParams = conversionParams; #if ENABLE_UNITY_COLLECTIONS_CHECKS m_SafetyHandle = AtomicSafetyHandle.Create(); #endif }
internal CameraImage( ICameraImageApi cameraImageApi, int nativeHandle, Vector2Int dimensions, int planeCount, double timestamp, CameraImageFormat format) { m_CameraImageApi = cameraImageApi; m_NativeHandle = nativeHandle; this.dimensions = dimensions; this.planeCount = planeCount; this.timestamp = timestamp; this.format = format; #if ENABLE_UNITY_COLLECTIONS_CHECKS m_SafetyHandle = AtomicSafetyHandle.Create(); #endif }
/// <summary> /// Allows a camera provider to register support for <see cref="ICameraImageApi"/>. /// This is typically only used by platform-specific packages. /// </summary> /// <param name="subsystemId"></param> /// <param name="api"></param> public static void RegisterCameraImageApi(string subsystemId, ICameraImageApi api) { s_CameraImageApis[subsystemId] = api; }