| 1 | /*************************************************************************** |
| 2 | PluginGLView.h |
| 3 | PeopsSoftGPU |
| 4 | |
| 5 | Created by Gil Pedersen on Sun April 18 2004. |
| 6 | Copyright (c) 2004 Gil Pedersen. |
| 7 | ***************************************************************************/ |
| 8 | |
| 9 | /*************************************************************************** |
| 10 | * * |
| 11 | * This program is free software; you can redistribute it and/or modify * |
| 12 | * it under the terms of the GNU General Public License as published by * |
| 13 | * the Free Software Foundation; either version 2 of the License, or * |
| 14 | * (at your option) any later version. See also the license.txt file for * |
| 15 | * additional informations. * |
| 16 | * * |
| 17 | ***************************************************************************/ |
| 18 | |
| 19 | #define PluginGLView NetSfPeopsSoftGPUPluginGLView |
| 20 | |
| 21 | #import <Cocoa/Cocoa.h> |
| 22 | #import <OpenGL/gl.h> |
| 23 | #include <sys/time.h> |
| 24 | |
| 25 | #define IMAGE_COUNT 2 |
| 26 | |
| 27 | @interface PluginGLView : NSOpenGLView |
| 28 | { |
| 29 | GLubyte *image_base; |
| 30 | GLubyte *image[IMAGE_COUNT]; |
| 31 | |
| 32 | GLint buffers; |
| 33 | //GLint frame_rate; |
| 34 | |
| 35 | GLenum texture_hint; |
| 36 | GLboolean rect_texture; |
| 37 | GLboolean client_storage; |
| 38 | GLboolean texture_range; |
| 39 | |
| 40 | struct timeval cycle_time; |
| 41 | |
| 42 | NSLock *glLock; |
| 43 | BOOL noDisplay; |
| 44 | BOOL drawBG; |
| 45 | |
| 46 | int image_width; |
| 47 | int image_height; |
| 48 | int image_width2; |
| 49 | int image_height2; |
| 50 | int image_depth; |
| 51 | int image_type; |
| 52 | float image_tx; |
| 53 | float image_ty; |
| 54 | int whichImage; |
| 55 | int isFullscreen; |
| 56 | } |
| 57 | |
| 58 | - (void)renderScreen; |
| 59 | - (void)swapBuffer; |
| 60 | - (void)clearBuffer:(BOOL)display; |
| 61 | - (void)loadTextures: (GLboolean)first; |
| 62 | |
| 63 | @end |