/* * Copyright (C) 2017 The Android Open Source Project * * 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. */ package rockchip.hardware.outputmanager@1.0; interface IRkOutputManager{ /** * Sets a callback for events. * * Note that initially no device is available in the client side, so the * implementation must notify all the currently available devices including * static devices via callback once callback is set. * * @param callback Callback object to pass events. */ @entry @exit @callflow(next={"*"}) initial(); /** * Gets stream configurations for a specific device. * * The configs object is valid only until the next * STREAM_CONFIGURATIONS_CHANGED event. * * @param display . * @param mode * @return result OK upon success. Otherwise, * INVALID_ARGUMENTS if the given device ID is not valid. */ @callflow(next={"*"}) setMode(Display display, string mode) generates (Result error); @callflow(next={"*"}) setGamma(Display display, uint32_t size, vec r, vec g, vec b) generates (Result error); @callflow(next={"*"}) setBrightness(Display display, uint32_t value) generates (Result error); @callflow(next={"*"}) setContrast(Display display, uint32_t value) generates (Result error); @callflow(next={"*"}) setSaturation(Display display, uint32_t value) generates (Result error); @callflow(next={"*"}) setHue(Display display, uint32_t value) generates (Result error); @callflow(next={"*"}) setScreenScale(Display display, uint32_t direction, uint32_t value) generates (Result error); @callflow(next={"*"}) setHdrMode(Display display, uint32_t hdrmode) generates (Result error); @callflow(next={"*"}) setColorMode(Display display, string mode) generates (Result error); @callflow(next={"*"}) getCurCorlorMode(Display display) generates (Result error, string curmode); @callflow(next={"*"}) getCurMode(Display display) generates (Result error, string mode); @callflow(next={"*"}) getNumConnectors(Display display) generates (Result error, uint32_t cnt); @callflow(next={"*"}) getConnectState(Display display) generates (Result error, uint32_t state); @callflow(next={"*"}) getBuiltIn(Display display) generates (Result error, uint32_t builtin); @callflow(next={"*"}) getCorlorModeConfigs(Display display) generates (Result error, vec capa); @callflow(next={"*"}) getOverscan(Display display) generates (Result error, vec overscan); @callflow(next={"*"}) getBcsh(Display display) generates (Result error, vec bcsh); @callflow(next={"*"}) getDisplayModes(Display display) generates (Result error, vec modes); @callflow(next={"*"}) saveConfig(); @callflow(next={"*"}) hotPlug(); @callflow(next={"*"}) set3DMode( string mode) generates (Result error); @callflow(next={"*"}) set3DLut(Display display, uint32_t size, vec r, vec g, vec b) generates (Result error); @callflow(next={"*"}) getConnectorInfo() generates (Result error, vec infos); @callflow(next={"*"}) updateDispHeader() generates (Result error); @callflow(next={"*"}) getModeState(string mode) generates (Result error, string state); @callflow(next={"*"}) setModeState(string mode, string state) generates (Result error); @callflow(next={"*"}) getHdrResolutionSupported(Display display, string mode) generates (Result error, uint32_t supported); };