chromium/third_party/angle/src/libANGLE/GLES1State.h

//
// Copyright 2018 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//

// GLES1State.h: Defines the GLES1State class holding the state of
// a GLES1 context.

#ifndef LIBANGLE_GLES1STATE_H_
#define LIBANGLE_GLES1STATE_H_

#include <unordered_set>

#include "common/FixedVector.h"
#include "common/angleutils.h"
#include "common/bitset_utils.h"
#include "common/matrix_utils.h"
#include "common/vector_utils.h"
#include "libANGLE/Caps.h"
#include "libANGLE/angletypes.h"

namespace gl
{

// State types specific to GLES1 contexts, from the OpenGL ES 1.1 spec "State Tables" section
struct TextureCoordF
{};

struct MaterialParameters
{};

struct LightModelParameters
{};

struct LightParameters
{};

struct FogParameters
{};

struct AlphaTestParameters
{};

struct TextureEnvironmentParameters
{};

bool operator==(const TextureEnvironmentParameters &a, const TextureEnvironmentParameters &b);
bool operator!=(const TextureEnvironmentParameters &a, const TextureEnvironmentParameters &b);

struct PointParameters
{};

struct ClipPlaneParameters
{};

class Context;
class GLES1Renderer;
class PrivateState;

class GLES1State final : angle::NonCopyable
{};

}  // namespace gl

#endif  // LIBANGLE_GLES1STATE_H_