public unsafe override void ASin(double value, ref double returnValue) { double[] input = new double[1] { value }; double[] output = new double[1] { returnValue }; VMLNative.vdAsin(input.Length, input, output); returnValue = output[0]; }