| // GENERATED FILE - DO NOT EDIT. |
| // Generated by src/libANGLE/gen_packed_gl_enums.py using data from packed_gl_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. |
| // |
| // PackedGLEnums_autogen.cpp: |
| // Implements ANGLE-specific enums classes for GLEnum and functions operating |
| // on them. |
| |
| #include "libANGLE/PackedGLEnums_autogen.h" |
| #include "common/debug.h" |
| |
| namespace gl |
| { |
| |
| template <> |
| BufferUsage FromGLenum<BufferUsage>(GLenum from) |
| { |
| switch (from) |
| { |
| case GL_DYNAMIC_COPY: |
| return BufferUsage::DynamicCopy; |
| case GL_DYNAMIC_DRAW: |
| return BufferUsage::DynamicDraw; |
| case GL_DYNAMIC_READ: |
| return BufferUsage::DynamicRead; |
| case GL_STATIC_COPY: |
| return BufferUsage::StaticCopy; |
| case GL_STATIC_DRAW: |
| return BufferUsage::StaticDraw; |
| case GL_STATIC_READ: |
| return BufferUsage::StaticRead; |
| case GL_STREAM_COPY: |
| return BufferUsage::StreamCopy; |
| case GL_STREAM_DRAW: |
| return BufferUsage::StreamDraw; |
| case GL_STREAM_READ: |
| return BufferUsage::StreamRead; |
| default: |
| return BufferUsage::InvalidEnum; |
| } |
| } |
| |
| GLenum ToGLenum(BufferUsage from) |
| { |
| switch (from) |
| { |
| case BufferUsage::DynamicCopy: |
| return GL_DYNAMIC_COPY; |
| case BufferUsage::DynamicDraw: |
| return GL_DYNAMIC_DRAW; |
| case BufferUsage::DynamicRead: |
| return GL_DYNAMIC_READ; |
| case BufferUsage::StaticCopy: |
| return GL_STATIC_COPY; |
| case BufferUsage::StaticDraw: |
| return GL_STATIC_DRAW; |
| case BufferUsage::StaticRead: |
| return GL_STATIC_READ; |
| case BufferUsage::StreamCopy: |
| return GL_STREAM_COPY; |
| case BufferUsage::StreamDraw: |
| return GL_STREAM_DRAW; |
| case BufferUsage::StreamRead: |
| return GL_STREAM_READ; |
| default: |
| UNREACHABLE(); |
| return GL_NONE; |
| } |
| } |
| |
| template <> |
| CullFaceMode FromGLenum<CullFaceMode>(GLenum from) |
| { |
| switch (from) |
| { |
| case GL_BACK: |
| return CullFaceMode::Back; |
| case GL_FRONT: |
| return CullFaceMode::Front; |
| case GL_FRONT_AND_BACK: |
| return CullFaceMode::FrontAndBack; |
| default: |
| return CullFaceMode::InvalidEnum; |
| } |
| } |
| |
| GLenum ToGLenum(CullFaceMode from) |
| { |
| switch (from) |
| { |
| case CullFaceMode::Back: |
| return GL_BACK; |
| case CullFaceMode::Front: |
| return GL_FRONT; |
| case CullFaceMode::FrontAndBack: |
| return GL_FRONT_AND_BACK; |
| default: |
| UNREACHABLE(); |
| return GL_NONE; |
| } |
| } |
| |
| } // namespace gl |