public void AddLog(LogData log) { switch (log.type) { case LogType.Log: logNum++; break; case LogType.Warning: warningNum++; break; case LogType.Error: case LogType.Exception: case LogType.Assert: errorNum++; break; } logList.Add(log); analysisDataManager.AddAnalysisData(log); analysisDataManager.Sort(); bool addFilterLog = true; /// add collapsed log data CollapsedLogData collapsedLogData; string key = log.GetKey(); var cloneLog = log.Clone(); if (collapsedLogDic.ContainsKey(key)) { collapsedLogData.count = collapsedLogDic[key].count + 1; collapsedLogData.log = collapsedLogDic[key].log; collapsedLogDic[key] = collapsedLogData; /// if not collapse, then should add filter log although the log is collapsed addFilterLog = !logFilter.collapse; } else { collapsedLogData.log = cloneLog; collapsedLogData.count = 1; collapsedLogDic.Add(key, collapsedLogData); collapsedLogList.Add(cloneLog); } if (addFilterLog && logFilter.ShouldDisplay(log)) { filteredLogList.Add(log); } }
public int GetLogNum(LogData data) { int num = 1; if (logFilter.showTime == false) { string key = data.GetKey(); if (collapsedLogDic.ContainsKey(key)) { num = collapsedLogDic[key].count; } } return(num); }