/* * Copyright 2018 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 <vector> namespace android { struct DisplayedFrameStats { /* The number of frames represented by this sample. */ uint64_t numFrames = 0; /* A histogram counting how many times a pixel of a given value was displayed onscreen for * FORMAT_COMPONENT_0. The buckets of the histogram are evenly weighted, the number of buckets * is device specific. eg, for RGBA_8888, if sampleComponent0 is {10, 6, 4, 1} this means that * 10 red pixels were displayed onscreen in range 0x00->0x3F, 6 red pixels * were displayed onscreen in range 0x40->0x7F, etc. */ std::vector<uint64_t> component_0_sample = {}; /* The same sample definition as sampleComponent0, but for FORMAT_COMPONENT_1. */ std::vector<uint64_t> component_1_sample = {}; /* The same sample definition as sampleComponent0, but for FORMAT_COMPONENT_2. */ std::vector<uint64_t> component_2_sample = {}; /* The same sample definition as sampleComponent0, but for FORMAT_COMPONENT_3. */ std::vector<uint64_t> component_3_sample = {}; }; } // namespace android