1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5/**
6 * @fileoverview Defines a Braille interface.
7 *
8 * All Braille engines in ChromeVox conform to this interface.
9 *
10 */
11
12goog.provide('cvox.BrailleInterface');
13
14goog.require('cvox.BrailleKeyCommand');
15goog.require('cvox.BrailleKeyEvent');
16goog.require('cvox.NavBraille');
17
18/**
19 * @interface
20 */
21cvox.BrailleInterface = function() { };
22
23/**
24 * Sends the given params to the Braille display for output.
25 * @param {!cvox.NavBraille} params Parameters to send to the
26 * platform braille service.
27 */
28cvox.BrailleInterface.prototype.write =
29    function(params) { };
30
31/**
32 * Sets a callback for handling braille keyboard commands.
33 *
34 * @param {function(!cvox.BrailleKeyEvent, cvox.NavBraille)} func The function
35 * to be called when the user invokes a keyboard command on the braille
36 * display. The first parameter is the key event.  The second parameter is
37 * the content that was present on the display when the key command
38 * was invoked, if available.
39 */
40cvox.BrailleInterface.prototype.setCommandListener =
41    function(func) { };
42