FrameTimestamps.h revision ce796e78a57018f186b062199c75d94545318aca
1ce796e78a57018f186b062199c75d94545318acaPablo Ceballos/* 2ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * Copyright 2016 The Android Open Source Project 3ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * 4ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * Licensed under the Apache License, Version 2.0 (the "License"); 5ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * you may not use this file except in compliance with the License. 6ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * You may obtain a copy of the License at 7ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * 8ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * http://www.apache.org/licenses/LICENSE-2.0 9ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * 10ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * Unless required by applicable law or agreed to in writing, software 11ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * distributed under the License is distributed on an "AS IS" BASIS, 12ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * See the License for the specific language governing permissions and 14ce796e78a57018f186b062199c75d94545318acaPablo Ceballos * limitations under the License. 15ce796e78a57018f186b062199c75d94545318acaPablo Ceballos */ 16ce796e78a57018f186b062199c75d94545318acaPablo Ceballos 17ce796e78a57018f186b062199c75d94545318acaPablo Ceballos#ifndef ANDROID_GUI_FRAMETIMESTAMPS_H 18ce796e78a57018f186b062199c75d94545318acaPablo Ceballos#define ANDROID_GUI_FRAMETIMESTAMPS_H 19ce796e78a57018f186b062199c75d94545318acaPablo Ceballos 20ce796e78a57018f186b062199c75d94545318acaPablo Ceballos#include <utils/Timers.h> 21ce796e78a57018f186b062199c75d94545318acaPablo Ceballos#include <utils/Flattenable.h> 22ce796e78a57018f186b062199c75d94545318acaPablo Ceballos 23ce796e78a57018f186b062199c75d94545318acaPablo Ceballosnamespace android { 24ce796e78a57018f186b062199c75d94545318acaPablo Ceballos 25ce796e78a57018f186b062199c75d94545318acaPablo Ceballosstruct FrameTimestamps : public LightFlattenablePod<FrameTimestamps> { 26ce796e78a57018f186b062199c75d94545318acaPablo Ceballos FrameTimestamps() : 27ce796e78a57018f186b062199c75d94545318acaPablo Ceballos frameNumber(0), 28ce796e78a57018f186b062199c75d94545318acaPablo Ceballos postedTime(0), 29ce796e78a57018f186b062199c75d94545318acaPablo Ceballos acquireTime(0), 30ce796e78a57018f186b062199c75d94545318acaPablo Ceballos refreshStartTime(0), 31ce796e78a57018f186b062199c75d94545318acaPablo Ceballos glCompositionDoneTime(0), 32ce796e78a57018f186b062199c75d94545318acaPablo Ceballos displayRetireTime(0), 33ce796e78a57018f186b062199c75d94545318acaPablo Ceballos releaseTime(0) {} 34ce796e78a57018f186b062199c75d94545318acaPablo Ceballos 35ce796e78a57018f186b062199c75d94545318acaPablo Ceballos uint64_t frameNumber; 36ce796e78a57018f186b062199c75d94545318acaPablo Ceballos nsecs_t postedTime; 37ce796e78a57018f186b062199c75d94545318acaPablo Ceballos nsecs_t acquireTime; 38ce796e78a57018f186b062199c75d94545318acaPablo Ceballos nsecs_t refreshStartTime; 39ce796e78a57018f186b062199c75d94545318acaPablo Ceballos nsecs_t glCompositionDoneTime; 40ce796e78a57018f186b062199c75d94545318acaPablo Ceballos nsecs_t displayRetireTime; 41ce796e78a57018f186b062199c75d94545318acaPablo Ceballos nsecs_t releaseTime; 42ce796e78a57018f186b062199c75d94545318acaPablo Ceballos}; 43ce796e78a57018f186b062199c75d94545318acaPablo Ceballos 44ce796e78a57018f186b062199c75d94545318acaPablo Ceballos} // namespace android 45ce796e78a57018f186b062199c75d94545318acaPablo Ceballos#endif 46