private void EndCrawler() { string dirPath = crawler.saveDirectory; // directory SaveFrameDebuggerEventsCsv(dirPath); SaveDetailJsonData(dirPath); crawler = null; OnEndAct?.Invoke(); }
public void Execute(FrameInfoCrawler.CaptureFlag flag, System.Action endCall = null) { this.captureFlag = flag; if (this.reflectionCache == null) { this.reflectionCache = new ReflectionCache(); } this.OnEndAct = endCall; var frameDebuggeUtil = reflectionCache.GetTypeObject("UnityEditorInternal.FrameDebuggerUtility"); // show FrameDebuggerWindow var frameDebuggerWindow = reflectionCache.GetTypeObject("UnityEditor.FrameDebuggerWindow"); object windowObj = frameDebuggerWindow.CallMethod <object>("ShowFrameDebuggerWindow", null, null); frameDebuggerWindow.CallMethod <object>("EnableIfNeeded", windowObj, null); if (crawler == null) { crawler = new FrameInfoCrawler(this.reflectionCache); } crawler.Request(flag, EndCrawler); }