// Copyright 2018 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 defines the command buffer commands. #ifndef GPU_COMMAND_BUFFER_COMMON_COMMON_CMD_FORMAT_H_ #define GPU_COMMAND_BUFFER_COMMON_COMMON_CMD_FORMAT_H_ #include <stddef.h> #include <stdint.h> #include <string.h> #include "base/atomicops.h" #include "base/numerics/checked_math.h" #include "gpu/command_buffer/common/cmd_buffer_common.h" namespace gpu { // Command buffer is GPU_COMMAND_BUFFER_ENTRY_ALIGNMENT byte aligned. #pragma pack(push, 4) static_assert …; // Used for some glGetXXX commands that return a result through a pointer. We // need to know if the command succeeded or not and the size of the result. If // the command failed its result size will 0. template <typename T> struct SizedResult { … }; static_assert …; static_assert …; static_assert …; // The format of QuerySync used by EXT_occlusion_query_boolean struct QuerySync { … }; static_assert …; static_assert …; static_assert …; #pragma pack(pop) } // namespace gpu #endif // GPU_COMMAND_BUFFER_COMMON_COMMON_CMD_FORMAT_H_