|  | // Copyright 2019 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.accessibility.tts; | 
|  |  | 
|  | /// An interface for TTS Engines provide speech output. | 
|  | [Discoverable] | 
|  | protocol EngineRegistry { | 
|  | /// A TTS engine registers itself to start listening for incoming speech | 
|  | /// output requests through `engine`. | 
|  | /// At the moment, only one TTS Engine can be registered at a time. | 
|  | /// This registry owners the first engine to register itself. | 
|  | /// If an engine crashes and wants to register again, calling this method | 
|  | /// will restart the connection. An error is returned if another engine is | 
|  | /// already registered. | 
|  | RegisterEngine(Engine engine) -> () error Error; | 
|  | }; |