diff options
Diffstat (limited to 'emulator/opengl/host/libs/libOpenglRender/WindowSurface.h')
-rw-r--r-- | emulator/opengl/host/libs/libOpenglRender/WindowSurface.h | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/emulator/opengl/host/libs/libOpenglRender/WindowSurface.h b/emulator/opengl/host/libs/libOpenglRender/WindowSurface.h deleted file mode 100644 index fe35a94..0000000 --- a/emulator/opengl/host/libs/libOpenglRender/WindowSurface.h +++ /dev/null @@ -1,71 +0,0 @@ -/* -* Copyright (C) 2011 The Android Open Source Project -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -#ifndef _LIBRENDER_WINDOWSURFACE_H -#define _LIBRENDER_WINDOWSURFACE_H - -#include "ColorBuffer.h" -#include "RenderContext.h" -#include "FBConfig.h" -#include "emugl/common/smart_ptr.h" -#include "FixedBuffer.h" -#include <EGL/egl.h> -#include <GLES/gl.h> - -enum SurfaceBindType { - SURFACE_BIND_READ, - SURFACE_BIND_DRAW, - SURFACE_BIND_READDRAW -}; - -class WindowSurface -{ -public: - static WindowSurface *create(int p_config, int p_width, int p_height); - ~WindowSurface(); - EGLSurface getEGLSurface() const { return m_eglSurface; } - - void setColorBuffer(ColorBufferPtr p_colorBuffer); - bool flushColorBuffer(); - void bind(RenderContextPtr p_ctx, SurfaceBindType p_bindType); - -private: - WindowSurface(); - - bool blitToColorBuffer(); // copy pbuffer content with texload and blit - bool resizePbuffer(unsigned int p_width, unsigned int p_height); - -private: - GLuint m_fbObj; // GLES Framebuffer object (when EGLimage is used) - GLuint m_depthRB; - GLuint m_stencilRB; - EGLSurface m_eglSurface; - ColorBufferPtr m_attachedColorBuffer; - RenderContextPtr m_readContext; - RenderContextPtr m_drawContext; - GLuint m_width; - GLuint m_height; - GLuint m_pbufWidth; - GLuint m_pbufHeight; - bool m_useEGLImage; - bool m_useBindToTexture; - FixedBuffer m_xferBuffer; - FixedBuffer m_xUpdateBuf; - const FBConfig *m_fbconf; -}; - -typedef emugl::SmartPtr<WindowSurface> WindowSurfacePtr; - -#endif |