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
41
42
43
44
45
46
47
48
49
50
|
/* C routines encapsulating small amounts of Objective C code to allow
nsContext creation and manipulation to occur from Java
It's unfortunate this couldn't be placed in the macosx
stub_includes directory, but due to the presence of the jni.h stub
headers in that directory, if that is in the include path during
compilation then the build fails.
*/
typedef int Bool;
void* createContext(void* shareContext, void* nsView,
int doubleBuffer,
int stereo,
int redBits,
int greenBits,
int blueBits,
int alphaBits,
int depthBits,
int stencilBits,
int accumRedBits,
int accumGreenBits,
int accumBlueBits,
int accumAlphaBits,
int sampleBuffers,
int numSamples,
int pbuffer,
int floatingPoint,
int* viewNotReady);
Bool makeCurrentContext(void* nsContext, void* nsView);
Bool clearCurrentContext(void* nsContext, void* nsView);
Bool deleteContext(void* nsContext, void* nsView);
Bool flushBuffer(void* nsContext, void* nsView);
void updateContext(void* nsContext, void* nsView);
void* updateContextRegister(void* nsContext, void* nsView);
void updateContextUnregister(void* nsContext, void* nsView, void* updater);
void* createPBuffer(int renderTarget, int internalFormat, int width, int height);
Bool destroyPBuffer(void* nsContext, void* pBuffer);
void setContextPBuffer(void* nsContext, void* pBuffer);
void setContextTextureImageToPBuffer(void* nsContext, void* pBuffer, int colorBuffer);
void* getProcAddress(const char *procName);
void setSwapInterval(void* nsContext, int interval);
/* Gamma-related functionality */
Bool setGammaRamp(int tableSize, float* redRamp, float* greenRamp, float* blueRamp);
void resetGammaRamp();
|