blob: 2afcaf0f22fa107fa7c90ac0951344eecaaafc1d [file] [log] [blame]
Corentin Wallez52445282015-06-09 09:15:54 +02001//
2// Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
3// Use of this source code is governed by a BSD-style license that can be
4// found in the LICENSE file.
5//
6
7// OSPixmap.h: Definition of an abstract pixmap class
8
9#ifndef SAMPLE_UTIL_PIXMAP_H_
10#define SAMPLE_UTIL_PIXMAP_H_
11
Corentin Wallez27593e02015-09-15 08:19:09 -070012#include <stdlib.h>
13
Yuly Novikov9f088622018-12-29 20:46:15 +000014#include <export.h>
Corentin Wallez52445282015-06-09 09:15:54 +020015#include <EGL/egl.h>
16#include <EGL/eglext.h>
17
Yuly Novikov9f088622018-12-29 20:46:15 +000018#include "Event.h"
Corentin Wallez52445282015-06-09 09:15:54 +020019
Yuly Novikov9f088622018-12-29 20:46:15 +000020class ANGLE_EXPORT OSPixmap
Corentin Wallez52445282015-06-09 09:15:54 +020021{
22 public:
23 OSPixmap() {}
24 virtual ~OSPixmap() {}
25
Yuly Novikov9f088622018-12-29 20:46:15 +000026 virtual bool initialize(EGLNativeDisplayType display, size_t width, size_t height, int depth) = 0;
Corentin Wallez52445282015-06-09 09:15:54 +020027
28 virtual EGLNativePixmapType getNativePixmap() const = 0;
29};
30
Yuly Novikov9f088622018-12-29 20:46:15 +000031ANGLE_EXPORT OSPixmap *CreateOSPixmap();
Corentin Wallez52445282015-06-09 09:15:54 +020032
Yuly Novikov9f088622018-12-29 20:46:15 +000033#endif // SAMPLE_UTIL_PIXMAP_H_