blob: ed7818dd6849ef9ea4c7a4909e31db761dd4c34a [file] [log] [blame]
// Copyright 2015 The Cobalt Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// H5vcc stands for "HTML5 Video Container for Consoles".
//
// The H5vcc node acts as a Javascript namespace collecting various disparate
// APIs which allow clients to call non-standard native functions that we
// expose.
//
// For example we provide a h5vcc.accessibility.textToSpeech, which tells
// whether the platform supports text-to-speech capability. Other H5vcc
// modules can run an in-app DIAL server or expose availables CVals.
//
// The H5vcc node should just be a collection of readonly sub-nodes.
// This is created by the BrowserModule and passed directly to the Window
// during construction.
interface H5vcc {
readonly attribute H5vccAccessibility accessibility;
readonly attribute H5vccAccountInfo accountInfo;
readonly attribute H5vccAudioConfigArray audioConfig;
[Conditional=COBALT_ENABLE_CRASH_LOG]
readonly attribute H5vccCrashLog crashLog;
readonly attribute CValView cVal;
readonly attribute H5vccRuntime runtime;
readonly attribute H5vccSettings settings;
[Conditional=COBALT_ENABLE_SSO]
readonly attribute H5vccSso sso;
readonly attribute H5vccSystem system;
readonly attribute H5vccTraceEvent traceEvent;
};