text: //
  //     Generated by class-dump 3.5 (64 bit).
  //
  //     class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2013 by Steve Nygard.
  //
  
  #pragma mark Blocks
  
  typedef void (^CDUnknownBlockType)(void); // return type and parameters are unknown
  
  #pragma mark Named Structures
  
  struct Argument {
      void *value;
      unsigned int core_type;
      unsigned int sem_type;
      unsigned int size;
      unsigned short length;
      unsigned short flags;
  };
  
  struct CoreFunction {
      unsigned int fenum;
      unsigned int flags;
      unsigned short padding;
      unsigned short argument_count;
      union {
          unsigned long long context_id;
          unsigned long long receiver_id;
      } ;
      struct Argument return_value;
      struct Argument arguments[16];
      unsigned int fbuf_size;
      unsigned int internal_buffer_size;
      void *fbuf;
      void *internal_buffer;
  };
  
  struct DYShaderProfilerTiming {
      struct Statistics _field1;
      struct Statistics _field2;
      struct Statistics _field3;
  };
  
  struct Function {
      struct CoreFunction core;
      unsigned long long timestamp;
      unsigned long long duration;
      unsigned long long *backtrace;
      unsigned short backtrace_length;
      unsigned short gl_error;
      int events_type;
      void *events;
      unsigned int events_size;
      unsigned int queue_width;
      unsigned long long queue_id;
      unsigned long long thread_id;
      struct Function *next_associated;
      void *sm_context;
  };
  
  struct GPUMessageTraceActivity {
      double _startTime;
      double _endTime;
      char _inProgress;
  };
  
  struct IFunctionDecoder;
  
  struct Statistics {
      double _field1;
      double _field2;
      double _field3;
  };
  
  struct TFunctionStream<GPUTools::FD::Function, void>;
  
  struct _Iterator<GPUTools::FD::Function> {
      struct Function _function;
      void *_encbuf;
      void *_next;
      void *_end;
      struct IFunctionDecoder *_decoder;
      _Bool _fast_size;
  };
  
  struct __shared_weak_count;
  
  struct shared_ptr<GPUTools::FD::Function> {
      struct Function *__ptr_;
      struct __shared_weak_count *__cntrl_;
  };
  
  struct shared_ptr<GPUTools::FD::TFunctionStream<GPUTools::FD::Function, void>> {
      struct TFunctionStream<GPUTools::FD::Function, void> *__ptr_;
      struct __shared_weak_count *__cntrl_;
  };
  
  struct vector<unsigned int, std::__1::allocator<unsigned int>> {
      unsigned int *__begin_;
      unsigned int *__end_;
      struct __compressed_pair<unsigned int *, std::__1::allocator<unsigned int>> {
          unsigned int *__first_;
      } __end_cap_;
  };
  
  #pragma mark Typedef'd Structures
  
  // Template types
  typedef struct shared_ptr<GPUTools::FD::Function> {
      struct Function *__ptr_;
      struct __shared_weak_count *__cntrl_;
  } shared_ptr_2d3f6817;
  
  #pragma mark -
  
  //
  // File: /Applications/Xcode-7GM.app/Contents/PlugIns/GPUDebuggerFoundation.ideplugin/Contents/MacOS/GPUDebuggerFoundation
  // UUID: 6DCB868A-80F8-3702-8240-F3E14B3849F3
  //
  //                           Arch: x86_64
  //                Current version: 1.0.0
  //          Compatibility version: 1.0.0
  //                 Source version: 18079.0.0.0.0
  //       Minimum Mac OS X version: 10.10.0
  //                    SDK version: 10.11.0
  //
  // Objective-C Garbage Collection: Unsupported
  //
  
  @protocol DVTInvalidation <NSObject>
  - (void)primitiveInvalidate;
  
  @optional
  + (BOOL)supportsInvalidationPrevention;
  + (unsigned long long)assertionBehaviorForKeyValueObservationsAtEndOfEvent;
  + (unsigned long long)assertionBehaviorAfterEndOfEventForSelector:(SEL)arg1;
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  - (void)invalidate;
  @end
  
  @protocol DYShaderProfilerDelegate <DVTInvalidation>
  @property(readonly) DYDeviceInfo *deviceInfo;
  - (BOOL)isRuntimeOSAppleInternal;
  - (DYFuture *)queryShaderInfoWithPayload:(NSDictionary *)arg1;
  - (DYCaptureSessionInfo *)captureSessionInfo;
  - (DYCaptureArchive *)modifiedCaptureArchive;
  - (DYCaptureArchive *)captureArchive;
  @end
  
  @protocol IDEDebugNavigableModel <NSObject>
  @property(readonly) IDELaunchSession *launchSession;
  @property(readonly, copy) NSString *associatedProcessUUID;
  @end
  
  @protocol IDEDebugTopNavigableModel <IDEDebugNavigableModel, DVTInvalidation>
  @property(copy, nonatomic) NSString *name;
  - (NSString *)contentDelegateUIExtensionIdentifier;
  
  @optional
  @property(readonly) NSString *subtitle;
  @property(readonly, nonatomic) NSArray *loadedCodeModules;
  @property(readonly, nonatomic) IDEDebugSession *parentDebugSession;
  @end
  
  @protocol IDEKeyDrivenNavigableItemRepresentedObject <NSObject>
  @property(readonly) NSString *navigableItem_name;
  
  @optional
  @property(readonly) NSString *navigableItem_groupIdentifier;
  @property(readonly) DVTDocumentLocation *navigableItem_contentDocumentLocation;
  @property(readonly) DVTFileDataType *navigableItem_documentType;
  @property(readonly) IDEFileReference *navigableItem_fileReference;
  @property(readonly) BOOL navigableItem_isLeaf;
  @property(readonly) BOOL navigableItem_isMajorGroup;
  @property(readonly) NSString *navigableItem_toolTip;
  @property(readonly) NSImage *navigableItem_image;
  - (DVTDocumentLocation *)navigableItem_contentDocumentLocationInDocumentURL:(NSURL *)arg1;
  @end
  
  @protocol IDETraceInferiorSession <NSObject>
  @property int state;
  @property(readonly) id currentTraceSession;
  @property(readonly) id <IDEDebugTopNavigableModel> process;
  @end
  
  @protocol NSCopying
  - (id)copyWithZone:(struct _NSZone *)arg1;
  @end
  
  @protocol NSFileManagerDelegate <NSObject>
  
  @optional
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 removingItemAtURL:(NSURL *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 removingItemAtPath:(NSString *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldRemoveItemAtURL:(NSURL *)arg2;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldRemoveItemAtPath:(NSString *)arg2;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 linkingItemAtURL:(NSURL *)arg3 toURL:(NSURL *)arg4;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 linkingItemAtPath:(NSString *)arg3 toPath:(NSString *)arg4;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldLinkItemAtURL:(NSURL *)arg2 toURL:(NSURL *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldLinkItemAtPath:(NSString *)arg2 toPath:(NSString *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 movingItemAtURL:(NSURL *)arg3 toURL:(NSURL *)arg4;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 movingItemAtPath:(NSString *)arg3 toPath:(NSString *)arg4;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldMoveItemAtURL:(NSURL *)arg2 toURL:(NSURL *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldMoveItemAtPath:(NSString *)arg2 toPath:(NSString *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 copyingItemAtURL:(NSURL *)arg3 toURL:(NSURL *)arg4;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldProceedAfterError:(NSError *)arg2 copyingItemAtPath:(NSString *)arg3 toPath:(NSString *)arg4;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldCopyItemAtURL:(NSURL *)arg2 toURL:(NSURL *)arg3;
  - (BOOL)fileManager:(NSFileManager *)arg1 shouldCopyItemAtPath:(NSString *)arg2 toPath:(NSString *)arg3;
  @end
  
  @protocol NSObject
  @property(readonly, copy) NSString *description;
  @property(readonly) Class superclass;
  @property(readonly) unsigned long long hash;
  - (struct _NSZone *)zone;
  - (unsigned long long)retainCount;
  - (id)autorelease;
  - (oneway void)release;
  - (id)retain;
  - (BOOL)respondsToSelector:(SEL)arg1;
  - (BOOL)conformsToProtocol:(Protocol *)arg1;
  - (BOOL)isMemberOfClass:(Class)arg1;
  - (BOOL)isKindOfClass:(Class)arg1;
  - (BOOL)isProxy;
  - (id)performSelector:(SEL)arg1 withObject:(id)arg2 withObject:(id)arg3;
  - (id)performSelector:(SEL)arg1 withObject:(id)arg2;
  - (id)performSelector:(SEL)arg1;
  - (id)self;
  - (Class)class;
  - (BOOL)isEqual:(id)arg1;
  
  @optional
  @property(readonly, copy) NSString *debugDescription;
  @end
  
  @interface GPUCaptureArchiveManager : NSObject <NSFileManagerDelegate>
  {
      NSObject<OS_dispatch_queue> *_queue;
      NSFileManager *_fileManager;
      NSMapTable *_urlToCaptureArchiveTable;
      NSMapTable *_hashToURLTable;
      NSMutableSet *_reportURLSet;
  }
  
  + (id)sharedArchiveManager;
  - (void).cxx_destruct;
  - (BOOL)isValidReportURL:(id)arg1;
  - (void)unregisterReportURL:(id)arg1;
  - (void)registerReportURL:(id)arg1;
  - (id)URLForHashkeyString:(id)arg1;
  - (unsigned long long)hashKeyForURL:(id)arg1;
  - (BOOL)copyWriteArchiveAtURL:(id)arg1 toURL:(id)arg2 error:(id *)arg3;
  - (id)copyAdjunctDataForFilename:(id)arg1 fromArchiveAtURL:(id)arg2 error:(id *)arg3;
  - (BOOL)storeAdjunctData:(id)arg1 filename:(id)arg2 toArchiveAtURL:(id)arg3 error:(id *)arg4;
  - (id)retrieveArchivedDataForKey:(id)arg1 fromArchiveAtURL:(id)arg2 error:(id *)arg3;
  - (BOOL)archiveData:(id)arg1 withKey:(id)arg2 toArchiveAtURL:(id)arg3 replaceData:(BOOL)arg4 error:(id *)arg5;
  - (BOOL)invalidateArchiveWithURL:(id)arg1 eraseFromDisk:(BOOL)arg2 error:(id *)arg3;
  - (void)closeArchiveAtURL:(id)arg1;
  - (id)createNewArchiveWithInferiorName:(id)arg1 error:(id *)arg2;
  - (id)openCaptureArchiveAtURL:(id)arg1 error:(id *)arg2;
  - (id)bufferedWriteURLForURL:(id)arg1;
  - (BOOL)commitArchiveChangesForArchiveAtURL:(id)arg1 error:(id *)arg2;
  - (BOOL)swapBufferedArchiveAtURL:(id)arg1 error:(id *)arg2;
  - (id)_writeCaptureArchiveForURL:(id)arg1 createIfNeeded:(BOOL)arg2;
  - (id)_copyAndOpenArchiveAtURL:(id)arg1;
  - (id)_copyArchiveToTemporaryDirectoryAtURL:(id)arg1 error:(id *)arg2;
  - (id)captureArchiveForURL:(id)arg1;
  - (id)_readCaptureArchiveForURL:(id)arg1;
  - (id)_addCaptureArchive:(id)arg1;
  - (id)init;
  
  // Remaining properties
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) Class superclass;
  
  @end
  
  @interface GPUCaptureStoreDelegate : NSObject
  {
      GPUDebuggerController *_controller;
  }
  
  - (id)forwardingTargetForSelector:(SEL)arg1;
  - (id)initWithController:(id)arg1;
  
  @end
  
  @interface GPUDebuggerController : NSObject <DVTInvalidation, DYShaderProfilerDelegate>
  {
      DVTObservingToken *_extensionsObserver;
      NSMutableArray *_debugStateObservers;
      int _postCaptureDebugState;
      double _appFrameRate;
      double _appTargetFrameRate;
      NSDictionary *_maxIssueSeverity;
      DYShaderProfiler *_shaderProfiler;
      NSObject<OS_dispatch_queue> *_shaderProfilerReplyQueue;
      DYShaderProfilerResult *_shaderProfilerResults;
      DYShaderProfilerResult *_shaderProfilerResultsBase;
      DYInvestigatorCaseConfigData *_investigatorCaseConfigData;
      BOOL _supportsInvestigator;
      BOOL _isInvestigatorReady;
      BOOL _archiveHasPendingChanges;
      BOOL _shouldDisableCaptureFrameButton;
      BOOL _shadersUpdatable;
      int _debugState;
      int _enableGPUValidationMode;
      id <GPUResourceManager> _resourceManager;
      GPUTraceModelFactory *_modelFactory;
      GPUInvestigatorReportItem *_reportItem;
      DYCaptureSessionInfo *_captureSessionInfo;
      GPUTraceSession *_traceSession;
      GPUInferiorSession *_inferiorSession;
      DYDeviceInfo *_deviceInfo;
      NSError *_error;
      NSString *_appName;
      NSArray *_appArguments;
      NSArray *_analyzerFindings;
      NSArray *_extensions;
      NSSet *_fenumsWithErrors;
      NSURL *_captureArchiveURL;
      NSObject<OS_dispatch_queue> *_synchronousJobQueue;
  }
  
  + (unsigned long long)assertionBehaviorAfterEndOfEventForSelector:(SEL)arg1;
  + (void)initialize;
  + (id)logAspect;
  @property(readonly) NSObject<OS_dispatch_queue> *synchronousJobQueue; // @synthesize synchronousJobQueue=_synchronousJobQueue;
  @property(readonly) BOOL shadersUpdatable; // @synthesize shadersUpdatable=_shadersUpdatable;
  @property int enableGPUValidationMode; // @synthesize enableGPUValidationMode=_enableGPUValidationMode;
  @property BOOL shouldDisableCaptureFrameButton; // @synthesize shouldDisableCaptureFrameButton=_shouldDisableCaptureFrameButton;
  @property(readonly) DYShaderProfilerResult *shaderProfilerResultsBase; // @synthesize shaderProfilerResultsBase=_shaderProfilerResultsBase;
  @property(readonly) DYShaderProfilerResult *shaderProfilerResults; // @synthesize shaderProfilerResults=_shaderProfilerResults;
  @property(retain) NSURL *captureArchiveURL; // @synthesize captureArchiveURL=_captureArchiveURL;
  @property(retain) NSSet *fenumsWithErrors; // @synthesize fenumsWithErrors=_fenumsWithErrors;
  @property(retain) NSArray *extensions; // @synthesize extensions=_extensions;
  @property(retain) NSArray *analyzerFindings; // @synthesize analyzerFindings=_analyzerFindings;
  @property(readonly) double appTargetFrameRate; // @synthesize appTargetFrameRate=_appTargetFrameRate;
  @property(readonly) double appFrameRate; // @synthesize appFrameRate=_appFrameRate;
  @property(retain) NSArray *appArguments; // @synthesize appArguments=_appArguments;
  @property(retain) NSString *appName; // @synthesize appName=_appName;
  @property(retain) NSError *error; // @synthesize error=_error;
  @property(retain) DYDeviceInfo *deviceInfo; // @synthesize deviceInfo=_deviceInfo;
  @property(retain, nonatomic) GPUInferiorSession *inferiorSession; // @synthesize inferiorSession=_inferiorSession;
  @property(nonatomic) __weak GPUTraceSession *traceSession; // @synthesize traceSession=_traceSession;
  @property(retain) DYCaptureSessionInfo *captureSessionInfo; // @synthesize captureSessionInfo=_captureSessionInfo;
  @property BOOL archiveHasPendingChanges; // @synthesize archiveHasPendingChanges=_archiveHasPendingChanges;
  @property(retain, nonatomic) GPUInvestigatorReportItem *reportItem; // @synthesize reportItem=_reportItem;
  @property BOOL isInvestigatorReady; // @synthesize isInvestigatorReady=_isInvestigatorReady;
  @property(readonly) BOOL supportsInvestigator; // @synthesize supportsInvestigator=_supportsInvestigator;
  @property int debugState; // @synthesize debugState=_debugState;
  @property(retain) GPUTraceModelFactory *modelFactory; // @synthesize modelFactory=_modelFactory;
  @property(retain, nonatomic) id <GPUResourceManager> resourceManager; // @synthesize resourceManager=_resourceManager;
  - (void).cxx_destruct;
  - (void)updateShaders;
  @property(readonly) BOOL supportsDebugBarShaderUpdate;
  - (id)createProgramPerformanceReportProvider;
  - (id)createInvestigatorReportProvider;
  - (void)handleDocumentChanged:(id)arg1 currentAPIItem:(id)arg2;
  - (id)runShaderProfiler;
  - (id)_profileShaders;
  - (id)_profileFrame;
  - (void)loadShaderProfilerResults;
  - (void)saveShaderProfilerResults;
  @property(readonly) BOOL isDisassemblerAvailable; // @dynamic isDisassemblerAvailable;
  @property(readonly) BOOL shaderProfilerResultsHaveBeenUpdated; // @dynamic shaderProfilerResultsHaveBeenUpdated;
  @property(readonly) BOOL isMacOSXDevice;
  @property(readonly) BOOL isShaderProfilerAvailable; // @dynamic isShaderProfilerAvailable;
  @property(readonly) BOOL isRuntimeOSAppleInternal; // @dynamic isRuntimeOSAppleInternal;
  - (id)queryShaderInfoWithPayload:(id)arg1;
  - (void)createReportWithCompletionBlock:(CDUnknownBlockType)arg1;
  - (void)resetResourceManagerWithResourceStreamer:(id)arg1;
  - (void)archiveReports;
  - (int)maxIssueSeverity:(int)arg1;
  - (BOOL)isDeviceBusy;
  - (void)touchDebugState;
  - (BOOL)relinquishAutomatedDebugState;
  - (BOOL)requestAutomatedDebugState:(int)arg1;
  - (void)_handleDebuggerStateChanges;
  - (void)handleInferiorSessionActiveState;
  - (void)onObservedDictionaryUpdated:(id)arg1 archiveKey:(id)arg2;
  - (void)traceSessionEstablishedWithNewArchive:(BOOL)arg1;
  - (id)unarchiveDictionaryForKey:(id)arg1;
  - (void)handleUpdatedDictionary:(id)arg1 forKey:(id)arg2;
  - (void)captureGPUTraceFromBreakpoint:(id)arg1;
  - (id)copyAdjunctDataForFilename:(id)arg1 error:(id *)arg2;
  - (BOOL)storeAdjunctData:(id)arg1 filename:(id)arg2 error:(id *)arg3;
  - (id)retrieveArchivedDataForKey:(id)arg1 error:(id *)arg2;
  - (BOOL)archiveData:(id)arg1 withKey:(id)arg2 replaceData:(BOOL)arg3 error:(id *)arg4;
  - (void)handleCaptureSessionTearDown;
  - (BOOL)handleCaptureSessionFinalization:(id)arg1;
  - (void)_handleExtensions;
  - (BOOL)analyzeStoredCaptureArchive;
  - (void)setupCaptureSessionInfoWithArchive:(id)arg1;
  - (void)setupCaptureSession:(id)arg1;
  - (void)setupGuestAppSession:(id)arg1;
  - (BOOL)archiveLastDisplayableRenderBufferImage;
  @property(readonly) NSImage *archivedRenderbufferImage; // @dynamic archivedRenderbufferImage;
  - (void)handleAppSessionTransportMessage:(id)arg1;
  - (void)cancelAnalysis;
  - (void)beginAnalysis;
  - (id)captureArchive;
  - (id)newGuestAppSessionWithGuestApp:(id)arg1 device:(id)arg2 deferLaunch:(BOOL)arg3;
  - (void)createModelFactory;
  - (void)primitiveInvalidate;
  - (id)init;
  
  // Remaining properties
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUDebuggerError : NSError
  {
  }
  
  - (id)dy_errorSignature;
  - (id)localizedDescription;
  - (id)initWithDomain:(id)arg1 code:(long long)arg2 userInfo:(id)arg3;
  
  @end
  
  @interface GPUFunctionInfo : NSObject
  {
      BOOL _isOnlineCompiled;
      NSURL *_sourceURL;
      long long _lineNumber;
  }
  
  @property(readonly, nonatomic) BOOL isOnlineCompiled; // @synthesize isOnlineCompiled=_isOnlineCompiled;
  @property(readonly, nonatomic) long long lineNumber; // @synthesize lineNumber=_lineNumber;
  @property(readonly, nonatomic) NSURL *sourceURL; // @synthesize sourceURL=_sourceURL;
  - (void).cxx_destruct;
  - (id)initWithSourceURL:(id)arg1 lineNumber:(long long)arg2 onlineCompiled:(BOOL)arg3;
  
  @end
  
  @interface GPUGlobalStateManager : NSObject
  {
      BOOL _showGroupDisplayableCallCount;
      GPUTraceEditor *_installedTraceEditor;
      NSMutableArray *_installedTraceResourcesEditors;
  }
  
  + (id)sharedGlobalStateManager;
  @property(retain, nonatomic) NSMutableArray *installedTraceResourcesEditors; // @synthesize installedTraceResourcesEditors=_installedTraceResourcesEditors;
  @property(retain, nonatomic) GPUTraceEditor *installedTraceEditor; // @synthesize installedTraceEditor=_installedTraceEditor;
  @property(readonly, nonatomic) BOOL showGroupDisplayableCallCount; // @synthesize showGroupDisplayableCallCount=_showGroupDisplayableCallCount;
  - (void).cxx_destruct;
  @property(nonatomic) int issueFilterLevel;
  @property(nonatomic) BOOL programMetricsAsPercentage;
  - (BOOL)showGroupDrawCallCount;
  @property(nonatomic) BOOL hideShaderProfilingInFrameNavigator;
  @property(nonatomic) BOOL hideGroupMarkerCalls;
  @property(nonatomic) BOOL hideEmptyMarkerGroups;
  @property(nonatomic) BOOL compactTextMode;
  - (id)_init;
  - (id)init;
  
  @end
  
  @interface GPUInferiorSession : NSObject <IDETraceInferiorSession, DVTInvalidation>
  {
      NSObject<OS_dispatch_queue> *_queue;
      NSObject<OS_dispatch_queue> *_resourceQueue;
      DVTObservingToken *_launchSessionStateObserverToken;
      DVTObservingToken *_traceSessionStateObserverToken;
      IDELaunchSession *_launchSession;
      int _state;
      GPUDebuggerController *_debuggerController;
      GPUTraceSession *_currentTraceSession;
      GPUTraceGroupItem *_workspaceRootResourceGroup;
      GPUTraceProgramGroup *_workspaceRootProgramGroup;
      DYGuestAppSession *_guestAppSession;
      DYFuture *_symbolicatorFuture;
      DYCaptureArchive *_nextCaptureArchive;
      DYCaptureSession *_activeCaptureSession;
      NSMutableDictionary *_updatedResourcesDict;
      NSMutableDictionary *_replayUpdatedResourcesDict;
      NSMutableDictionary *_originalResourcesDict;
      NSMutableDictionary *_programInfoDict;
      NSMutableArray *_traceSessionEstablishedJobQueue;
      NSError *_error;
      BOOL _readyToCapture;
      BOOL _archiveFinalized;
      BOOL _finalizedOverview;
      BOOL _isInvalidating;
      BOOL _isRemoteDebuggingEnabled;
      unsigned int _deviceInterposeVersionGL;
      unsigned int _deviceInterposeVersionMetal;
      unsigned int _updatedResourcesChangeCount;
      NSString *_captureUnavailabilityReason;
      NSString *_inferiorAppName;
  }
  
  + (BOOL)isRemoteDebuggingRequested:(id)arg1;
  + (id)GPUToolsDeviceFromDVTDevice:(id)arg1 error:(id *)arg2;
  + (void)initialize;
  + (id)logAspect;
  + (id)keyPathsForValuesAffectingTraceSession;
  @property unsigned int updatedResourcesChangeCount; // @synthesize updatedResourcesChangeCount=_updatedResourcesChangeCount;
  @property(readonly) NSString *inferiorAppName; // @synthesize inferiorAppName=_inferiorAppName;
  @property BOOL isRemoteDebuggingEnabled; // @synthesize isRemoteDebuggingEnabled=_isRemoteDebuggingEnabled;
  @property(readonly) NSString *captureUnavailabilityReason; // @synthesize captureUnavailabilityReason=_captureUnavailabilityReason;
  @property(readonly) unsigned int deviceInterposeVersionMetal; // @synthesize deviceInterposeVersionMetal=_deviceInterposeVersionMetal;
  @property(readonly) unsigned int deviceInterposeVersionGL; // @synthesize deviceInterposeVersionGL=_deviceInterposeVersionGL;
  @property(readonly) DYGuestAppSession *guestAppSession; // @synthesize guestAppSession=_guestAppSession;
  @property(readonly) NSMutableDictionary *programInfoDict; // @synthesize programInfoDict=_programInfoDict;
  @property(readonly) NSMutableDictionary *originalResourcesDict; // @synthesize originalResourcesDict=_originalResourcesDict;
  @property(readonly) NSMutableDictionary *updatedResourcesDict; // @synthesize updatedResourcesDict=_updatedResourcesDict;
  @property(retain) GPUTraceProgramGroup *workspaceRootProgramGroup; // @synthesize workspaceRootProgramGroup=_workspaceRootProgramGroup;
  @property(retain) GPUTraceGroupItem *workspaceRootResourceGroup; // @synthesize workspaceRootResourceGroup=_workspaceRootResourceGroup;
  @property(readonly) GPUDebuggerController *debuggerController; // @synthesize debuggerController=_debuggerController;
  @property int state; // @synthesize state=_state;
  @property(retain) NSError *error; // @synthesize error=_error;
  @property BOOL readyToCapture; // @synthesize readyToCapture=_readyToCapture;
  @property(retain) GPUTraceSession *currentTraceSession; // @synthesize currentTraceSession=_currentTraceSession;
  @property BOOL archiveFinalized; // @synthesize archiveFinalized=_archiveFinalized;
  @property(readonly) IDELaunchSession *launchSession; // @synthesize launchSession=_launchSession;
  - (void).cxx_destruct;
  - (id)infoDictForProgram:(unsigned long long)arg1 container:(unsigned long long)arg2;
  - (void)setInfoDictForProgram:(unsigned long long)arg1 dict:(id)arg2 container:(unsigned long long)arg3;
  - (void)addOriginalResource:(id)arg1 container:(unsigned long long)arg2;
  - (id)updatedResources;
  - (void)removeResourceOverride:(id)arg1 container:(unsigned long long)arg2;
  - (void)addResourceOverride:(id)arg1 container:(unsigned long long)arg2;
  - (void)addUpdatedResource:(id)arg1 container:(unsigned long long)arg2;
  - (void)_removeModifiedResourceFromDict:(id)arg1 resource:(id)arg2 container:(unsigned long long)arg3;
  - (void)_addModifiedResourceToDict:(id)arg1 resource:(id)arg2 container:(unsigned long long)arg3;
  - (id)generateTraceSessionForCaptureArchive:(id)arg1;
  - (id)errorForFailedPlayback;
  - (void)queueTraceSessionEstablishedJobWithId:(id)arg1 queue:(id)arg2 handler:(CDUnknownBlockType)arg3;
  - (void)handleTraceSessionCreationSuccess:(id)arg1;
  - (void)handleTraceSessionCreationFailure:(id)arg1;
  - (void)handleCompleteCaptureSession:(id)arg1;
  - (void)handleIncompleteCaptureSession:(id)arg1;
  - (void)_handleCaptureSessionStateChange:(int)arg1;
  - (void)captureGPUTrace:(id)arg1;
  - (void)_handleBreakpointHit;
  - (void)_handleAppDidLaunch;
  - (void)ensureNextCaptureArchive;
  - (void)createNextCaptureArchive;
  - (void)_handleGraphicsAPIUsageUpdate:(BOOL)arg1;
  - (void)_recursivePollForGraphicsAPIUsage;
  - (id)prepareForLaunch:(id)arg1 error:(id *)arg2;
  - (void)launchDebugServerWithError:(id *)arg1;
  @property(readonly) id <IDEDebugTopNavigableModel> process;
  - (void)primitiveInvalidate;
  - (void)releaseCurrentGPUTrace;
  @property(readonly) DYCaptureSessionInfo *captureSessionInfo; // @dynamic captureSessionInfo;
  - (id)initWithAppName:(id)arg1 launchSession:(id)arg2 controller:(id)arg3 launchCommand:(id)arg4 error:(id *)arg5;
  - (id)initWithAppName:(id)arg1 launchSession:(id)arg2 controller:(id)arg3 error:(id *)arg4;
  
  // Remaining properties
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUTraceOutlineItem : NSObject <IDEDebugNavigableModel, DVTInvalidation, NSCopying>
  {
      NSString *_label;
      NSMutableArray *_children;
      shared_ptr_2d3f6817 _decodedFunction;
      GPUTraceOutlineItem *_parent;
      GPUDebuggerController *_controller;
      NSString *_UUID;
  }
  
  + (void)initialize;
  + (id)sharedUUIDString;
  @property(readonly, nonatomic) NSString *UUID; // @synthesize UUID=_UUID;
  @property(nonatomic) __weak GPUTraceOutlineItem *parent; // @synthesize parent=_parent;
  @property(nonatomic) __weak GPUDebuggerController *controller; // @synthesize controller=_controller;
  @property(retain, nonatomic) NSString *label; // @synthesize label=_label;
  @property(retain, nonatomic) NSMutableArray *children; // @synthesize children=_children;
  - (id).cxx_construct;
  - (void).cxx_destruct;
  - (void)releaseRealizedResources;
  - (id)childAtIndex:(unsigned long long)arg1;
  - (unsigned long long)numberOfChildren;
  @property(readonly, nonatomic) struct Function *decodedFunction; // @dynamic decodedFunction;
  - (void)setDecodedFunctionPointer:(shared_ptr_2d3f6817)arg1;
  @property(readonly) IDELaunchSession *launchSession;
  @property(readonly, copy) NSString *associatedProcessUUID;
  @property(readonly) unsigned long long hash;
  - (BOOL)isEqual:(id)arg1;
  - (void)_createUUID;
  - (id)_createUUIDLabelForItem:(id)arg1;
  - (id)UUIDSection;
  @property(readonly, copy) NSString *description;
  @property(readonly, nonatomic) GPUTraceModelFactory *modelFactory; // @dynamic modelFactory;
  @property(readonly, nonatomic) NSURL *captureArchiveURL;
  @property(readonly, nonatomic) GPUGlobalStateManager *globalStateManager; // @dynamic globalStateManager;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (void)primitiveInvalidate;
  - (void)sortChildren;
  - (void)invalidateChildren;
  - (id)initWithController:(id)arg1 parent:(id)arg2 label:(id)arg3;
  
  // Remaining properties
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUInvestigatorReportItem : GPUTraceOutlineItem
  {
      NSArray *_currentAutomaticItems;
      NSString *_reportUUID;
  }
  
  @property(readonly, nonatomic) NSString *reportUUID; // @synthesize reportUUID=_reportUUID;
  @property(retain, nonatomic) NSArray *currentAutomaticItems; // @synthesize currentAutomaticItems=_currentAutomaticItems;
  - (void).cxx_destruct;
  - (id)archive;
  - (unsigned long long)hash;
  - (void)setParent:(id)arg1;
  - (void)primitiveInvalidate;
  - (id)initWithController:(id)arg1 parent:(id)arg2 label:(id)arg3;
  
  @end
  
  @interface GPUMessageTrace : NSObject
  {
      NSObject<OS_dispatch_queue> *_queue;
      unsigned int _graphicsAPI;
      NSString *_productType;
      NSString *_version;
      struct GPUMessageTraceActivity _frameCapture;
      struct GPUMessageTraceActivity _shaderProfiler;
      BOOL _appResumed;
      BOOL _replayedExportedCapture;
      unsigned int _numShaderEdits;
      struct GPUMessageTraceActivity _navigationUpdate;
      unsigned int _numNavUpdates;
      double _navUpdateMax;
      double _navUpdateAverage;
      NSError *_firstErrorInSession;
  }
  
  + (id)sharedTrace;
  - (void).cxx_destruct;
  - (void)_resetUsageStatistics;
  - (void)reportUsageStatistics;
  - (void)_updateFirstErrorInSession:(id)arg1;
  - (void)recordError:(id)arg1;
  - (void)recordNavigationUpdateEnd;
  - (void)recordNavigationUpdateStart;
  - (void)recordShaderEdit:(BOOL)arg1;
  - (void)recordReplayedExportedCapture;
  - (void)recordAppResumed;
  - (void)recordShaderProfilerCompleted:(id)arg1;
  - (void)recordShaderProfilerStarted;
  - (void)recordCaptureCompleted:(id)arg1;
  - (void)recordCaptureStarted;
  - (void)recordGraphicsAPIUsage:(unsigned int)arg1 andDeviceInfo:(id)arg2;
  - (id)init;
  
  @end
  
  @interface GPUPerformanceMetrics : NSObject
  {
      DVTPerformanceMetric *_perceivedCaptureMetric;
      BOOL _enableImageRendererCheckpoints;
  }
  
  + (id)defaultMetrics;
  - (void).cxx_destruct;
  - (void)imageRendererCompleted:(id)arg1;
  - (void)imageRendererCheckpoint:(id)arg1 forResourceID:(id)arg2;
  - (void)imageRendererStarted:(id)arg1 enableCheckpoints:(BOOL)arg2;
  - (void)perceivedCaptureCompleted;
  - (void)perceivedCaptureCheckpoint:(id)arg1;
  - (void)perceivedCaptureStarted;
  
  @end
  
  @interface GPUReportDocumentLocation : IDEGaugeDocumentLocation
  {
  }
  
  - (id)initWithReportDocumentURL:(id)arg1;
  
  @end
  
  @interface GPUStackFrame : DYStackFrame
  {
      IDELaunchSession *_launchSession;
  }
  
  @property(retain, nonatomic) IDELaunchSession *launchSession; // @synthesize launchSession=_launchSession;
  - (void).cxx_destruct;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (void)dealloc;
  - (id)initWithLaunchSession:(id)arg1;
  
  @end
  
  @interface GPUTraceAPIItem : GPUTraceOutlineItem
  {
      NSObject<OS_dispatch_queue> *_queue;
      NSArray *_boundResources;
      NSArray *_allResources;
      int _functionIndex;
      int _displayIndex;
      GPUTraceResources *_resourceGroups;
      NSMutableArray *_stackFrames;
      BOOL _loadingResourceTree;
      BOOL _hasResourceTree;
      BOOL _hasStateMirror;
      int _maxIssueSeverity;
      GPUTraceDisplayableItem *_previousDisplayableItem;
  }
  
  @property(retain) GPUTraceDisplayableItem *previousDisplayableItem; // @synthesize previousDisplayableItem=_previousDisplayableItem;
  @property BOOL loadingResourceTree; // @synthesize loadingResourceTree=_loadingResourceTree;
  @property BOOL hasResourceTree; // @synthesize hasResourceTree=_hasResourceTree;
  @property(retain) NSMutableArray *stackFrames; // @synthesize stackFrames=_stackFrames;
  @property(retain) GPUTraceResources *resourceGroups; // @synthesize resourceGroups=_resourceGroups;
  @property(readonly) int displayIndex; // @synthesize displayIndex=_displayIndex;
  @property(readonly) int functionIndex; // @synthesize functionIndex=_functionIndex;
  @property(retain) NSArray *allResources; // @synthesize allResources=_allResources;
  @property(retain) NSArray *boundResources; // @synthesize boundResources=_boundResources;
  - (void).cxx_destruct;
  - (id)generateLabel;
  - (void)releaseRealizedResources;
  - (void)_generateResources:(BOOL)arg1;
  - (BOOL)generateResources;
  - (BOOL)generateResourceTopLevelGroups;
  - (id)stackFramesWithVisibleSource;
  - (void)generateStackFrameItems;
  - (id)description;
  - (void)primitiveInvalidate;
  - (id)UUIDSection;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (id)initWithController:(id)arg1 parent:(id)arg2 functionIndex:(int)arg3 displayIndex:(int)arg4;
  
  @end
  
  @interface GPUTraceResourceItem : GPUTraceOutlineItem
  {
      BOOL _generatesThumbnail;
      unsigned int _type;
      id <DYResource> _resourceObject;
      const void *_unrealizedResourceObject;
      id _displayAttributes;
      NSString *_thumbnailLabel;
      unsigned long long _objectID;
      unsigned long long _containerID;
      unsigned long long _sharegroupID;
      NSMutableDictionary *_properties;
  }
  
  @property(readonly, nonatomic) NSMutableDictionary *properties; // @synthesize properties=_properties;
  @property(readonly, nonatomic) unsigned long long sharegroupID; // @synthesize sharegroupID=_sharegroupID;
  @property(readonly, nonatomic) unsigned long long containerID; // @synthesize containerID=_containerID;
  @property(readonly, nonatomic) unsigned long long objectID; // @synthesize objectID=_objectID;
  @property(readonly, nonatomic) BOOL generatesThumbnail; // @synthesize generatesThumbnail=_generatesThumbnail;
  @property(retain, nonatomic) NSString *thumbnailLabel; // @synthesize thumbnailLabel=_thumbnailLabel;
  @property(retain, nonatomic) id displayAttributes; // @synthesize displayAttributes=_displayAttributes;
  @property(readonly, nonatomic) const void *unrealizedResourceObject; // @synthesize unrealizedResourceObject=_unrealizedResourceObject;
  @property(retain, nonatomic) id <DYResource> resourceObject; // @synthesize resourceObject=_resourceObject;
  @property(readonly, nonatomic) unsigned int type; // @synthesize type=_type;
  - (void).cxx_destruct;
  - (void)releaseRealizedResources;
  - (id)realizeResource;
  - (void)establishChildren;
  @property(readonly, nonatomic) unsigned int functionIndex;
  @property(readonly, nonatomic) id stateMirror;
  - (id)associatedDisplayableItem;
  - (id)associatedTraceItem;
  - (id)parentResourceGroup;
  - (id)UUIDSection;
  - (void)primitiveInvalidate;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (id)initWithController:(id)arg1 parent:(id)arg2 objectID:(unsigned long long)arg3 unrealizedResourceObject:(const void *)arg4 containerID:(unsigned long long)arg5 sharegroupID:(unsigned long long)arg6 label:(id)arg7 type:(unsigned int)arg8;
  
  @end
  
  @interface GPUTraceBytesItem : GPUTraceResourceItem
  {
      unsigned long long _bytesType;
      unsigned long long _bindingIndex;
  }
  
  @property(readonly, nonatomic) unsigned long long bindingIndex; // @synthesize bindingIndex=_bindingIndex;
  @property(readonly, nonatomic) unsigned long long bytesType; // @synthesize bytesType=_bytesType;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (id)initWithController:(id)arg1 parent:(id)arg2 encoderObject:(const void *)arg3 containerID:(unsigned long long)arg4 sharegroupID:(unsigned long long)arg5 label:(id)arg6 bindingIndex:(unsigned long long)arg7 bytesType:(unsigned long long)arg8;
  
  @end
  
  @interface GPUTraceDisplayableItem : GPUTraceAPIItem
  {
      id <GPUTraceDisplaySet> _displaySet;
      int _displayableCallIndex;
  }
  
  @property int displayableCallIndex; // @synthesize displayableCallIndex=_displayableCallIndex;
  @property(readonly) id <GPUTraceDisplaySet> displaySet; // @synthesize displaySet=_displaySet;
  - (void).cxx_destruct;
  @property(readonly, nonatomic) BOOL showAsAPIItem; // @dynamic showAsAPIItem;
  - (void)_connectWireframeImageToDisplaySet:(id)arg1;
  - (void)_connectElementResourceToDisplaySet:(unsigned long long)arg1 resourceObject:(id)arg2;
  - (id)_startLoadingWireframeImage;
  - (id)_startLoadingDisplaySetElement:(unsigned long long)arg1;
  - (void)_displaySetLoadIsComplete:(id)arg1;
  - (id)_startLoadingDisplaySet;
  - (id)imageToExportToFile;
  - (id)updateDisplaySet;
  - (id)createRenderJobsForDisplaySet:(BOOL)arg1;
  - (id)description;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (id)navigableItem_subtitle;
  
  @end
  
  @interface GPUTraceDocumentLocation : DVTDocumentLocation
  {
      NSString *_outlineItemUUID;
  }
  
  + (id)locationURLForOutlineItem:(id)arg1;
  @property(readonly) NSString *outlineItemUUID; // @synthesize outlineItemUUID=_outlineItemUUID;
  - (void).cxx_destruct;
  - (void)logCreationBacktrace;
  - (long long)compare:(id)arg1;
  - (id)description;
  - (void)encodeWithCoder:(id)arg1;
  - (id)initWithCoder:(id)arg1;
  - (id)initWithOutlineItem:(id)arg1;
  @property(readonly) NSString *associatedProcessUUID; // @dynamic associatedProcessUUID;
  
  @end
  
  @interface GPUTraceGroupItem : GPUTraceOutlineItem
  {
      NSString *_descText;
      unsigned int _groupType;
      int _functionIndex;
      int _displayableCallCount;
      int _apiCallCount;
      BOOL _isExpanded;
      int _maxIssueSeverity;
      BOOL _isHidden;
  }
  
  @property(nonatomic) BOOL isHidden; // @synthesize isHidden=_isHidden;
  @property(nonatomic) BOOL isExpanded; // @synthesize isExpanded=_isExpanded;
  @property(readonly, nonatomic) NSString *descText; // @synthesize descText=_descText;
  @property(nonatomic) int apiCallCount; // @synthesize apiCallCount=_apiCallCount;
  @property(nonatomic) int displayableCallCount; // @synthesize displayableCallCount=_displayableCallCount;
  @property(readonly, nonatomic) unsigned int groupType; // @synthesize groupType=_groupType;
  @property(readonly, nonatomic) int functionIndex; // @synthesize functionIndex=_functionIndex;
  - (void).cxx_destruct;
  - (id)UUIDSection;
  @property(readonly, nonatomic) BOOL automaticallyExpand;
  @property(readonly, nonatomic) BOOL showsDraws;
  @property(readonly, nonatomic) BOOL isSimpleGroup;
  - (id)initWithController:(id)arg1 parent:(id)arg2 label:(id)arg3 groupType:(unsigned int)arg4 functionIndex:(int)arg5 descText:(id)arg6;
  - (id)navigableItem_subtitle;
  - (struct DYShaderProfilerTiming)shaderTime;
  - (BOOL)hasShaderTiming;
  
  @end
  
  @interface GPUTraceModelFactory : NSObject <DVTInvalidation>
  {
      NSObject<OS_dispatch_queue> *_queue;
      NSMutableDictionary *_modelObjectDictionary;
      GPUDebuggerController *_controller;
      Class _variablesViewContentProviderClass;
      NSMapTable *_resourceTypeToViewClassMaptable;
      GPUTraceGroupItem *_domainProviderRootResourceGroup;
      GPUTraceProgramGroup *_domainProviderRootProgramGroup;
      NSMutableArray *_frames;
      id <IDEDebugTopNavigableModel> _rootProcessItem;
      NSArray *_allTraceItems;
      NSMutableArray *_allPrograms;
      NSMutableArray *_allDisplayableItems;
      GPUTraceDisplayableItem *_lastDisplayableItem;
      NSMutableArray *_allMarkerItems;
      NSMutableArray *_allAPIItems;
      GPUTraceSession *_traceSession;
  }
  
  + (Class)imageResourceSettingBubbleClass;
  + (Class)textureInfoBubbleClass;
  + (Class)depthStencilInfoBubbleClass;
  + (Class)colorInfoBubbleClass;
  + (Class)captureSessionInfoClassWithAPI:(unsigned int)arg1;
  + (void)initialize;
  @property(readonly, nonatomic) __weak GPUTraceSession *traceSession; // @synthesize traceSession=_traceSession;
  @property(readonly, nonatomic) NSMutableArray *allAPIItems; // @synthesize allAPIItems=_allAPIItems;
  @property(readonly, nonatomic) NSMutableArray *allMarkerItems; // @synthesize allMarkerItems=_allMarkerItems;
  @property(readonly, nonatomic) __weak GPUTraceDisplayableItem *lastDisplayableItem; // @synthesize lastDisplayableItem=_lastDisplayableItem;
  @property(readonly, nonatomic) NSMutableArray *allDisplayableItems; // @synthesize allDisplayableItems=_allDisplayableItems;
  @property(readonly, nonatomic) NSMutableArray *allPrograms; // @synthesize allPrograms=_allPrograms;
  @property(readonly, nonatomic) NSArray *allTraceItems; // @synthesize allTraceItems=_allTraceItems;
  @property(readonly, nonatomic) id <IDEDebugTopNavigableModel> rootProcessItem; // @synthesize rootProcessItem=_rootProcessItem;
  @property(readonly, nonatomic) NSMutableArray *frames; // @synthesize frames=_frames;
  @property(readonly, nonatomic) GPUTraceProgramGroup *domainProviderRootProgramGroup; // @synthesize domainProviderRootProgramGroup=_domainProviderRootProgramGroup;
  @property(readonly, nonatomic) GPUTraceGroupItem *domainProviderRootResourceGroup; // @synthesize domainProviderRootResourceGroup=_domainProviderRootResourceGroup;
  @property(readonly, nonatomic) NSMapTable *resourceTypeToViewClassMaptable; // @synthesize resourceTypeToViewClassMaptable=_resourceTypeToViewClassMaptable;
  @property(readonly, nonatomic) Class variablesViewContentProviderClass; // @synthesize variablesViewContentProviderClass=_variablesViewContentProviderClass;
  @property(readonly, nonatomic) __weak GPUDebuggerController *controller; // @synthesize controller=_controller;
  - (void).cxx_destruct;
  - (id)createInfoBubbleForImageResource:(id)arg1 parentView:(id)arg2 owner:(id)arg3 renderingAttributes:(id)arg4;
  - (id)resourceItemOfType:(unsigned int)arg1 resourceID:(unsigned int)arg2 forFunctionIndex:(unsigned int)arg3;
  - (id)storedRenderingAttributesForResourceItem:(id)arg1;
  - (id)resolveCurrentResourceItemWithPreviousItem:(id)arg1 currentMainEditorItem:(id)arg2 topLevelObjects:(id)arg3;
  - (void)establishChildrenForProgramItem:(id)arg1;
  - (id)programObjectFromProgramItem:(id)arg1 shaderType:(unsigned int)arg2;
  - (id)realizeResourcesForResourceItem:(id)arg1;
  - (void)generateResourcesForGroup:(id)arg1 apiItem:(id)arg2 boundOnly:(BOOL)arg3;
  - (void)createParentResourceGroupsForAPIItem:(id)arg1;
  - (id)apiItemForTrueFunctionIndex:(unsigned int)arg1;
  - (id)apiItemFromFunctionIndex:(unsigned int)arg1;
  - (id)apiItemFromDisplayIndex:(unsigned int)arg1;
  - (id)locateDisplayableItemToDraw:(id)arg1 isAssociatedWithStateItem:(char *)arg2;
  - (void)invalidateModel;
  - (void)generateModelWithTraceSession:(id)arg1;
  @property(readonly) unsigned long long totalDisplayableCount;
  @property(readonly, nonatomic) __weak DYGLCaptureSessionInfo *captureSessionInfo;
  - (id)itemForUUID:(id)arg1;
  - (void)addModelItem:(id)arg1;
  - (id)initWithController:(id)arg1 variablesViewContentProviderClass:(Class)arg2;
  - (void)primitiveInvalidate;
  
  // Remaining properties
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUTraceOutline : DYInOrderInstructionFilesVisitor <DVTInvalidation>
  {
      NSObject<OS_dispatch_queue> *_queue;
      DYFunctionTracer *_tracer;
      DYCaptureSessionInfo *_captureSessionInfo;
      GPUTraceSession *_traceSession;
      GPUTraceProgramGroup *_rootProgramGroup;
      GPUTraceGroupItem *_currentGroup;
      GPUTraceDisplayableItem *_currentDisplayableItem;
      struct shared_ptr<GPUTools::FD::TFunctionStream<GPUTools::FD::Function, void>> _captureStream;
      struct _Iterator<GPUTools::FD::Function> _captureStreamIter;
      struct vector<unsigned int, std::__1::allocator<unsigned int>> _functionIndexToDisplayIndexMap;
      IDELaunchSession *_launchSession;
      NSMutableDictionary *_threadNameDict;
      NSMutableDictionary *_editorsDict;
      NSMutableArray *_frames;
      NSMutableArray *_allMarkerItems;
      NSMutableArray *_allAPIItems;
      unsigned long long _currentThread;
      unsigned long long _currentQueue;
      unsigned int _currentFunctionIndex;
      unsigned int _currentDisplayFunctionIndex;
      unsigned int _currentFrameIndex;
      unsigned int _currentMarkerDepth;
      BOOL _processingTraceFiles;
      NSMutableArray *_allDisplayableItems;
      NSString *_contentDelegateUUID;
      GPUTraceGroupItem *_domainProviderRootResourceGroup;
  }
  
  + (void)initialize;
  @property(readonly) DYFunctionTracer *tracer; // @synthesize tracer=_tracer;
  @property(readonly) GPUTraceProgramGroup *rootProgramGroup; // @synthesize rootProgramGroup=_rootProgramGroup;
  @property(readonly) GPUTraceGroupItem *domainProviderRootResourceGroup; // @synthesize domainProviderRootResourceGroup=_domainProviderRootResourceGroup;
  @property(readonly) NSString *contentDelegateUUID; // @synthesize contentDelegateUUID=_contentDelegateUUID;
  @property(retain) NSMutableArray *allAPIItems; // @synthesize allAPIItems=_allAPIItems;
  @property(retain) NSMutableArray *allMarkerItems; // @synthesize allMarkerItems=_allMarkerItems;
  @property(retain) NSMutableArray *allDisplayableItems; // @synthesize allDisplayableItems=_allDisplayableItems;
  @property(readonly) NSMutableDictionary *editorsDict; // @synthesize editorsDict=_editorsDict;
  @property(retain) NSMutableArray *frames; // @synthesize frames=_frames;
  @property(readonly) DYCaptureSessionInfo *captureSessionInfo; // @synthesize captureSessionInfo=_captureSessionInfo;
  @property(retain) GPUTraceSession *traceSession; // @synthesize traceSession=_traceSession;
  - (id).cxx_construct;
  - (void).cxx_destruct;
  - (id)resourceItemOfType:(unsigned int)arg1 resourceID:(unsigned long long)arg2 forFunctionIndex:(unsigned int)arg3;
  - (id)apiItemForTrueFunctionIndex:(unsigned int)arg1;
  - (id)apiItemFromFunctionIndex:(unsigned int)arg1;
  - (id)apiItemFromDisplayIndex:(unsigned int)arg1;
  @property(readonly) unsigned int totalfunctionIndexCount; // @dynamic totalfunctionIndexCount;
  - (id)locateDisplayableItemToDraw:(id)arg1 isAssociatedWithStateItem:(char *)arg2;
  - (void)addDisplayableItem:(id)arg1;
  - (void)performPostCaptureVisitActions;
  - (void)performPreCaptureVisitActions;
  - (void)performPreVisitActions;
  @property(readonly) __weak GPUTraceDisplayableItem *lastDisplayableItem; // @dynamic lastDisplayableItem;
  @property(readonly) GPUTraceGroupItem *rootProcessItem; // @dynamic rootProcessItem;
  @property(readonly) NSMutableArray *allPrograms; // @dynamic allPrograms;
  @property(readonly) NSURL *captureArchiveURL; // @dynamic captureArchiveURL;
  - (void)primitiveInvalidate;
  - (id)initWithTraceSession:(id)arg1;
  
  // Remaining properties
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUTraceProcessItem : GPUTraceGroupItem <IDEDebugTopNavigableModel>
  {
  }
  
  - (id)contentDelegateUIExtensionIdentifier;
  @property(copy, nonatomic) NSString *name;
  - (id)UUIDSection;
  - (id)initWithController:(id)arg1 label:(id)arg2;
  
  // Remaining properties
  @property(readonly, copy) NSString *associatedProcessUUID;
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) IDELaunchSession *launchSession;
  @property(readonly, nonatomic) NSArray *loadedCodeModules;
  @property(readonly, nonatomic) IDEDebugSession *parentDebugSession;
  @property(readonly) NSString *subtitle;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUTraceProgramItem : GPUTraceResourceItem
  {
      BOOL _pipeline;
      GPUTraceShaderItem *_defaultShaderItem;
  }
  
  @property(readonly, nonatomic, getter=isPipeline) BOOL pipeline; // @synthesize pipeline=_pipeline;
  @property(nonatomic) GPUTraceShaderItem *defaultShaderItem; // @synthesize defaultShaderItem=_defaultShaderItem;
  - (void)primitiveInvalidate;
  - (id)initProgramWithController:(id)arg1 parent:(id)arg2 programID:(unsigned long long)arg3 isPipeline:(BOOL)arg4 unrealizedResourceObject:(const void *)arg5 containerID:(unsigned long long)arg6 sharegroupID:(unsigned long long)arg7 label:(id)arg8;
  - (id)initComputePipelineStateWithController:(id)arg1 parent:(id)arg2 programID:(unsigned long long)arg3 unrealizedResourceObject:(const void *)arg4 containerID:(unsigned long long)arg5 label:(id)arg6;
  - (id)initRenderPipelineStateWithController:(id)arg1 parent:(id)arg2 programID:(unsigned long long)arg3 unrealizedResourceObject:(const void *)arg4 containerID:(unsigned long long)arg5 label:(id)arg6;
  - (id)_initWithController:(id)arg1 parent:(id)arg2 programID:(unsigned long long)arg3 unrealizedResourceObject:(const void *)arg4 containerID:(unsigned long long)arg5 sharegroupID:(unsigned long long)arg6 label:(id)arg7 type:(unsigned int)arg8;
  - (void)establishChildren;
  
  @end
  
  @interface GPUTraceProgramGroup : GPUTraceProgramItem
  {
      GPUTraceGroupItem *_relatedDisplayablesGroupItem;
  }
  
  @property(readonly, nonatomic) GPUTraceGroupItem *relatedDisplayablesGroupItem; // @synthesize relatedDisplayablesGroupItem=_relatedDisplayablesGroupItem;
  - (void).cxx_destruct;
  - (unsigned int)functionIndex;
  - (id)associatedDisplayableItem;
  - (void)primitiveInvalidate;
  - (void)addNewDisplayableItem:(id)arg1;
  - (id)relatedDisplayableItems;
  - (id)navigableItem_subtitle;
  
  @end
  
  @interface GPUTraceReplayController : NSObject
  {
      DYDevice *_device;
      BOOL _replayerReady;
      DYGuestAppSession *_replaySession;
      NSObject<OS_dispatch_queue> *_queue;
      GPUDebuggerController *_controller;
      DYContinuation *_invalidTerminationHandler;
      unsigned int _currentFunctionIndex;
      unsigned int _lastFunctionIndex;
  }
  
  @property(readonly) unsigned int currentFunctionIndex; // @synthesize currentFunctionIndex=_currentFunctionIndex;
  @property(readonly) DYGuestAppSession *replaySession; // @synthesize replaySession=_replaySession;
  @property BOOL replayerReady; // @synthesize replayerReady=_replayerReady;
  @property(readonly) GPUDebuggerController *controller; // @synthesize controller=_controller;
  - (void).cxx_destruct;
  - (id)connectedDevices;
  - (id)prepareCaptureArchive:(id)arg1 withDestinationName:(id)arg2;
  - (id)replayerGuestApp;
  - (void)removeCaptureArchivesFromReplayDevice:(CDUnknownBlockType)arg1;
  - (void)replayWithExperiment:(id)arg1 baseCaptureArchivePath:(id)arg2 playbackMessageHandler:(CDUnknownBlockType)arg3;
  - (void)setReplayDeviceBackgroundImage:(id)arg1;
  - (id)initiateDebuggerReplaySession:(BOOL)arg1;
  - (id)_deleteArchivesFromDeviceIfNeeded:(BOOL)arg1;
  - (id)initiateReplaySession:(id)arg1;
  - (id)_launchReplayer;
  - (id)endDebuggerReplaySession;
  - (id)endReplaySession;
  - (void)sendDebugBeginMessage:(id)arg1;
  - (void)toggleDeviceSideDrawPresenting:(BOOL)arg1 withFuture:(id)arg2;
  - (void)setWireframeLineWidth:(float)arg1 withFuture:(id)arg2;
  - (void)toggleDeviceSideWireframePresenting:(BOOL)arg1 withFuture:(id)arg2;
  - (void)_postDeviceSettingChanged:(id)arg1;
  - (void)_replayToFunctionIndex:(unsigned int)arg1 replyQueue:(id)arg2 withFutureResult:(id)arg3;
  - (BOOL)_loopPlaybackFrom:(unsigned int)arg1 to:(unsigned int)arg2;
  - (void)replayToFunctionIndex:(unsigned int)arg1 withFutureResult:(id)arg2;
  - (void)invalidate;
  - (id)setupDevice;
  @property(readonly) DYDeviceInfo *playbackDeviceInfo; // @dynamic playbackDeviceInfo;
  - (void)_handleGuestAppStatusChangeNotification:(id)arg1;
  - (id)initWithController:(id)arg1 lastFunctionIndex:(unsigned int)arg2;
  
  @end
  
  @interface GPUTraceResources : GPUTraceOutlineItem
  {
      NSString *_resourceCategory;
  }
  
  + (id)resourceCategoryForType:(unsigned int)arg1;
  + (unsigned int)resourceTypeForCategory:(id)arg1;
  @property(readonly, nonatomic) NSString *resourceCategory; // @synthesize resourceCategory=_resourceCategory;
  - (void).cxx_destruct;
  - (void)releaseRealizedResources;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (id)UUIDSection;
  - (id)initWithController:(id)arg1 parent:(id)arg2 label:(id)arg3 category:(id)arg4;
  
  @end
  
  @interface GPUTraceSession : NSObject <IDEKeyDrivenNavigableItemRepresentedObject, DVTInvalidation>
  {
      NSObject<OS_dispatch_queue> *_queue;
      BOOL _debugReplayActive;
      BOOL _presentDrawCallsOnDevice;
      BOOL _presentWireframeOnDevice;
      int _state;
      float _wireframeLineWidth;
      IDELaunchSession *_launchSession;
      GPUTraceReplayController *_replayController;
      DYSymbolicator *_symbolicator;
      NSDictionary *_updatedResourcesDict;
      GPUDebuggerController *_debuggerController;
      NSURL *_captureArchiveURL;
      GPUTraceGroupItem *_workspaceRootResourceGroup;
      GPUTraceProgramGroup *_workspaceRootProgramGroup;
  }
  
  + (void)initialize;
  @property(nonatomic) float wireframeLineWidth; // @synthesize wireframeLineWidth=_wireframeLineWidth;
  @property(nonatomic) BOOL presentWireframeOnDevice; // @synthesize presentWireframeOnDevice=_presentWireframeOnDevice;
  @property(nonatomic) BOOL presentDrawCallsOnDevice; // @synthesize presentDrawCallsOnDevice=_presentDrawCallsOnDevice;
  @property(readonly, nonatomic) GPUTraceProgramGroup *workspaceRootProgramGroup; // @synthesize workspaceRootProgramGroup=_workspaceRootProgramGroup;
  @property(readonly, nonatomic) GPUTraceGroupItem *workspaceRootResourceGroup; // @synthesize workspaceRootResourceGroup=_workspaceRootResourceGroup;
  @property(nonatomic) int state; // @synthesize state=_state;
  @property(readonly, nonatomic) NSURL *captureArchiveURL; // @synthesize captureArchiveURL=_captureArchiveURL;
  @property(readonly, nonatomic) GPUDebuggerController *debuggerController; // @synthesize debuggerController=_debuggerController;
  @property(retain, nonatomic) NSDictionary *updatedResourcesDict; // @synthesize updatedResourcesDict=_updatedResourcesDict;
  @property(retain, nonatomic) DYSymbolicator *symbolicator; // @synthesize symbolicator=_symbolicator;
  @property(nonatomic) BOOL debugReplayActive; // @synthesize debugReplayActive=_debugReplayActive;
  @property(readonly, nonatomic) GPUTraceReplayController *replayController; // @synthesize replayController=_replayController;
  @property(readonly, nonatomic) IDELaunchSession *launchSession; // @synthesize launchSession=_launchSession;
  - (void).cxx_destruct;
  @property(readonly) NSString *navigableItem_name;
  - (id)resetEmbeddedReplaySession;
  - (id)establishEmbeddedReplaySession;
  - (BOOL)_loadReplayControllerWithError:(id *)arg1;
  - (id)_setupReplaySession:(BOOL)arg1;
  - (BOOL)_loadReplayControllerWithLastFunctionIndex:(unsigned int)arg1;
  - (BOOL)isInActiveState;
  - (void)primitiveInvalidate;
  - (id)initWithLaunchSession:(id)arg1 debuggerController:(id)arg2 symbolicator:(id)arg3 rootResourceGroup:(id)arg4 rootProgramGroup:(id)arg5;
  
  // Remaining properties
  @property(retain) DVTStackBacktrace *creationBacktrace;
  @property(readonly, copy) NSString *debugDescription;
  @property(readonly, copy) NSString *description;
  @property(readonly) unsigned long long hash;
  @property(readonly) DVTStackBacktrace *invalidationBacktrace;
  @property(readonly) DVTDocumentLocation *navigableItem_contentDocumentLocation;
  @property(readonly) DVTFileDataType *navigableItem_documentType;
  @property(readonly) IDEFileReference *navigableItem_fileReference;
  @property(readonly) NSString *navigableItem_groupIdentifier;
  @property(readonly) NSImage *navigableItem_image;
  @property(readonly) BOOL navigableItem_isLeaf;
  @property(readonly) BOOL navigableItem_isMajorGroup;
  @property(readonly) NSString *navigableItem_toolTip;
  @property(readonly) Class superclass;
  @property(readonly, nonatomic, getter=isValid) BOOL valid;
  
  @end
  
  @interface GPUTraceShaderItem : GPUTraceResourceItem
  {
      unsigned long long _shaderType;
      NSString *_infoLog;
      GPUFunctionInfo *_functionInfo;
  }
  
  @property(readonly, nonatomic) GPUFunctionInfo *functionInfo; // @synthesize functionInfo=_functionInfo;
  @property(readonly, nonatomic) NSString *infoLog; // @synthesize infoLog=_infoLog;
  @property(readonly, nonatomic) unsigned long long shaderType; // @synthesize shaderType=_shaderType;
  - (void).cxx_destruct;
  - (void)releaseRealizedResources;
  - (id)program;
  - (id)associatedTraceItem;
  - (id)parentResourceGroup;
  - (id)copyWithZone:(struct _NSZone *)arg1;
  - (id)initFunctionWithParent:(id)arg1 shaderType:(unsigned long long)arg2 functionInfo:(id)arg3 label:(id)arg4 sharegroupID:(unsigned long long)arg5;
  - (id)initShaderWithParent:(id)arg1 shaderType:(unsigned long long)arg2 infoLog:(const char *)arg3 label:(id)arg4 sharegroupID:(unsigned long long)arg5;
  - (id)_initWithParent:(id)arg1 shaderType:(unsigned long long)arg2 infoLog:(const char *)arg3 functionInfo:(id)arg4 label:(id)arg5 type:(unsigned int)arg6 sharegroupID:(unsigned long long)arg7;
  - (id)navigableItem_subtitle;
  
  @end
  
  @interface GPUTraceStateItem : GPUTraceAPIItem
  {
      BOOL _isHidden;
  }
  
  @property(nonatomic) BOOL isHidden; // @synthesize isHidden=_isHidden;
  - (BOOL)isGroupMarkerCall;
  
  @end
  
  __attribute__((visibility("hidden")))
  @interface JobInfo : NSObject
  {
      NSString *_jobId;
      DYContinuation *_job;
  }
  
  @property(readonly, nonatomic) DYContinuation *job; // @synthesize job=_job;
  @property(readonly, nonatomic) NSString *jobId; // @synthesize jobId=_jobId;
  - (void).cxx_destruct;
  - (id)initWithId:(id)arg1 job:(id)arg2;
  - (id)init;
  
  @end
  
  