/// <summary>Tries the get color contexts.</summary> /// <param name="getColorContexts">The get color contexts.</param> /// <param name="imagingFactory">The imaging factory.</param> /// <param name="colorContexts">The color contexts.</param> /// <returns>Result.</returns> internal static Result TryGetColorContexts(ColorContextsProvider getColorContexts, ImagingFactory imagingFactory, out ColorContext[] colorContexts) { colorContexts = null; int count; Result result = getColorContexts(0, null, out count); if (result.Success) { colorContexts = new ColorContext[count]; if (count > 0) { // http://msdn.microsoft.com/en-us/library/windows/desktop/ee690135(v=vs.85).aspx // The ppIColorContexts array must be filled with valid data: each IWICColorContext* in the array must // have been created using IWICImagingFactory::CreateColorContext. for (int i = 0; i < count; i++) { colorContexts[i] = new ColorContext(imagingFactory); } int actualCount; getColorContexts(count, colorContexts, out actualCount); Debug.Assert(count == actualCount); } } return(result); }
internal static ColorContext[] GetColorContexts(ColorContextsProvider getColorContexts, ImagingFactory imagingFactory) { ColorContext[] colorContexts; Result result = TryGetColorContexts(getColorContexts, imagingFactory, out colorContexts); result.CheckError(); return colorContexts; }
internal static Result TryGetColorContexts(ColorContextsProvider getColorContexts, ImagingFactory imagingFactory, out ColorContext[] colorContexts) { colorContexts = null; int count; Result result = getColorContexts(0, null, out count); if (result.Success) { colorContexts = new ColorContext[count]; if (count > 0) { // http://msdn.microsoft.com/en-us/library/windows/desktop/ee690135(v=vs.85).aspx // The ppIColorContexts array must be filled with valid data: each IWICColorContext* in the array must // have been created using IWICImagingFactory::CreateColorContext. for (int i = 0; i < count; i++) colorContexts[i] = new ColorContext(imagingFactory); int actualCount; getColorContexts(count, colorContexts, out actualCount); Debug.Assert(count == actualCount); } } return result; }
/// <summary>Gets the color contexts.</summary> /// <param name="getColorContexts">The get color contexts.</param> /// <param name="imagingFactory">The imaging factory.</param> /// <returns>ColorContext[][].</returns> internal static ColorContext[] GetColorContexts(ColorContextsProvider getColorContexts, ImagingFactory imagingFactory) { ColorContext[] colorContexts; Result result = TryGetColorContexts(getColorContexts, imagingFactory, out colorContexts); result.CheckError(); return(colorContexts); }
internal static ColorContext[] TryGetColorContexts(ColorContextsProvider getColorContexts, ImagingFactory imagingFactory) { ColorContext[] colorContexts; Result result = TryGetColorContexts(getColorContexts, imagingFactory, out colorContexts); if (ResultCode.UnsupportedOperation != result) result.CheckError(); return colorContexts; }
/// <summary>Tries the get color contexts.</summary> /// <param name="getColorContexts">The get color contexts.</param> /// <param name="imagingFactory">The imaging factory.</param> /// <returns>ColorContext[][].</returns> internal static ColorContext[] TryGetColorContexts(ColorContextsProvider getColorContexts, ImagingFactory imagingFactory) { ColorContext[] colorContexts; Result result = TryGetColorContexts(getColorContexts, imagingFactory, out colorContexts); if (ResultCode.UnsupportedOperation != result) { result.CheckError(); } return(colorContexts); }