/// <summary> /// Opens an endpoint for writing /// </summary> /// <param name="writeEndpointID">Endpoint number for read operations.</param> /// <param name="endpointType">The type of endpoint to open.</param> /// <returns>A <see cref="UsbEndpointWriter"/> class ready for writing. If the specified endpoint is already been opened, the original <see cref="UsbEndpointWriter"/> class is returned.</returns> public override UsbEndpointWriter OpenEndpointWriter(WriteEndpointID writeEndpointID, EndpointType endpointType) { foreach (UsbEndpointBase activeEndpoint in ActiveEndpoints) { if (activeEndpoint.EpNum == (byte)writeEndpointID) { return((UsbEndpointWriter)activeEndpoint); } } UsbEndpointWriter epNew = new MonoUsbEndpointWriter(this, writeEndpointID, endpointType); return((UsbEndpointWriter)mActiveEndpoints.Add(epNew)); }
/// <summary> /// Opens an endpoint for writing /// </summary> /// <param name="writeEndpointID">Endpoint number for read operations.</param> /// <param name="endpointType">The type of endpoint to open.</param> /// <returns>A <see cref="UsbEndpointWriter"/> class ready for writing. If the specified endpoint is already been opened, the original <see cref="UsbEndpointWriter"/> class is returned.</returns> public override UsbEndpointWriter OpenEndpointWriter(WriteEndpointID writeEndpointID, EndpointType endpointType) { foreach (UsbEndpointBase activeEndpoint in ActiveEndpoints) { if (activeEndpoint.EpNum == (byte)writeEndpointID) { return((UsbEndpointWriter)activeEndpoint); } } byte altIntefaceID = mClaimedInterfaces.Count == 0 ? UsbAltInterfaceSettings[0] : UsbAltInterfaceSettings[mClaimedInterfaces[mClaimedInterfaces.Count - 1]]; UsbEndpointWriter epNew = new MonoUsbEndpointWriter(this, altIntefaceID, writeEndpointID, endpointType); return((UsbEndpointWriter)mActiveEndpoints.Add(epNew)); }
/// <summary> /// Opens an endpoint for writing /// </summary> /// <param name="writeEndpointID">Endpoint number for read operations.</param> /// <param name="endpointType">The type of endpoint to open.</param> /// <returns>A <see cref="UsbEndpointWriter"/> class ready for writing. If the specified endpoint is already been opened, the original <see cref="UsbEndpointWriter"/> class is returned.</returns> public override UsbEndpointWriter OpenEndpointWriter(WriteEndpointID writeEndpointID, EndpointType endpointType) { foreach (UsbEndpointBase activeEndpoint in ActiveEndpoints) if (activeEndpoint.EpNum == (byte)writeEndpointID) return (UsbEndpointWriter)activeEndpoint; byte altIntefaceID = mClaimedInterfaces.Count == 0 ? UsbAltInterfaceSettings[0] : UsbAltInterfaceSettings[mClaimedInterfaces[mClaimedInterfaces.Count - 1]]; UsbEndpointWriter epNew = new MonoUsbEndpointWriter(this, altIntefaceID, writeEndpointID, endpointType); return (UsbEndpointWriter) mActiveEndpoints.Add(epNew); }
/// <summary> /// Opens an endpoint for writing /// </summary> /// <param name="writeEndpointID">Endpoint number for read operations.</param> /// <param name="endpointType">The type of endpoint to open.</param> /// <returns>A <see cref="UsbEndpointWriter"/> class ready for writing. If the specified endpoint is already been opened, the original <see cref="UsbEndpointWriter"/> class is returned.</returns> public override UsbEndpointWriter OpenEndpointWriter(WriteEndpointID writeEndpointID, EndpointType endpointType) { foreach (UsbEndpointBase activeEndpoint in ActiveEndpoints) if (activeEndpoint.EpNum == (byte)writeEndpointID) return (UsbEndpointWriter)activeEndpoint; UsbEndpointWriter epNew = new MonoUsbEndpointWriter(this, writeEndpointID, endpointType); return (UsbEndpointWriter) mActiveEndpoints.Add(epNew); }