root / rgbdslam / external / siftgpu / src / SiftGPU / FrameBufferObject.h @ 9240aaa3
History | View | Annotate | Download (1.57 KB)
1 | 9240aaa3 | Alex | ////////////////////////////////////////////////////////////////////////////
|
---|---|---|---|
2 | // File: FrameBufferObject.h
|
||
3 | // Author: Changchang Wu
|
||
4 | // Description : interface for the FrameBufferObject class.
|
||
5 | //
|
||
6 | //
|
||
7 | //
|
||
8 | // Copyright (c) 2007 University of North Carolina at Chapel Hill
|
||
9 | // All Rights Reserved
|
||
10 | //
|
||
11 | // Permission to use, copy, modify and distribute this software and its
|
||
12 | // documentation for educational, research and non-profit purposes, without
|
||
13 | // fee, and without a written agreement is hereby granted, provided that the
|
||
14 | // above copyright notice and the following paragraph appear in all copies.
|
||
15 | //
|
||
16 | // The University of North Carolina at Chapel Hill make no representations
|
||
17 | // about the suitability of this software for any purpose. It is provided
|
||
18 | // 'as is' without express or implied warranty.
|
||
19 | //
|
||
20 | // Please send BUG REPORTS to ccwu@cs.unc.edu
|
||
21 | //
|
||
22 | ////////////////////////////////////////////////////////////////////////////
|
||
23 | |||
24 | |||
25 | #if !defined(_FRAME_BUFFER_OBJECT_H)
|
||
26 | #define _FRAME_BUFFER_OBJECT_H
|
||
27 | |||
28 | class FrameBufferObject |
||
29 | { |
||
30 | static GLuint GlobalFBO; //not thread-safe |
||
31 | GLuint _fboID; |
||
32 | public:
|
||
33 | static int UseSingleFBO; |
||
34 | public:
|
||
35 | static void DeleteGlobalFBO(); |
||
36 | static void UnattachTex(GLenum attachment); |
||
37 | static void UnbindFBO(); |
||
38 | static void AttachDepthTexture(GLenum textureTarget, GLuint texID); |
||
39 | static void AttachTexture( GLenum textureTarget, GLenum attachment, GLuint texID); |
||
40 | static void AttachRenderBuffer(GLenum attachment, GLuint buffID ); |
||
41 | static void UnattachRenderBuffer(GLenum attachment); |
||
42 | public:
|
||
43 | void BindFBO();
|
||
44 | FrameBufferObject(int autobind = 1); |
||
45 | ~FrameBufferObject(); |
||
46 | |||
47 | }; |
||
48 | |||
49 | #endif |