| // GENERATED FILE - DO NOT EDIT. | |
| // Generated by gen_packed_gl_enums.py using data from packed_egl_enums.json. | |
| // | |
| // Copyright 2017 The ANGLE Project Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| // | |
| // PackedEGLEnums_autogen.cpp: | |
| // Implements ANGLE-specific enums classes for EGLenums and functions operating | |
| // on them. | |
| #include "common/PackedEGLEnums_autogen.h" | |
| #include "common/debug.h" | |
| namespace egl | |
| { | |
| template <> | |
| CompositorTiming FromEGLenum<CompositorTiming>(EGLenum from) | |
| { | |
| switch (from) | |
| { | |
| case EGL_COMPOSITE_DEADLINE_ANDROID: | |
| return CompositorTiming::CompositeDeadline; | |
| case EGL_COMPOSITE_INTERVAL_ANDROID: | |
| return CompositorTiming::CompositInterval; | |
| case EGL_COMPOSITE_TO_PRESENT_LATENCY_ANDROID: | |
| return CompositorTiming::CompositToPresentLatency; | |
| default: | |
| return CompositorTiming::InvalidEnum; | |
| } | |
| } | |
| EGLenum ToEGLenum(CompositorTiming from) | |
| { | |
| switch (from) | |
| { | |
| case CompositorTiming::CompositeDeadline: | |
| return EGL_COMPOSITE_DEADLINE_ANDROID; | |
| case CompositorTiming::CompositInterval: | |
| return EGL_COMPOSITE_INTERVAL_ANDROID; | |
| case CompositorTiming::CompositToPresentLatency: | |
| return EGL_COMPOSITE_TO_PRESENT_LATENCY_ANDROID; | |
| default: | |
| UNREACHABLE(); | |
| return 0; | |
| } | |
| } | |
| std::ostream &operator<<(std::ostream &os, CompositorTiming value) | |
| { | |
| switch (value) | |
| { | |
| case CompositorTiming::CompositeDeadline: | |
| os << "EGL_COMPOSITE_DEADLINE_ANDROID"; | |
| break; | |
| case CompositorTiming::CompositInterval: | |
| os << "EGL_COMPOSITE_INTERVAL_ANDROID"; | |
| break; | |
| case CompositorTiming::CompositToPresentLatency: | |
| os << "EGL_COMPOSITE_TO_PRESENT_LATENCY_ANDROID"; | |
| break; | |
| default: | |
| os << "GL_INVALID_ENUM"; | |
| break; | |
| } | |
| return os; | |
| } | |
| template <> | |
| ContextPriority FromEGLenum<ContextPriority>(EGLenum from) | |
| { | |
| switch (from) | |
| { | |
| case EGL_CONTEXT_PRIORITY_LOW_IMG: | |
| return ContextPriority::Low; | |
| case EGL_CONTEXT_PRIORITY_MEDIUM_IMG: | |
| return ContextPriority::Medium; | |
| case EGL_CONTEXT_PRIORITY_HIGH_IMG: | |
| return ContextPriority::High; | |
| default: | |
| return ContextPriority::InvalidEnum; | |
| } | |
| } | |
| EGLenum ToEGLenum(ContextPriority from) | |
| { | |
| switch (from) | |
| { | |
| case ContextPriority::Low: | |
| return EGL_CONTEXT_PRIORITY_LOW_IMG; | |
| case ContextPriority::Medium: | |
| return EGL_CONTEXT_PRIORITY_MEDIUM_IMG; | |
| case ContextPriority::High: | |
| return EGL_CONTEXT_PRIORITY_HIGH_IMG; | |
| default: | |
| UNREACHABLE(); | |
| return 0; | |
| } | |
| } | |
| std::ostream &operator<<(std::ostream &os, ContextPriority value) | |
| { | |
| switch (value) | |
| { | |
| case ContextPriority::Low: | |
| os << "EGL_CONTEXT_PRIORITY_LOW_IMG"; | |
| break; | |
| case ContextPriority::Medium: | |
| os << "EGL_CONTEXT_PRIORITY_MEDIUM_IMG"; | |
| break; | |
| case ContextPriority::High: | |
| os << "EGL_CONTEXT_PRIORITY_HIGH_IMG"; | |
| break; | |
| default: | |
| os << "GL_INVALID_ENUM"; | |
| break; | |
| } | |
| return os; | |
| } | |
| template <> | |
| MessageType FromEGLenum<MessageType>(EGLenum from) | |
| { | |
| switch (from) | |
| { | |
| case EGL_DEBUG_MSG_CRITICAL_KHR: | |
| return MessageType::Critical; | |
| case EGL_DEBUG_MSG_ERROR_KHR: | |
| return MessageType::Error; | |
| case EGL_DEBUG_MSG_WARN_KHR: | |
| return MessageType::Warn; | |
| case EGL_DEBUG_MSG_INFO_KHR: | |
| return MessageType::Info; | |
| default: | |
| return MessageType::InvalidEnum; | |
| } | |
| } | |
| EGLenum ToEGLenum(MessageType from) | |
| { | |
| switch (from) | |
| { | |
| case MessageType::Critical: | |
| return EGL_DEBUG_MSG_CRITICAL_KHR; | |
| case MessageType::Error: | |
| return EGL_DEBUG_MSG_ERROR_KHR; | |
| case MessageType::Warn: | |
| return EGL_DEBUG_MSG_WARN_KHR; | |
| case MessageType::Info: | |
| return EGL_DEBUG_MSG_INFO_KHR; | |
| default: | |
| UNREACHABLE(); | |
| return 0; | |
| } | |
| } | |
| std::ostream &operator<<(std::ostream &os, MessageType value) | |
| { | |
| switch (value) | |
| { | |
| case MessageType::Critical: | |
| os << "EGL_DEBUG_MSG_CRITICAL_KHR"; | |
| break; | |
| case MessageType::Error: | |
| os << "EGL_DEBUG_MSG_ERROR_KHR"; | |
| break; | |
| case MessageType::Warn: | |
| os << "EGL_DEBUG_MSG_WARN_KHR"; | |
| break; | |
| case MessageType::Info: | |
| os << "EGL_DEBUG_MSG_INFO_KHR"; | |
| break; | |
| default: | |
| os << "GL_INVALID_ENUM"; | |
| break; | |
| } | |
| return os; | |
| } | |
| template <> | |
| ObjectType FromEGLenum<ObjectType>(EGLenum from) | |
| { | |
| switch (from) | |
| { | |
| case EGL_OBJECT_THREAD_KHR: | |
| return ObjectType::Thread; | |
| case EGL_OBJECT_DISPLAY_KHR: | |
| return ObjectType::Display; | |
| case EGL_OBJECT_CONTEXT_KHR: | |
| return ObjectType::Context; | |
| case EGL_OBJECT_SURFACE_KHR: | |
| return ObjectType::Surface; | |
| case EGL_OBJECT_IMAGE_KHR: | |
| return ObjectType::Image; | |
| case EGL_OBJECT_SYNC_KHR: | |
| return ObjectType::Sync; | |
| case EGL_OBJECT_STREAM_KHR: | |
| return ObjectType::Stream; | |
| default: | |
| return ObjectType::InvalidEnum; | |
| } | |
| } | |
| EGLenum ToEGLenum(ObjectType from) | |
| { | |
| switch (from) | |
| { | |
| case ObjectType::Thread: | |
| return EGL_OBJECT_THREAD_KHR; | |
| case ObjectType::Display: | |
| return EGL_OBJECT_DISPLAY_KHR; | |
| case ObjectType::Context: | |
| return EGL_OBJECT_CONTEXT_KHR; | |
| case ObjectType::Surface: | |
| return EGL_OBJECT_SURFACE_KHR; | |
| case ObjectType::Image: | |
| return EGL_OBJECT_IMAGE_KHR; | |
| case ObjectType::Sync: | |
| return EGL_OBJECT_SYNC_KHR; | |
| case ObjectType::Stream: | |
| return EGL_OBJECT_STREAM_KHR; | |
| default: | |
| UNREACHABLE(); | |
| return 0; | |
| } | |
| } | |
| std::ostream &operator<<(std::ostream &os, ObjectType value) | |
| { | |
| switch (value) | |
| { | |
| case ObjectType::Thread: | |
| os << "EGL_OBJECT_THREAD_KHR"; | |
| break; | |
| case ObjectType::Display: | |
| os << "EGL_OBJECT_DISPLAY_KHR"; | |
| break; | |
| case ObjectType::Context: | |
| os << "EGL_OBJECT_CONTEXT_KHR"; | |
| break; | |
| case ObjectType::Surface: | |
| os << "EGL_OBJECT_SURFACE_KHR"; | |
| break; | |
| case ObjectType::Image: | |
| os << "EGL_OBJECT_IMAGE_KHR"; | |
| break; | |
| case ObjectType::Sync: | |
| os << "EGL_OBJECT_SYNC_KHR"; | |
| break; | |
| case ObjectType::Stream: | |
| os << "EGL_OBJECT_STREAM_KHR"; | |
| break; | |
| default: | |
| os << "GL_INVALID_ENUM"; | |
| break; | |
| } | |
| return os; | |
| } | |
| template <> | |
| TextureFormat FromEGLenum<TextureFormat>(EGLenum from) | |
| { | |
| switch (from) | |
| { | |
| case EGL_NO_TEXTURE: | |
| return TextureFormat::NoTexture; | |
| case EGL_TEXTURE_RGB: | |
| return TextureFormat::RGB; | |
| case EGL_TEXTURE_RGBA: | |
| return TextureFormat::RGBA; | |
| default: | |
| return TextureFormat::InvalidEnum; | |
| } | |
| } | |
| EGLenum ToEGLenum(TextureFormat from) | |
| { | |
| switch (from) | |
| { | |
| case TextureFormat::NoTexture: | |
| return EGL_NO_TEXTURE; | |
| case TextureFormat::RGB: | |
| return EGL_TEXTURE_RGB; | |
| case TextureFormat::RGBA: | |
| return EGL_TEXTURE_RGBA; | |
| default: | |
| UNREACHABLE(); | |
| return 0; | |
| } | |
| } | |
| std::ostream &operator<<(std::ostream &os, TextureFormat value) | |
| { | |
| switch (value) | |
| { | |
| case TextureFormat::NoTexture: | |
| os << "EGL_NO_TEXTURE"; | |
| break; | |
| case TextureFormat::RGB: | |
| os << "EGL_TEXTURE_RGB"; | |
| break; | |
| case TextureFormat::RGBA: | |
| os << "EGL_TEXTURE_RGBA"; | |
| break; | |
| default: | |
| os << "GL_INVALID_ENUM"; | |
| break; | |
| } | |
| return os; | |
| } | |
| template <> | |
| Timestamp FromEGLenum<Timestamp>(EGLenum from) | |
| { | |
| switch (from) | |
| { | |
| case EGL_REQUESTED_PRESENT_TIME_ANDROID: | |
| return Timestamp::RequestedPresentTime; | |
| case EGL_RENDERING_COMPLETE_TIME_ANDROID: | |
| return Timestamp::RenderingCompleteTime; | |
| case EGL_COMPOSITION_LATCH_TIME_ANDROID: | |
| return Timestamp::CompositionLatchTime; | |
| case EGL_FIRST_COMPOSITION_START_TIME_ANDROID: | |
| return Timestamp::FirstCompositionStartTime; | |
| case EGL_LAST_COMPOSITION_START_TIME_ANDROID: | |
| return Timestamp::LastCompositionStartTime; | |
| case EGL_FIRST_COMPOSITION_GPU_FINISHED_TIME_ANDROID: | |
| return Timestamp::FirstCompositionGPUFinishedTime; | |
| case EGL_DISPLAY_PRESENT_TIME_ANDROID: | |
| return Timestamp::DisplayPresentTime; | |
| case EGL_DEQUEUE_READY_TIME_ANDROID: | |
| return Timestamp::DequeueReadyTime; | |
| case EGL_READS_DONE_TIME_ANDROID: | |
| return Timestamp::ReadsDoneTime; | |
| default: | |
| return Timestamp::InvalidEnum; | |
| } | |
| } | |
| EGLenum ToEGLenum(Timestamp from) | |
| { | |
| switch (from) | |
| { | |
| case Timestamp::RequestedPresentTime: | |
| return EGL_REQUESTED_PRESENT_TIME_ANDROID; | |
| case Timestamp::RenderingCompleteTime: | |
| return EGL_RENDERING_COMPLETE_TIME_ANDROID; | |
| case Timestamp::CompositionLatchTime: | |
| return EGL_COMPOSITION_LATCH_TIME_ANDROID; | |
| case Timestamp::FirstCompositionStartTime: | |
| return EGL_FIRST_COMPOSITION_START_TIME_ANDROID; | |
| case Timestamp::LastCompositionStartTime: | |
| return EGL_LAST_COMPOSITION_START_TIME_ANDROID; | |
| case Timestamp::FirstCompositionGPUFinishedTime: | |
| return EGL_FIRST_COMPOSITION_GPU_FINISHED_TIME_ANDROID; | |
| case Timestamp::DisplayPresentTime: | |
| return EGL_DISPLAY_PRESENT_TIME_ANDROID; | |
| case Timestamp::DequeueReadyTime: | |
| return EGL_DEQUEUE_READY_TIME_ANDROID; | |
| case Timestamp::ReadsDoneTime: | |
| return EGL_READS_DONE_TIME_ANDROID; | |
| default: | |
| UNREACHABLE(); | |
| return 0; | |
| } | |
| } | |
| std::ostream &operator<<(std::ostream &os, Timestamp value) | |
| { | |
| switch (value) | |
| { | |
| case Timestamp::RequestedPresentTime: | |
| os << "EGL_REQUESTED_PRESENT_TIME_ANDROID"; | |
| break; | |
| case Timestamp::RenderingCompleteTime: | |
| os << "EGL_RENDERING_COMPLETE_TIME_ANDROID"; | |
| break; | |
| case Timestamp::CompositionLatchTime: | |
| os << "EGL_COMPOSITION_LATCH_TIME_ANDROID"; | |
| break; | |
| case Timestamp::FirstCompositionStartTime: | |
| os << "EGL_FIRST_COMPOSITION_START_TIME_ANDROID"; | |
| break; | |
| case Timestamp::LastCompositionStartTime: | |
| os << "EGL_LAST_COMPOSITION_START_TIME_ANDROID"; | |
| break; | |
| case Timestamp::FirstCompositionGPUFinishedTime: | |
| os << "EGL_FIRST_COMPOSITION_GPU_FINISHED_TIME_ANDROID"; | |
| break; | |
| case Timestamp::DisplayPresentTime: | |
| os << "EGL_DISPLAY_PRESENT_TIME_ANDROID"; | |
| break; | |
| case Timestamp::DequeueReadyTime: | |
| os << "EGL_DEQUEUE_READY_TIME_ANDROID"; | |
| break; | |
| case Timestamp::ReadsDoneTime: | |
| os << "EGL_READS_DONE_TIME_ANDROID"; | |
| break; | |
| default: | |
| os << "GL_INVALID_ENUM"; | |
| break; | |
| } | |
| return os; | |
| } | |
| } // namespace egl |