| // Copyright 2009 The Chromium Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| // This file contains the binary format definition of the command buffer and | |
| // command buffer commands. | |
| // We explicitly do NOT include gles2_cmd_format.h here because client side | |
| // and service side have different requirements. | |
| #include <stddef.h> | |
| #include <array> | |
| #include "gpu/command_buffer/common/cmd_buffer_common.h" | |
| namespace gpu { | |
| namespace gles2 { | |
| #include "gpu/command_buffer/common/gles2_cmd_ids_autogen.h" | |
| const char* GetCommandName(CommandId id) { | |
| static const auto names = std::to_array<const char*>({ | |
| #define GLES2_CMD_OP(name) "k" #name, | |
| GLES2_COMMAND_LIST(GLES2_CMD_OP) | |
| #undef GLES2_CMD_OP | |
| }); | |
| size_t index = static_cast<size_t>(id) - kFirstGLES2Command; | |
| return (index < std::size(names)) ? names[index] : "*unknown-command*"; | |
| } | |
| } // namespace gles2 | |
| } // namespace gpu |