OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2009 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 GC3Denum getColorBufferFormat() const; | 74 GC3Denum getColorBufferFormat() const; |
75 GC3Dsizei getColorBufferWidth() const; | 75 GC3Dsizei getColorBufferWidth() const; |
76 GC3Dsizei getColorBufferHeight() const; | 76 GC3Dsizei getColorBufferHeight() const; |
77 | 77 |
78 // This should always be called before drawArray, drawElements, clear, | 78 // This should always be called before drawArray, drawElements, clear, |
79 // readPixels, copyTexImage2D, copyTexSubImage2D if this framebuffer is | 79 // readPixels, copyTexImage2D, copyTexSubImage2D if this framebuffer is |
80 // currently bound. | 80 // currently bound. |
81 // Return false if the framebuffer is incomplete; otherwise initialize | 81 // Return false if the framebuffer is incomplete; otherwise initialize |
82 // the buffers if they haven't been initialized and | 82 // the buffers if they haven't been initialized and |
83 // needToInitializeAttachments is true. | 83 // needToInitializeAttachments is true. |
84 bool onAccess(GraphicsContext3D*, const char** reason); | 84 bool onAccess(WebGLRenderingContext*, WebGLSharedObject::AcquireMode, const
char**); |
85 | 85 |
86 // Software version of glCheckFramebufferStatus(), except that when | 86 // Software version of glCheckFramebufferStatus(), except that when |
87 // FRAMEBUFFER_COMPLETE is returned, it is still possible for | 87 // FRAMEBUFFER_COMPLETE is returned, it is still possible for |
88 // glCheckFramebufferStatus() to return FRAMEBUFFER_UNSUPPORTED, | 88 // glCheckFramebufferStatus() to return FRAMEBUFFER_UNSUPPORTED, |
89 // depending on hardware implementation. | 89 // depending on hardware implementation. |
90 GC3Denum checkStatus(const char** reason) const; | 90 GC3Denum checkStatus(WebGLRenderingContext*, WebGLSharedObject::AcquireMode,
const char**) const; |
91 | 91 |
92 bool hasEverBeenBound() const { return object() && m_hasEverBeenBound; } | 92 bool hasEverBeenBound() const { return object() && m_hasEverBeenBound; } |
93 | 93 |
94 void setHasEverBeenBound() { m_hasEverBeenBound = true; } | 94 void setHasEverBeenBound() { m_hasEverBeenBound = true; } |
95 | 95 |
96 bool hasStencilBuffer() const; | 96 bool hasStencilBuffer() const; |
97 | 97 |
98 // Wrapper for drawBuffersEXT/drawBuffersARB to work around a driver bug. | 98 // Wrapper for drawBuffersEXT/drawBuffersARB to work around a driver bug. |
99 void drawBuffers(const Vector<GC3Denum>& bufs); | 99 void drawBuffers(const Vector<GC3Denum>& bufs); |
100 | 100 |
(...skipping 24 matching lines...) Expand all Loading... |
125 | 125 |
126 bool m_hasEverBeenBound; | 126 bool m_hasEverBeenBound; |
127 | 127 |
128 Vector<GC3Denum> m_drawBuffers; | 128 Vector<GC3Denum> m_drawBuffers; |
129 Vector<GC3Denum> m_filteredDrawBuffers; | 129 Vector<GC3Denum> m_filteredDrawBuffers; |
130 }; | 130 }; |
131 | 131 |
132 } // namespace WebCore | 132 } // namespace WebCore |
133 | 133 |
134 #endif // WebGLFramebuffer_h | 134 #endif // WebGLFramebuffer_h |
OLD | NEW |