| // Copyright 2022 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| library fuchsia.hardware.audio.signalprocessing; |
| |
| /// For an overview of the signal processing protocols see |
| /// [Audio Signal Processing](//docs/concepts/drivers/driver_architectures/audio_drivers/audio_signal_processing.md) |
| protocol Connector { |
| /// Connect to a `SignalProcessing` protocol. |
| /// Multiple connections may be supported, if a new connection request is not supported, i.e. |
| /// the maximum number of connections have already been created, for instance one, then the |
| /// channel will be closed with an ZX_ERR_ALREADY_BOUND epitaph. |
| /// If signal processing is not supported at all, then the channel will be closed with a |
| /// ZX_ERR_NOT_SUPPORTED epitaph. |
| /// This method is named `SignalProcessingConnect` instead of `Connect` because this protocol |
| /// is intended to be composed, and hence the more verbose name allows differentiation and |
| /// improved clarity. |
| SignalProcessingConnect(resource struct { |
| protocol server_end:SignalProcessing; |
| }); |
| }; |