Path: blob/main_old/src/tests/deqp_support/tcuANGLENativeDisplayFactory.h
1693 views
/*-------------------------------------------------------------------------1* drawElements Quality Program Tester Core2* ----------------------------------------3*4* Copyright 2014 The Android Open Source Project5*6* Licensed under the Apache License, Version 2.0 (the "License");7* you may not use this file except in compliance with the License.8* You may obtain a copy of the License at9*10* http://www.apache.org/licenses/LICENSE-2.011*12* Unless required by applicable law or agreed to in writing, software13* distributed under the License is distributed on an "AS IS" BASIS,14* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.15* See the License for the specific language governing permissions and16* limitations under the License.17*18*/1920#ifndef TCU_ANGLE_WIN32_NATIVE_DISPLAY_FACTORY_H_21#define TCU_ANGLE_WIN32_NATIVE_DISPLAY_FACTORY_H_2223#include "egluNativeDisplay.hpp"24#include "eglwDefs.hpp"25#include "tcuDefs.hpp"2627namespace tcu28{2930class EventState31{32public:33EventState() : mQuit(false) {}34bool quitSignaled() const { return mQuit; };35void signalQuitEvent() { mQuit = true; };3637private:38bool mQuit;39};4041class ANGLENativeDisplayFactory : public eglu::NativeDisplayFactory42{43public:44ANGLENativeDisplayFactory(const std::string &name,45const std::string &description,46std::vector<eglw::EGLAttrib> platformAttributes,47EventState *eventState);48~ANGLENativeDisplayFactory() override;4950eglu::NativeDisplay *createDisplay(const eglw::EGLAttrib *attribList) const override;5152private:53eglw::EGLNativeDisplayType mNativeDisplay;54std::vector<eglw::EGLAttrib> mPlatformAttributes;55};5657} // namespace tcu5859#endif // TCU_ANGLE_WIN32_NATIVE_DISPLAY_FACTORY_H_606162