You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
101 lines
3.0 KiB
101 lines
3.0 KiB
/*
|
|
* Copyright (C) 2019 The Hisilicon Technologies Co., Ltd.
|
|
*
|
|
* 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 vendor.huanglong.hardware.hwgraphics@1.2;
|
|
|
|
import @1.0::CaptureType;
|
|
import @1.0::HwRect;
|
|
import @1.1::IGraphics;
|
|
import @1.0::IGraphicsCallback;
|
|
|
|
interface IGraphics extends @1.1::IGraphics {
|
|
|
|
/**
|
|
* captureScreen with speical rect
|
|
*/
|
|
CaptureScreenByVDP_1_2(CaptureType type, handle rawHandle, HwRect rect) generates (uint32_t ret);
|
|
|
|
/**
|
|
* create cast handle
|
|
*
|
|
* @param display display id
|
|
* @param format output video format of cast handle
|
|
* @param width output video width of cast handle
|
|
* @param height output video height of cast handle
|
|
* @return castHandle success: >=0 handle of created handle, error: < 0
|
|
*/
|
|
InitCast(uint64_t display, uint32_t format, uint32_t width, uint32_t height) generates(int32_t castHandle);
|
|
|
|
/**
|
|
* fetch frame from cast handle and fill it into buffer handle
|
|
*
|
|
* @param castHandle handle of created cast
|
|
* @param rawHandle handle of graphic buffer, which will be queued to media server later
|
|
* @param fence assoaciated with graphic buffer
|
|
* @return ret 0 success, other error
|
|
* @return acquireFence reserved for hardware sync for cast frame
|
|
*/
|
|
CastFrame(int32_t castHandle, handle rawHandle, handle fence) generates(int32_t ret, handle acquireFence);
|
|
|
|
/**
|
|
* set black cast frame
|
|
*
|
|
* @param isBlack is need set black
|
|
*/
|
|
SetBlackCastFrame(bool isBlack);
|
|
|
|
/**
|
|
* close cast handle
|
|
*
|
|
* @param castHandle handle of created cast
|
|
* @return 0 successful, other error
|
|
*/
|
|
CloseCast(int32_t castHandle) generates(int32_t ret);
|
|
|
|
/**
|
|
* set overlay z order
|
|
*
|
|
* @param int32_t the sequenece of related layer
|
|
* @param uint32_t the z order of related layer
|
|
* @return void
|
|
*/
|
|
SetOverlayZOrder(int32_t sequence, uint32_t zOrder) generates(int32_t ret);
|
|
|
|
/**
|
|
* query the window handle.
|
|
*
|
|
* @return window handle.
|
|
*/
|
|
GetWindowHandle() generates(uint32_t windowHandle);
|
|
|
|
/**
|
|
* surfaceFlinger death recipient function.
|
|
*
|
|
* @return status result of surfaceFlinger death recipient function.
|
|
*/
|
|
SfDeathRecipient(IGraphicsCallback callback) generates (uint32_t ret);
|
|
|
|
/**
|
|
* set overlay dataSpace
|
|
*
|
|
* @param int32_t the sequenece of related layer
|
|
* @param int32_t the dataSpace of related layer
|
|
* @return void
|
|
*/
|
|
SetOverlayDataSpace(int32_t sequence, int32_t dataSpace);
|
|
};
|
|
|