#ifndef GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_
#define GPU_COMMAND_BUFFER_SERVICE_PROGRAM_MANAGER_H_
#include <stddef.h>
#include <stdint.h>
#include <map>
#include <memory>
#include <string>
#include <vector>
#include "base/check_op.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/raw_ref.h"
#include "base/memory/ref_counted.h"
#include "gpu/command_buffer/service/common_decoder.h"
#include "gpu/command_buffer/service/gl_utils.h"
#include "gpu/command_buffer/service/shader_manager.h"
#include "gpu/gpu_gles2_export.h"
namespace gl {
class ProgressReporter;
}
namespace gpu {
class DecoderClient;
struct GpuPreferences;
namespace gles2 {
class FeatureInfo;
class ProgramCache;
class ProgramManager;
class Shader;
class ShaderManager;
enum class UniformApiType : uint32_t { … };
inline constexpr UniformApiType operator|(UniformApiType a, UniformApiType b) { … }
inline constexpr UniformApiType operator&(UniformApiType a, UniformApiType b) { … }
class GPU_GLES2_EXPORT Program : public base::RefCounted<Program> { … };
class GPU_GLES2_EXPORT ProgramManager { … };
inline const FeatureInfo& Program::feature_info() const { … }
}
}
#endif