blob: ec426722754571b6ae7358512ab9e36b4681ce01 [file] [log] [blame]
// 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;
});
};