| Index: gpu/command_buffer/service/gles2_cmd_validation.h
|
| ===================================================================
|
| --- gpu/command_buffer/service/gles2_cmd_validation.h (revision 49807)
|
| +++ gpu/command_buffer/service/gles2_cmd_validation.h (working copy)
|
| @@ -7,12 +7,40 @@
|
| #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_VALIDATION_H_
|
| #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_VALIDATION_H_
|
|
|
| +#include <vector>
|
| +#define GLES2_GPU_SERVICE 1
|
| #include "gpu/command_buffer/common/gles2_cmd_format.h"
|
|
|
| namespace gpu {
|
| namespace gles2 {
|
|
|
| +// ValueValidator returns true if a value is valid.
|
| +template <typename T>
|
| +class ValueValidator {
|
| + public:
|
| + ValueValidator(const T* valid_values, int num_values) {
|
| + for (int ii = 0; ii < num_values; ++ii) {
|
| + AddValue(valid_values[ii]);
|
| + }
|
| + }
|
| +
|
| + void AddValue(const T value) {
|
| + valid_values_.push_back(value);
|
| + }
|
| +
|
| + bool IsValid(const T value) const {
|
| + return std::find(valid_values_.begin(), valid_values_.end(), value) !=
|
| + valid_values_.end();
|
| + }
|
| +
|
| + private:
|
| + std::vector<T> valid_values_;
|
| +};
|
| +
|
| +struct Validators {
|
| + Validators();
|
| #include "gpu/command_buffer/service/gles2_cmd_validation_autogen.h"
|
| +};
|
|
|
| } // namespace gles2
|
| } // namespace gpu
|
|
|