blob: 22aaf4d6d4ae8c2463b0f520a06b9381e1a8a86b [file] [log] [blame]
// Copyright 2020 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.
#pragma once
#include <stdint.h>
typedef struct QAndroidMultiDisplayAgent {
int (*setMultiDisplay)(uint32_t id,
int32_t x,
int32_t y,
uint32_t w,
uint32_t h,
uint32_t dpi,
uint32_t flag,
bool add);
bool (*getMultiDisplay)(uint32_t id,
int32_t* x,
int32_t* y,
uint32_t* w,
uint32_t* h,
uint32_t* dpi,
uint32_t* flag,
bool* enable);
bool (*getNextMultiDisplay)(int32_t start_id,
uint32_t* id,
int32_t* x,
int32_t* y,
uint32_t* w,
uint32_t* h,
uint32_t* dpi,
uint32_t* flag,
uint32_t* cb);
bool (*isMultiDisplayEnabled)(void);
void (*getCombinedDisplaySize)(uint32_t* width, uint32_t* height);
bool (*multiDisplayParamValidate)(uint32_t id, uint32_t w, uint32_t h,
uint32_t dpi, uint32_t flag);
bool (*translateCoordination)(uint32_t* x, uint32_t*y, uint32_t* displayId);
void (*setGpuMode)(bool isGuestMode, uint32_t w, uint32_t h);
int (*createDisplay)(uint32_t* displayId);
int (*destroyDisplay)(uint32_t displayId);
int (*setDisplayPose)(uint32_t displayId,
int32_t x,
int32_t y,
uint32_t w,
uint32_t h,
uint32_t dpi);
int (*getDisplayPose)(uint32_t displayId,
int32_t* x,
int32_t* y,
uint32_t* w,
uint32_t* h);
int (*getDisplayColorBuffer)(uint32_t displayId, uint32_t* colorBuffer);
int (*getColorBufferDisplay)(uint32_t colorBuffer, uint32_t* displayId);
int (*setDisplayColorBuffer)(uint32_t displayId, uint32_t colorBuffer);
} QAndroidMultiDisplayAgent;