summaryrefslogtreecommitdiff
path: root/src/mbgl/gl/enum.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/gl/enum.cpp')
-rw-r--r--src/mbgl/gl/enum.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/mbgl/gl/enum.cpp b/src/mbgl/gl/enum.cpp
index da536692d1..81561360e9 100644
--- a/src/mbgl/gl/enum.cpp
+++ b/src/mbgl/gl/enum.cpp
@@ -221,5 +221,25 @@ platform::GLenum Enum<gfx::CullFaceWindingType>::to(const gfx::CullFaceWindingTy
return GL_INVALID_ENUM;
}
+template <>
+gfx::BufferUsageType Enum<gfx::BufferUsageType>::from(const platform::GLint value) {
+ switch (value) {
+ case GL_STREAM_DRAW: return gfx::BufferUsageType::StreamDraw;
+ case GL_STATIC_DRAW: return gfx::BufferUsageType::StaticDraw;
+ case GL_DYNAMIC_DRAW: return gfx::BufferUsageType::DynamicDraw;
+ }
+ return {};
+}
+
+template <>
+platform::GLenum Enum<gfx::BufferUsageType>::to(const gfx::BufferUsageType value) {
+ switch (value) {
+ case gfx::BufferUsageType::StreamDraw: return GL_STREAM_DRAW;
+ case gfx::BufferUsageType::StaticDraw: return GL_STATIC_DRAW;
+ case gfx::BufferUsageType::DynamicDraw: return GL_DYNAMIC_DRAW;
+ }
+ return GL_INVALID_ENUM;
+}
+
} // namespace gl
} // namespace mbgl