public void Convolve(DoubleMatrix matrix) { using (INativeInstance matrixNative = DoubleMatrix.CreateInstance(matrix)) { IntPtr exception = IntPtr.Zero; IntPtr result; #if ANYCPU if (NativeLibrary.Is64Bit) #endif #if WIN64 || ANYCPU result = NativeMethods.X64.MagickImage_Convolve(Instance, matrixNative.Instance, out exception); #endif #if ANYCPU else #endif #if !WIN64 || ANYCPU result = NativeMethods.X86.MagickImage_Convolve(Instance, matrixNative.Instance, out exception); #endif CheckException(exception, result); Instance = result; } }
internal static INativeInstance CreateInstance(DoubleMatrix instance) { if (instance == null) return NativeInstance.Zero; return instance.CreateNativeInstance(); }