1*8975f5c5SAndroid Build Coastguard Worker // 2*8975f5c5SAndroid Build Coastguard Worker // Copyright 2019 The ANGLE Project Authors. All rights reserved. 3*8975f5c5SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 4*8975f5c5SAndroid Build Coastguard Worker // found in the LICENSE file. 5*8975f5c5SAndroid Build Coastguard Worker // 6*8975f5c5SAndroid Build Coastguard Worker // gl_enum_utils.h: 7*8975f5c5SAndroid Build Coastguard Worker // Utility functions for converting GLenums to string. 8*8975f5c5SAndroid Build Coastguard Worker 9*8975f5c5SAndroid Build Coastguard Worker #ifndef LIBANGLE_GL_ENUM_UTILS_H_ 10*8975f5c5SAndroid Build Coastguard Worker #define LIBANGLE_GL_ENUM_UTILS_H_ 11*8975f5c5SAndroid Build Coastguard Worker 12*8975f5c5SAndroid Build Coastguard Worker #include <ostream> 13*8975f5c5SAndroid Build Coastguard Worker #include <string> 14*8975f5c5SAndroid Build Coastguard Worker 15*8975f5c5SAndroid Build Coastguard Worker #include "common/gl_enum_utils_autogen.h" 16*8975f5c5SAndroid Build Coastguard Worker 17*8975f5c5SAndroid Build Coastguard Worker namespace gl 18*8975f5c5SAndroid Build Coastguard Worker { 19*8975f5c5SAndroid Build Coastguard Worker const char *GLbooleanToString(unsigned int value); 20*8975f5c5SAndroid Build Coastguard Worker const char *GLenumToString(GLESEnum enumGroup, unsigned int value); 21*8975f5c5SAndroid Build Coastguard Worker const char *GLenumToString(BigGLEnum enumGroup, unsigned int value); 22*8975f5c5SAndroid Build Coastguard Worker std::string GLbitfieldToString(GLESEnum enumGroup, unsigned int value); 23*8975f5c5SAndroid Build Coastguard Worker std::string GLbitfieldToString(BigGLEnum enumGroup, unsigned int value); 24*8975f5c5SAndroid Build Coastguard Worker void OutputGLenumString(std::ostream &out, GLESEnum enumGroup, unsigned int value); 25*8975f5c5SAndroid Build Coastguard Worker void OutputGLenumString(std::ostream &out, BigGLEnum enumGroup, unsigned int value); 26*8975f5c5SAndroid Build Coastguard Worker void OutputGLbitfieldString(std::ostream &out, GLESEnum enumGroup, unsigned int value); 27*8975f5c5SAndroid Build Coastguard Worker const char *GLinternalFormatToString(unsigned int format); 28*8975f5c5SAndroid Build Coastguard Worker unsigned int StringToGLenum(const char *str); 29*8975f5c5SAndroid Build Coastguard Worker unsigned int StringToGLbitfield(const char *str); 30*8975f5c5SAndroid Build Coastguard Worker 31*8975f5c5SAndroid Build Coastguard Worker extern const char kUnknownGLenumString[]; 32*8975f5c5SAndroid Build Coastguard Worker } // namespace gl 33*8975f5c5SAndroid Build Coastguard Worker 34*8975f5c5SAndroid Build Coastguard Worker #endif // LIBANGLE_GL_ENUM_UTILS_H_ 35