diff --git a/libshims/Android.bp b/libshims/Android.bp index 94526917802ac60ed09822fcef9e716e0d6453c9..26d4bbc616fba16f30aa08b86327a2202c343e29 100644 --- a/libshims/Android.bp +++ b/libshims/Android.bp @@ -5,4 +5,5 @@ cc_library_shared { "libgui", "libutils", ], + local_include_dirs: ["include"] } diff --git a/libshims/include/DisplayConfig.h b/libshims/include/DisplayConfig.h new file mode 100644 index 0000000000000000000000000000000000000000..3cd26874b023634f7ecbf37c699575ede0148546 --- /dev/null +++ b/libshims/include/DisplayConfig.h @@ -0,0 +1,39 @@ +/* + * Copyright 2019 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 + +#include +#include + +namespace android { + +// Configuration supported by physical display. +struct DisplayConfig { + ui::Size resolution; + float xDpi = 0; + float yDpi = 0; + + float refreshRate = 0; + nsecs_t appVsyncOffset = 0; + nsecs_t sfVsyncOffset = 0; + nsecs_t presentationDeadline = 0; + int configGroup = -1; +}; + +} // namespace android diff --git a/libshims/libshim_showlogo.cpp b/libshims/libshim_showlogo.cpp index ee5d641f9e81115653c1c8e60a4a1879256ae33b..dc7e9a4ad450494d977815a498cb362a6ae78d30 100644 --- a/libshims/libshim_showlogo.cpp +++ b/libshims/libshim_showlogo.cpp @@ -1,3 +1,4 @@ +#include #include using namespace android; @@ -16,4 +17,10 @@ void _ZNK7android14SurfaceControl10getSurfaceEv(void) { _ZN7android14SurfaceControl10getSurfaceEv(); } +status_t _ZN7android21SurfaceComposerClient20getActiveDisplayModeERKNS_2spINS_7IBinderEEEPNS_2ui11DisplayModeE(const sp& display, ui::DisplayMode* mode); + +status_t _ZN7android21SurfaceComposerClient22getActiveDisplayConfigERKNS_2spINS_7IBinderEEEPNS_13DisplayConfigE(const sp& display, DisplayConfig* config) { + return _ZN7android21SurfaceComposerClient20getActiveDisplayModeERKNS_2spINS_7IBinderEEEPNS_2ui11DisplayModeE(display, (ui::DisplayMode*)config); +} + }