VirtualBox

source: vbox/trunk/src/VBox/GuestHost/OpenGL/include/state/cr_occlude.h@ 18847

Last change on this file since 18847 was 15532, checked in by vboxsync, 16 years ago

crOpenGL: export to OSE

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 1.2 KB
Line 
1/* Copyright (c) 2001, Stanford University
2 * All rights reserved.
3 *
4 * See the file LICENSE.txt for information on redistributing this software.
5 */
6
7#ifndef CR_OCCLUSION_H
8#define CR_OCCLUSION_H
9
10#include "cr_hash.h"
11#include "state/cr_statetypes.h"
12
13#include <iprt/cdefs.h>
14
15#ifdef __cplusplus
16extern "C" {
17#endif
18
19typedef struct {
20 CRbitvalue dirty[CR_MAX_BITARRAY];
21} CROcclusionBits;
22
23
24/*
25 * Occlusion query object.
26 */
27typedef struct {
28 GLenum target;
29 GLuint name;
30 GLuint refCount;
31 GLuint passedCounter;
32 GLboolean active;
33 CRbitvalue dirty[CR_MAX_BITARRAY]; /* dirty data or state */
34 GLintptrARB dirtyStart, dirtyLength; /* dirty region */
35} CROcclusionObject;
36
37
38typedef struct {
39 CRHashTable *objects;
40 GLuint currentQueryObject;
41} CROcclusionState;
42
43
44DECLEXPORT(void) crStateOcclusionInit(CRContext *ctx);
45
46DECLEXPORT(void) crStateOcclusionDestroy(CRContext *ctx);
47
48DECLEXPORT(void) crStateOcclusionDiff(CROcclusionBits *bb, CRbitvalue *bitID,
49 CRContext *fromCtx, CRContext *toCtx);
50DECLEXPORT(void) crStateOcclusionSwitch(CROcclusionBits *bb, CRbitvalue *bitID,
51 CRContext *fromCtx, CRContext *toCtx);
52
53
54#ifdef __cplusplus
55}
56#endif
57
58#endif /* CR_OCCLUSION_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette