Ejemplo n.º 1
0
        public void ConnectBackend(SoundIOBackend backend)
        {
            var ret = (SoundIoError)Natives.soundio_connect_backend(handle, (SoundIoBackend)backend);

            if (ret != SoundIoError.SoundIoErrorNone)
            {
                throw new SoundIOException(ret);
            }
        }
Ejemplo n.º 2
0
        public static int Main(string [] args)
        {
            bool   watch   = false;
            string backend = null;

            foreach (var arg in args)
            {
                switch (arg)
                {
                case "--watch":
                    watch = true;
                    continue;

                default:
                    if (arg.StartsWith("--backend:"))
                    {
                        backend = arg.Substring(arg.IndexOf(':') + 1);
                        continue;
                    }
                    break;
                }
                ShowUsageToExit();
                return(1);
            }

            using (var api = new SoundIO()) {
                SoundIOBackend be = SoundIOBackend.None;
                if (Enum.TryParse(backend, out be))
                {
                    ShowUsageToExit();
                    return(1);
                }
                if (be == SoundIOBackend.None)
                {
                    api.Connect();
                }
                else
                {
                    api.ConnectBackend(be);
                }

                api.FlushEvents();
                if (watch)
                {
                    api.OnDevicesChange = () => OnDeviceChange(api);
                    Console.WriteLine("Type [ENTER] to exit.");
                    Console.ReadLine();
                }
                else
                {
                    DoListDevices(api);
                }
            }


            return(0);
        }
Ejemplo n.º 3
0
 public static bool HaveBackend(SoundIOBackend backend)
 {
     return(Natives.soundio_have_backend((SoundIoBackend)backend));
 }
Ejemplo n.º 4
0
 public static string GetBackendName(SoundIOBackend backend)
 {
     return(Marshal.PtrToStringAnsi(Natives.soundio_backend_name((SoundIoBackend)backend)));
 }