1 /* 2 * Copyright (C) 2007 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef ANDROID_UI_DISPLAY_INFO_H 18 #define ANDROID_UI_DISPLAY_INFO_H 19 20 #include <stdint.h> 21 #include <sys/types.h> 22 23 #include <utils/Timers.h> 24 25 namespace android { 26 27 struct DisplayInfo { 28 uint32_t w{0}; 29 uint32_t h{0}; 30 float xdpi{0}; 31 float ydpi{0}; 32 float fps{0}; 33 float density{0}; 34 uint8_t orientation{0}; 35 bool secure{false}; 36 nsecs_t appVsyncOffset{0}; 37 nsecs_t presentationDeadline{0}; 38 uint32_t viewportW{0}; 39 uint32_t viewportH{0}; 40 }; 41 42 /* Display orientations as defined in Surface.java and ISurfaceComposer.h. */ 43 enum { 44 DISPLAY_ORIENTATION_0 = 0, 45 DISPLAY_ORIENTATION_90 = 1, 46 DISPLAY_ORIENTATION_180 = 2, 47 DISPLAY_ORIENTATION_270 = 3 48 }; 49 50 }; // namespace android 51 52 #endif // ANDROID_COMPOSER_DISPLAY_INFO_H 53