Added grv@ and dvh@ as owners of developer private API.
[chromium-blink-merge.git] / gpu / command_buffer / client / client_context_state.h
blobf5a93a6272c63b64d16e5168b641a4e9b313b75d
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
3 // found in the LICENSE file.
5 // This file contains the ContextState class.
7 #ifndef GPU_COMMAND_BUFFER_CLIENT_CLIENT_CONTEXT_STATE_H_
8 #define GPU_COMMAND_BUFFER_CLIENT_CLIENT_CONTEXT_STATE_H_
10 #include <GLES2/gl2.h>
11 #include <vector>
12 #include "gles2_impl_export.h"
14 namespace gpu {
15 namespace gles2 {
17 struct GLES2_IMPL_EXPORT ClientContextState {
18 ClientContextState();
19 ~ClientContextState();
21 // Returns true if state was cached in which case 'enabled' will be set to the
22 // current state.
23 bool GetEnabled(GLenum cap, bool* enabled) const;
25 // Sets the state of a capability.
26 // Returns true if the capability is one that is cached.
27 // 'changed' will be true if the state was different from 'enabled.
28 bool SetCapabilityState(GLenum cap, bool enabled, bool* changed);
30 #include "gpu/command_buffer/client/client_context_state_autogen.h"
32 EnableFlags enable_flags;
35 } // namespace gles2
36 } // namespace gpu
38 #endif // GPU_COMMAND_BUFFER_CLIENT_CLIENT_CONTEXT_STATE_H_