2024-11-10 22:11:29 +01:00
|
|
|
#import <QuartzCore/QuartzCore.h>
|
|
|
|
|
#import <UIKit/UIKit.h>
|
|
|
|
|
#import <Metal/Metal.h>
|
|
|
|
|
#import <QuartzCore/CAMetalLayer.h>
|
|
|
|
|
#import <CoreMotion/CMMotionManager.h>
|
|
|
|
|
|
2025-03-10 20:38:53 +01:00
|
|
|
struct iron_gpu_texture;
|
2024-11-10 22:11:29 +01:00
|
|
|
|
|
|
|
|
@interface GLView : UIView <UIKeyInput> {
|
|
|
|
|
@private
|
|
|
|
|
id<MTLDevice> device;
|
|
|
|
|
id<MTLCommandQueue> commandQueue;
|
|
|
|
|
id<MTLCommandBuffer> commandBuffer;
|
|
|
|
|
id<MTLRenderCommandEncoder> commandEncoder;
|
|
|
|
|
id<CAMetalDrawable> drawable;
|
|
|
|
|
id<MTLLibrary> library;
|
|
|
|
|
MTLRenderPassDescriptor *renderPassDescriptor;
|
|
|
|
|
id<MTLTexture> depthTexture;
|
|
|
|
|
|
|
|
|
|
CMMotionManager *motionManager;
|
|
|
|
|
bool hasAccelerometer;
|
|
|
|
|
float lastAccelerometerX, lastAccelerometerY, lastAccelerometerZ;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (void)begin;
|
|
|
|
|
- (void)end;
|
|
|
|
|
- (void)showKeyboard;
|
|
|
|
|
- (void)hideKeyboard;
|
|
|
|
|
- (CAMetalLayer *)metalLayer;
|
|
|
|
|
- (id<MTLDevice>)metalDevice;
|
|
|
|
|
- (id<MTLCommandQueue>)metalQueue;
|
|
|
|
|
|
|
|
|
|
@end
|
2025-02-26 18:46:36 +01:00
|
|
|
|
|
|
|
|
@interface GLViewController : UIViewController <UIDocumentPickerDelegate, UIDropInteractionDelegate> {
|
|
|
|
|
@private
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (void)loadView;
|
|
|
|
|
|
|
|
|
|
- (void)setVisible:(BOOL)value;
|
|
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
@class GLView;
|
|
|
|
|
|
2025-03-09 17:02:12 +01:00
|
|
|
@interface IronAppDelegate : NSObject <UIApplicationDelegate> {
|
2025-02-26 18:46:36 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
@interface Motion : NSObject <UIAccelerometerDelegate> {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@end
|