Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(163)

Side by Side Diff: gpu/command_buffer/service/memory_program_cache.h

Issue 1309743005: command_buffer: Implement EXT_blend_func_extended (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@new-05-path-fragment-input-gen
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef GPU_COMMAND_BUFFER_SERVICE_MEMORY_PROGRAM_CACHE_H_ 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_MEMORY_PROGRAM_CACHE_H_
6 #define GPU_COMMAND_BUFFER_SERVICE_MEMORY_PROGRAM_CACHE_H_ 6 #define GPU_COMMAND_BUFFER_SERVICE_MEMORY_PROGRAM_CACHE_H_
7 7
8 #include <map> 8 #include <map>
9 #include <string> 9 #include <string>
10 10
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 class ProgramCacheValue : public base::RefCounted<ProgramCacheValue> { 50 class ProgramCacheValue : public base::RefCounted<ProgramCacheValue> {
51 public: 51 public:
52 ProgramCacheValue(GLsizei length, 52 ProgramCacheValue(GLsizei length,
53 GLenum format, 53 GLenum format,
54 const char* data, 54 const char* data,
55 const std::string& program_hash, 55 const std::string& program_hash,
56 const char* shader_0_hash, 56 const char* shader_0_hash,
57 const AttributeMap& attrib_map_0, 57 const AttributeMap& attrib_map_0,
58 const UniformMap& uniform_map_0, 58 const UniformMap& uniform_map_0,
59 const VaryingMap& varying_map_0, 59 const VaryingMap& varying_map_0,
60 const AttributeList& output_variable_list_0,
60 const char* shader_1_hash, 61 const char* shader_1_hash,
61 const AttributeMap& attrib_map_1, 62 const AttributeMap& attrib_map_1,
62 const UniformMap& uniform_map_1, 63 const UniformMap& uniform_map_1,
63 const VaryingMap& varying_map_1, 64 const VaryingMap& varying_map_1,
65 const AttributeList& output_variable_list_1,
64 MemoryProgramCache* program_cache); 66 MemoryProgramCache* program_cache);
65 67
66 GLsizei length() const { 68 GLsizei length() const {
67 return length_; 69 return length_;
68 } 70 }
69 71
70 GLenum format() const { 72 GLenum format() const {
71 return format_; 73 return format_;
72 } 74 }
73 75
(...skipping 10 matching lines...) Expand all
84 } 86 }
85 87
86 const UniformMap& uniform_map_0() const { 88 const UniformMap& uniform_map_0() const {
87 return uniform_map_0_; 89 return uniform_map_0_;
88 } 90 }
89 91
90 const VaryingMap& varying_map_0() const { 92 const VaryingMap& varying_map_0() const {
91 return varying_map_0_; 93 return varying_map_0_;
92 } 94 }
93 95
96 const AttributeList& output_variable_list_0() const {
97 return output_variable_list_0_;
98 }
99
94 const std::string& shader_1_hash() const { 100 const std::string& shader_1_hash() const {
95 return shader_1_hash_; 101 return shader_1_hash_;
96 } 102 }
97 103
98 const AttributeMap& attrib_map_1() const { 104 const AttributeMap& attrib_map_1() const {
99 return attrib_map_1_; 105 return attrib_map_1_;
100 } 106 }
101 107
102 const UniformMap& uniform_map_1() const { 108 const UniformMap& uniform_map_1() const {
103 return uniform_map_1_; 109 return uniform_map_1_;
104 } 110 }
105 111
106 const VaryingMap& varying_map_1() const { 112 const VaryingMap& varying_map_1() const {
107 return varying_map_1_; 113 return varying_map_1_;
108 } 114 }
109 115
116 const AttributeList& output_variable_list_1() const {
117 return output_variable_list_1_;
118 }
119
110 private: 120 private:
111 friend class base::RefCounted<ProgramCacheValue>; 121 friend class base::RefCounted<ProgramCacheValue>;
112 122
113 ~ProgramCacheValue(); 123 ~ProgramCacheValue();
114 124
115 const GLsizei length_; 125 const GLsizei length_;
116 const GLenum format_; 126 const GLenum format_;
117 const scoped_ptr<const char[]> data_; 127 const scoped_ptr<const char[]> data_;
118 const std::string program_hash_; 128 const std::string program_hash_;
119 const std::string shader_0_hash_; 129 const std::string shader_0_hash_;
120 const AttributeMap attrib_map_0_; 130 const AttributeMap attrib_map_0_;
121 const UniformMap uniform_map_0_; 131 const UniformMap uniform_map_0_;
122 const VaryingMap varying_map_0_; 132 const VaryingMap varying_map_0_;
133 const AttributeList output_variable_list_0_;
123 const std::string shader_1_hash_; 134 const std::string shader_1_hash_;
124 const AttributeMap attrib_map_1_; 135 const AttributeMap attrib_map_1_;
125 const UniformMap uniform_map_1_; 136 const UniformMap uniform_map_1_;
126 const VaryingMap varying_map_1_; 137 const VaryingMap varying_map_1_;
138 const AttributeList output_variable_list_1_;
127 MemoryProgramCache* const program_cache_; 139 MemoryProgramCache* const program_cache_;
128 140
129 DISALLOW_COPY_AND_ASSIGN(ProgramCacheValue); 141 DISALLOW_COPY_AND_ASSIGN(ProgramCacheValue);
130 }; 142 };
131 143
132 friend class ProgramCacheValue; 144 friend class ProgramCacheValue;
133 145
134 typedef base::MRUCache<std::string, 146 typedef base::MRUCache<std::string,
135 scoped_refptr<ProgramCacheValue> > ProgramMRUCache; 147 scoped_refptr<ProgramCacheValue> > ProgramMRUCache;
136 148
137 const size_t max_size_bytes_; 149 const size_t max_size_bytes_;
138 size_t curr_size_bytes_; 150 size_t curr_size_bytes_;
139 ProgramMRUCache store_; 151 ProgramMRUCache store_;
140 152
141 DISALLOW_COPY_AND_ASSIGN(MemoryProgramCache); 153 DISALLOW_COPY_AND_ASSIGN(MemoryProgramCache);
142 }; 154 };
143 155
144 } // namespace gles2 156 } // namespace gles2
145 } // namespace gpu 157 } // namespace gpu
146 158
147 #endif // GPU_COMMAND_BUFFER_SERVICE_MEMORY_PROGRAM_CACHE_H_ 159 #endif // GPU_COMMAND_BUFFER_SERVICE_MEMORY_PROGRAM_CACHE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698