#include "gpu/command_buffer/service/vertex_attrib_manager.h"
#include <stdint.h>
#include <list>
#include "base/check_op.h"
#include "base/strings/string_number_conversions.h"
#include "build/build_config.h"
#include "gpu/command_buffer/common/gles2_cmd_format.h"
#include "gpu/command_buffer/common/gles2_cmd_utils.h"
#include "gpu/command_buffer/service/buffer_manager.h"
#include "gpu/command_buffer/service/error_state.h"
#include "gpu/command_buffer/service/feature_info.h"
#include "gpu/command_buffer/service/gl_utils.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder.h"
#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/program_manager.h"
#include "gpu/command_buffer/service/vertex_array_manager.h"
namespace gpu {
namespace gles2 {
VertexAttrib::VertexAttrib()
: … { … }
VertexAttrib::VertexAttrib(const VertexAttrib& other) = default;
VertexAttrib::~VertexAttrib() = default;
void VertexAttrib::SetInfo(
Buffer* buffer,
GLint size,
GLenum type,
GLboolean normalized,
GLsizei gl_stride,
GLsizei real_stride,
GLsizei offset,
GLboolean integer) { … }
bool VertexAttrib::CanAccess(GLuint index) const { … }
VertexAttribManager::VertexAttribManager(bool do_buffer_refcounting)
: … { … }
VertexAttribManager::VertexAttribManager(VertexArrayManager* manager,
GLuint service_id,
uint32_t num_vertex_attribs,
bool do_buffer_refcounting)
: … { … }
VertexAttribManager::~VertexAttribManager() { … }
void VertexAttribManager::Initialize(uint32_t max_vertex_attribs) { … }
void VertexAttribManager::SetElementArrayBuffer(Buffer* buffer) { … }
bool VertexAttribManager::Enable(GLuint index, bool enable) { … }
void VertexAttribManager::Unbind(Buffer* buffer, Buffer* bound_array_buffer) { … }
void VertexAttribManager::SetIsBound(bool is_bound) { … }
bool VertexAttribManager::ValidateBindings(const char* function_name,
GLES2Decoder* decoder,
FeatureInfo* feature_info,
BufferManager* buffer_manager,
Program* current_program,
GLuint max_vertex_accessed,
bool instanced,
GLsizei primcount,
GLint basevertex,
GLuint baseinstance) { … }
}
}