51 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Objective-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
 |