chromium/third_party/angle/src/libANGLE/renderer/EGLImplFactory.h

//
// Copyright 2016 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.
//
// EGLImplFactory.h:
//   Factory interface for EGL Impl objects.
//

#ifndef LIBANGLE_RENDERER_EGLIMPLFACTORY_H_
#define LIBANGLE_RENDERER_EGLIMPLFACTORY_H_

#include "libANGLE/Stream.h"

namespace egl
{
class AttributeMap;
struct Config;
class ImageSibling;
struct ImageState;
class ShareGroupState;
struct SurfaceState;
}  // namespace egl

namespace gl
{
class Context;
class ErrorSet;
class State;
}  // namespace gl

namespace rx
{
class ContextImpl;
class EGLSyncImpl;
class ImageImpl;
class ExternalImageSiblingImpl;
class SurfaceImpl;
class ShareGroupImpl;

class EGLImplFactory : angle::NonCopyable
{};

inline ExternalImageSiblingImpl *EGLImplFactory::createExternalImageSibling(
    const gl::Context *context,
    EGLenum target,
    EGLClientBuffer buffer,
    const egl::AttributeMap &attribs)
{}

inline EGLSyncImpl *EGLImplFactory::createSync()
{}

}  // namespace rx

#endif  // LIBANGLE_RENDERER_EGLIMPLFACTORY_H_