// // StreamFrameViewController.h // Moonlight // // Created by Diego Waxemberg on 1/18/14. // Copyright (c) 2015 Moonlight Stream. All rights reserved. // // Modified by True砖家 since 2024.6.26 // Copyright © 2024 True砖家 @ Bilibili. All rights reserved. // #import "Connection.h" #import "FloatBuffer.h" #import "ImGuiRenderer.h" #import "MetalViewController.h" #import "StreamConfiguration.h" #import "StreamView.h" #import "LayoutOnScreenControlsViewController.h" #import "MainFrameViewController.h" #import "StreamManager.h" #import #import #if TARGET_OS_TV @import GameController; @interface StreamFrameViewController : GCEventViewController #else @interface StreamFrameViewController : UIViewController #endif @property (nonatomic) StreamManager* streamMan; @property (nonatomic) StreamConfiguration* streamConfig; @property (nonatomic, strong) AVPictureInPictureController *pipController API_AVAILABLE(ios(9.0)); @property (nonatomic, strong) AVPictureInPictureControllerContentSource *pipContentSource API_AVAILABLE(ios(15.0)); // Needed for iOS 15+ layer-based PiP @property (nonatomic, weak) MainFrameViewController *mainFrameViewcontroller; @property (nonatomic, assign) bool micStreamInitialized; @property (nonatomic, assign) bool viewJustLoaded; @property (nonatomic, strong) MetalViewController *metalViewController; @property (nonatomic, strong) ImGuiRenderer *imguiView; - (void)updatePreferredDisplayMode:(BOOL)streamActive; - (void)setUserInteractionEnabledForStreamView:(bool)enabled; - (bool)shallDisableGyroHotSwitch; - (void)loadGameProfileConfigs:(OSCProfile* )profile; @end