예제 #1
0
        public unsafe string GetString(SfString @string)
        {
            var ptr = sf_get_string(Handle, @string);
            var s   = Marshal.PtrToStringAnsi(ptr);

            return(s);
        }
예제 #2
0
        public unsafe void SetString(SfString @string, [CanBeNull] string value)
        {
            var error = sf_set_string(Handle, @string, value);

            if (error != SfError.NoError)
            {
                throw new InvalidOperationException(GetErrorMessage(error));
            }
        }
예제 #3
0
 private static extern unsafe SfError sf_set_string(
     SndFile__ *sndFile,
     SfString sfString,
     [MarshalAs(UnmanagedType.LPStr)] string str
     );
예제 #4
0
 private static extern unsafe IntPtr sf_get_string(
     SndFile__ *sndFile,
     SfString sfString
     );