| Index: gpu/command_buffer/service/context_group.h
|
| diff --git a/gpu/command_buffer/service/context_group.h b/gpu/command_buffer/service/context_group.h
|
| index b6b64830803d1ea2808a9f599bf9e4888ce07a53..7477674af60c5a585ab51e09784659ac7a7957f1 100644
|
| --- a/gpu/command_buffer/service/context_group.h
|
| +++ b/gpu/command_buffer/service/context_group.h
|
| @@ -5,6 +5,7 @@
|
| #ifndef GPU_COMMAND_BUFFER_SERVICE_CONTEXT_GROUP_H_
|
| #define GPU_COMMAND_BUFFER_SERVICE_CONTEXT_GROUP_H_
|
|
|
| +#include <map>
|
| #include <string>
|
| #include <vector>
|
| #include "base/basictypes.h"
|
| @@ -174,6 +175,24 @@ class GPU_EXPORT ContextGroup : public base::RefCounted<ContextGroup> {
|
| draw_buffer_ = buf;
|
| }
|
|
|
| + void AddSamplerId(GLuint client_id, GLuint service_id) {
|
| + samplers_id_map_[client_id] = service_id;
|
| + }
|
| +
|
| + bool GetSamplerServiceId(GLuint client_id, GLuint* service_id) const {
|
| + std::map<GLuint, GLuint>::const_iterator iter =
|
| + samplers_id_map_.find(client_id);
|
| + if (iter == samplers_id_map_.end())
|
| + return false;
|
| + if (service_id)
|
| + *service_id = iter->second;
|
| + return true;
|
| + }
|
| +
|
| + void RemoveSamplerId(GLuint client_id) {
|
| + samplers_id_map_.erase(client_id);
|
| + }
|
| +
|
| private:
|
| friend class base::RefCounted<ContextGroup>;
|
| ~ContextGroup();
|
| @@ -223,6 +242,9 @@ class GPU_EXPORT ContextGroup : public base::RefCounted<ContextGroup> {
|
|
|
| std::vector<base::WeakPtr<gles2::GLES2Decoder> > decoders_;
|
|
|
| + // Mappings from client side IDs to service side IDs.
|
| + std::map<GLuint, GLuint> samplers_id_map_;
|
| +
|
| GLenum draw_buffer_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ContextGroup);
|
|
|