File: displaylist.hpp

package info (click to toggle)
python-visual 1%3A5.12-1.1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 7,672 kB
  • ctags: 7,636
  • sloc: cpp: 15,593; sh: 9,615; ansic: 6,631; python: 4,737; makefile: 385
file content (40 lines) | stat: -rw-r--r-- 1,034 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef VPYTHON_UTIL_DISPLAYLIST_HPP
#define VPYTHON_UTIL_DISPLAYLIST_HPP

// Copyright (c) 2004 by Jonathan Brandmeyer and others.
// See the file license.txt for complete license terms.
// See the file authors.txt for a complete list of contributors.

#include <boost/shared_ptr.hpp>

namespace cvisual {

using boost::shared_ptr;

/** A manager for OpenGL displaylists */
class displaylist
{
 private:
	shared_ptr<class displaylist_impl> impl;
 
 public:
	/** Begin compiling a new displaylist.  Nothing is drawn to the screen
 		when rendering commands into the displaylist.  Be sure to call 
 		gl_compile_end() when you are done.
 		*/
	void gl_compile_begin();
	
	/** Completes compiling the displaylist. */
	void gl_compile_end();
	
	/** Perform the OpenGL commands cached with gl_compile_begin() and 
		gl_compile_end(). */
	void gl_render() const;
	
	/** @return true iff this object contains a compiled OpenGL program. */
	operator bool() const;
};

} // !namespace cvisual

#endif // !defined VPYTHON_UTIL_DISPLAYLIST_HPP