@class NSObject, NSString, MPAVRoutingDataSource, NSArray, NSSet, MPAVRoute, MPAVRoutingControllerSelectionQueue; @protocol MPAVRoutingControllerDelegate, OS_dispatch_queue, MPAVOutputDevicePlaybackDataSource; @interface MPAVRoutingController : NSObject { NSArray *_cachedRoutes; NSArray *_cachedPickedRoutes; long long _externalScreenType; BOOL _hasExternalScreenType; BOOL _scheduledSendDelegateRoutesChanged; long long _volumeControlStateForPickedRoute; MPAVRoutingControllerSelectionQueue *_routingControllerSelectionQueue; int _deviceAvailabilityNotifyToken; BOOL _deviceAvailabilityOverrideState; NSObject *_serialQueue; unsigned long long _stateHandle; BOOL _alwaysAllowUpdates; } @property (class, readonly, nonatomic) MPAVRoute *systemRoute; @property (retain, nonatomic) MPAVRoute *legacyCachedRoute; @property (weak, nonatomic) id playbackDataSource; @property (copy, nonatomic) NSString *presentedBundleID; @property (copy, nonatomic) NSString *representedBundleID; @property (readonly, nonatomic) BOOL representsLongFormVideoContent; @property (nonatomic) BOOL alwaysAllowUpdates; @property (weak, nonatomic) id delegate; @property (readonly, nonatomic) MPAVRoutingDataSource *dataSource; @property (copy, nonatomic) NSString *name; @property (nonatomic) long long discoveryMode; @property (nonatomic) BOOL fetchAvailableRoutesSynchronously; @property (readonly, nonatomic) long long externalScreenType; @property (readonly, copy, nonatomic) NSArray *availableRoutes; @property (copy, nonatomic) NSString *category; @property (nonatomic) long long routeTypes; @property (readonly, nonatomic) MPAVRoute *pickedRoute; @property (readonly, nonatomic) NSArray *pickedRoutes; @property (readonly, nonatomic) NSSet *pendingPickedRoutes; @property (readonly, nonatomic) MPAVRoute *pendingPickedRoute; @property (readonly, nonatomic) BOOL hasPendingPickedRoutes; @property (readonly, nonatomic) BOOL volumeControlIsAvailable; @property (readonly, nonatomic) BOOL supportsMultipleSelection; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)_iconNameForRoute:(id)a0; + (void)setActiveRoute:(id)a0 reason:(id)a1 completion:(id /* block */)a2; + (id)_symbolNameForModelID:(id)a0; + (void)setActiveRoute:(id)a0 completion:(id /* block */)a1; + (BOOL)bundleIdRepresentsLongFormVideoContent:(id)a0; + (id)_symbolNameMap; + (id)_iconImageForRoute:(id)a0; + (id)_symbolNameForRoutes:(id)a0; + (id)_iconNameForRoutes:(id)a0; + (void)getProactiveRouteWithCompletion:(id /* block */)a0; + (id)_symbolNameForProductIdentifier:(id)a0; + (id)_currentDeviceRoutingSymbolName; + (id)_symbolNameForClusterRoute:(id)a0; + (id)_symbolImageForRoutes:(id)a0; + (void)getActiveRouteWithCompletion:(id /* block */)a0; + (id)_currentDeviceRoutingSymbolImage; + (id)_iconImageForRoutes:(id)a0; + (id)_fallbackSymbolNameForRoute:(id)a0; + (void)getActiveRouteWithTimeout:(double)a0 completion:(id /* block */)a1; + (id)_sharedWorkerQueue; + (long long)activeRouteType; + (void)getProactiveRouteWithTimeout:(double)a0 completion:(id /* block */)a1; + (id)_iconImageForIdentifier:(id)a0; + (id)_symbolNameForRoute:(id)a0; + (id)_currentDeviceRoutingIconImage; + (id)systemRouteWithContextUID:(id)a0; + (id)_symbolImageForIdentifier:(id)a0; + (id)_symbolImageForRoute:(id)a0; + (void)_getActiveRouteWithTimeout:(double)a0 type:(long long)a1 completion:(id /* block */)a2; - (void)setCachedRoutes:(id)a0; - (BOOL)wirelessDisplayRouteIsPicked; - (BOOL)pickRoute:(id)a0 withPassword:(id)a1 completion:(id /* block */)a2; - (id)init; - (void)_promptForHijackIfNeeded:(id)a0 handler:(id /* block */)a1; - (void)_registerNotifications; - (void)_unregisterNotifications; - (void)dealloc; - (void)_routeStatusDidChangeNotification:(id)a0; - (id)updatePickedRoutes; - (void)selectRoute:(id)a0 operation:(long long)a1 completion:(id /* block */)a2; - (void)_sendDelegateFailedToPickRouteWithError:(id)a0; - (BOOL)receiverRouteIsPicked; - (void)_setVolumeControlStateForPickedRoute:(long long)a0; - (void)_clearLegacyCachedRoute; - (BOOL)routeIsLeaderOfEndpoint:(id)a0; - (id)updateAvailableRoutes; - (BOOL)removePickedRoute:(id)a0 completion:(id /* block */)a1; - (void)_volumeControlAvailabilityDidChangeNotification:(id)a0; - (void)_externalScreenTypeDidChangeNotification:(id)a0; - (void)fetchAvailableRoutesWithCompletionQueue:(id)a0 completionHandler:(id /* block */)a1; - (BOOL)pickBestDeviceRoute; - (BOOL)_shouldSendDelegateRoutesChanged; - (BOOL)_pickRoute:(id)a0 completion:(id /* block */)a1; - (BOOL)removePickedRoute:(id)a0; - (BOOL)addPickedRoute:(id)a0; - (BOOL)pickRoute:(id)a0; - (id)_pickedRoutesInArray:(id)a0; - (id)cachedRoutes; - (long long)_externalScreenType:(BOOL *)a0; - (void)_activeAudioRouteDidChangeNotification:(id)a0; - (long long)_volumeControlStateForPickedRoute; - (id)_stateDumpObject; - (void)_updateCachedRoutes; - (id)initWithName:(id)a0; - (BOOL)speakerRouteIsPicked; - (void)_sendDelegatePickedRoutesChanged; - (BOOL)routeIsPendingPick:(id)a0; - (void)_onQueueSetExternalScreenType:(long long)a0; - (BOOL)_deviceAvailabilityOverrideState; - (id)cachedPickedRoutes; - (id)initWithDataSource:(id)a0 name:(id)a1; - (id)_fullStateDumpObject; - (void)_setExternalScreenType:(long long)a0; - (void)_pickableRoutesDidChangeNotification:(id)a0; - (void)_syncUpdateRoutes; - (id)videoRouteForRoute:(id)a0; - (void).cxx_destruct; - (void)unpickAirPlayScreenRouteWithCompletion:(id /* block */)a0; - (void)clearCachedRoutes; - (void)getActiveRouteWithTimeout:(double)a0 completion:(id /* block */)a1; - (BOOL)routeOtherThanHandsetAvailable; - (long long)activeRouteType; - (void)selectRoutes:(id)a0 operation:(long long)a1 completion:(id /* block */)a2; - (void)_mediaServerDiedNotification:(id)a0; - (BOOL)pickSpeakerRoute; - (BOOL)addPickedRoute:(id)a0 completion:(id /* block */)a1; - (BOOL)handsetRouteIsPicked; - (void)_scheduleSendDelegateRoutesChanged; - (BOOL)pickRoute:(id)a0 withPassword:(id)a1; - (BOOL)wirelessDisplayRoutesAvailable; - (BOOL)pickHandsetRoute; - (id)_pickedRouteInArray:(id)a0; - (BOOL)airtunesRouteIsPicked; - (void)unpickTVRoutes; - (BOOL)routeOtherThanHandsetAndSpeakerAvailable; - (void)fetchAvailableRoutesWithCompletionHandler:(id /* block */)a0; @end