コード例 #1
0
        protected unsafe List <PortReference> GetAllJackPorts()
        {
            IntPtr initialPorts        = PortApi.GetPorts(JackClient, null, null, 0);
            List <PortReference> ports = PortListFromPointer(initialPorts);

            Invoke.Free(initialPorts);
            return(ports);
        }
コード例 #2
0
        unsafe void GetAndSendConnections(List <PortReference> allPorts)
        {
            // In ports are connected to out ports, so we only need to map these.
            foreach (PortReference port in allPorts.Where(p => p.Direction == Direction.Out))
            {
                IntPtr connectedPortNames           = PortApi.GetConnections(port.PortPointer);
                List <PortReference> connectedPorts = PortListFromPointer(connectedPortNames);

                if (ConnectionChanged != null)
                {
                    foreach (PortReference connected in connectedPorts)
                    {
                        ConnectionChanged(this, new ConnectionChangeEventArgs(port, connected, ChangeType.New));
                    }
                }
                Invoke.Free(connectedPortNames);
            }
        }