blob: a9f619d1c78b0b2c5b2d0273119ad52b525effb6 [file] [log] [blame]
// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef UI_GL_TEST_GL_TEST_SUPPORT_H_
#define UI_GL_TEST_GL_TEST_SUPPORT_H_
#include <stdint.h>
#include "third_party/abseil-cpp/absl/types/optional.h"
#include "ui/gfx/buffer_types.h"
#include "ui/gl/gl_implementation.h"
namespace gl {
class GLDisplay;
class GLTestSupport {
public:
// Initialize GL for image testing. |prefered_impl| is the GL implementation
// to select if it is an allowed GL implementation. Otherwise it selects the
// first allowed GL implementation.
static GLDisplay* InitializeGL(
absl::optional<GLImplementationParts> prefered_impl);
// Cleanup GL after being initialized for image testing.
static void CleanupGL(GLDisplay* display);
// Initialize buffer of a specific |format| to |color|.
static void SetBufferDataToColor(int width,
int height,
int stride,
int plane,
gfx::BufferFormat format,
const uint8_t color[4],
uint8_t* data);
};
} // namespace gl
#endif // UI_GL_TEST_GL_TEST_SUPPORT_H_