51 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			51 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								#import <QuartzCore/QuartzCore.h>
							 | 
						||
| 
								 | 
							
								#import <UIKit/UIKit.h>
							 | 
						||
| 
								 | 
							
								#ifdef KINC_METAL
							 | 
						||
| 
								 | 
							
								#import <Metal/Metal.h>
							 | 
						||
| 
								 | 
							
								#import <QuartzCore/CAMetalLayer.h>
							 | 
						||
| 
								 | 
							
								#else
							 | 
						||
| 
								 | 
							
								#import <OpenGLES/ES1/gl.h>
							 | 
						||
| 
								 | 
							
								#import <OpenGLES/ES1/glext.h>
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								#ifndef KINC_TVOS
							 | 
						||
| 
								 | 
							
								#import <CoreMotion/CMMotionManager.h>
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								struct kinc_g5_render_target;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@interface GLView : UIView <UIKeyInput> {
							 | 
						||
| 
								 | 
							
								@private
							 | 
						||
| 
								 | 
							
								#ifdef KINC_METAL
							 | 
						||
| 
								 | 
							
									id<MTLDevice> device;
							 | 
						||
| 
								 | 
							
									id<MTLCommandQueue> commandQueue;
							 | 
						||
| 
								 | 
							
									id<MTLCommandBuffer> commandBuffer;
							 | 
						||
| 
								 | 
							
									id<MTLRenderCommandEncoder> commandEncoder;
							 | 
						||
| 
								 | 
							
									id<CAMetalDrawable> drawable;
							 | 
						||
| 
								 | 
							
									id<MTLLibrary> library;
							 | 
						||
| 
								 | 
							
									MTLRenderPassDescriptor *renderPassDescriptor;
							 | 
						||
| 
								 | 
							
									id<MTLTexture> depthTexture;
							 | 
						||
| 
								 | 
							
								#else
							 | 
						||
| 
								 | 
							
									EAGLContext *context;
							 | 
						||
| 
								 | 
							
									GLuint defaultFramebuffer, colorRenderbuffer, depthStencilRenderbuffer;
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef KINC_TVOS
							 | 
						||
| 
								 | 
							
									CMMotionManager *motionManager;
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
									bool hasAccelerometer;
							 | 
						||
| 
								 | 
							
									float lastAccelerometerX, lastAccelerometerY, lastAccelerometerZ;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								- (void)begin;
							 | 
						||
| 
								 | 
							
								- (void)end;
							 | 
						||
| 
								 | 
							
								- (void)showKeyboard;
							 | 
						||
| 
								 | 
							
								- (void)hideKeyboard;
							 | 
						||
| 
								 | 
							
								#ifdef KINC_METAL
							 | 
						||
| 
								 | 
							
								- (CAMetalLayer *)metalLayer;
							 | 
						||
| 
								 | 
							
								- (id<MTLDevice>)metalDevice;
							 | 
						||
| 
								 | 
							
								- (id<MTLLibrary>)metalLibrary;
							 | 
						||
| 
								 | 
							
								- (id<MTLCommandQueue>)metalQueue;
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								@end
							 |