@class NSString, NSMapTable, NSConditionLock, NSMutableDictionary, VMUProcessDescription, NSMutableArray; @interface VMUSampler : NSObject { unsigned long long _options; int _pid; unsigned int _task; BOOL _needTaskPortDealloc; BOOL _recordThreadStates; BOOL _sampling; unsigned int _numberOfCopiedBacktraces; NSString *_processName; VMUProcessDescription *_processDescription; struct _CSTypeRef { unsigned long long _opaque_1; unsigned long long _opaque_2; } _symbolicator; unsigned int _suspensionToken; struct sampling_context_t { } *_samplingContext; int _samplingContextOptions; NSMapTable *_lastThreadBacktraceMap; unsigned int *_previousThreadList; unsigned int _mainThread; unsigned int _previousThreadCount; unsigned int _maxPreviousThreadCount; double _tbRate; NSConditionLock *_stateLock; double _interval; double _timeLimit; unsigned int _sampleLimit; unsigned int _numberOfSamples; NSMutableArray *_samples; BOOL _stacksFixed; id _delegate; double _timeSpentSampling; unsigned int _dispatchThreadSoftLimit; unsigned int _dispatchThreadSoftLimitCount; unsigned int _dispatchThreadHardLimit; unsigned int _dispatchThreadHardLimitCount; NSMutableDictionary *_threadPortToNameMap; NSMutableDictionary *_dispatchQueueSerialNumToNameMap; } + (void)initialize; + (id)sampleAllThreadsOfPID:(int)a0; + (id)sampleAllThreadsOfTask:(unsigned int)a0; + (id)sampleAllThreadsOfTask:(unsigned int)a0 symbolicate:(BOOL)a1; - (struct _CSTypeRef { unsigned long long x0; unsigned long long x1; })symbolicator; - (id)samples; - (id)dispatchQueueNameForSerialNumber:(unsigned long long)a0 returnedConcurrentFlag:(BOOL *)a1 returnedThreadId:(unsigned long long *)a2; - (id)initWithPID:(int)a0; - (void)dealloc; - (void)setSampleLimit:(unsigned int)a0; - (double)samplingInterval; - (id)initWithPID:(int)a0 orTask:(unsigned int)a1 options:(unsigned long long)a2; - (id)delegate; - (id)sampleAllThreadsOnceWithFramePointers:(BOOL)a0; - (void)_runSamplingThread; - (BOOL)start; - (id)stopSamplingAndReturnCallNode; - (void)sampleForDuration:(unsigned int)a0 interval:(unsigned int)a1; - (id)initWithTask:(unsigned int)a0; - (void)_checkDispatchThreadLimits; - (id)threadDescriptionStringForBacktrace:(id)a0 returnedAddress:(unsigned long long *)a1; - (void)forceStop; - (unsigned int)sampleCount; - (int)pid; - (id)initWithPID:(int)a0 options:(unsigned long long)a1; - (void)writeOutput:(id)a0 append:(BOOL)a1; - (unsigned int)mainThread; - (id)outputString; - (BOOL)stop; - (id)threadNameForThread:(unsigned int)a0 returnedThreadId:(unsigned long long *)a1 returnedDispatchQueueSerialNum:(unsigned long long *)a2; - (unsigned int)sampleLimit; - (BOOL)waitUntilDone; - (void)preloadSymbols; - (void)setSamplingInterval:(double)a0; - (unsigned long long)recordSampleTo:(id)a0 timestamp:(unsigned long long)a1 thread:(unsigned int)a2 recordFramePointers:(BOOL)a3 clearMemoryCache:(BOOL)a4; - (void).cxx_destruct; - (void)initializeSamplingContextWithOptions:(int)a0; - (id)threadNameForThread:(unsigned int)a0; - (void)_fixupStacks:(id)a0; - (id)dispatchQueueNameForSerialNumber:(unsigned long long)a0; - (id)initWithTask:(unsigned int)a0 options:(unsigned long long)a1; - (void)setTimeLimit:(double)a0; - (id)initWithPID:(int)a0 task:(unsigned int)a1 processName:(id)a2 is64Bit:(BOOL)a3 options:(unsigned long long)a4; - (void)setDelegate:(id)a0; - (id)sampleThread:(unsigned int)a0; - (void)flushData; - (id)sampleAllThreadsOnce; - (void)setRecordThreadStates:(BOOL)a0; - (void)stopSampling; - (double)timeLimit; @end