/// <summary> /// Return an String when given an EConditionType that maps to the condition type /// </summary> /// <param name="ConditionType"></param> /// <returns></returns> public static string ConditionType(EConditionType ConditionType) { // Just do a big switch case on all the different kinds, return // the correct reference switch (ConditionType) { case EConditionType.derivedOrInstantiatedFrom: return("derivedOrInstantiatedFrom"); case EConditionType.basedOn: return("basedOn"); case EConditionType.containedBy: return("containedBy"); case EConditionType.hostEngineIs: return("hostEngineIs"); case EConditionType.belongsToArea: return("belongsToArea"); case EConditionType.assignedTo: return("assignedTo"); case EConditionType.withinSecurityGroup: return("withinSecurityGroup"); case EConditionType.createdBy: return("createdBy"); case EConditionType.lastModifiedBy: return("lastModifiedBy"); case EConditionType.checkedOutBy: return("checkedOutBy"); case EConditionType.namedLike: return("namedLike"); case EConditionType.validationStatusIs: return("validationStatusIs"); case EConditionType.deploymentStatusIs: return("deploymentStatusIs"); case EConditionType.checkoutStatusIs: return("checkoutStatusIs"); case EConditionType.objectCategoryIs: return("objectCategoryIs"); case EConditionType.hierarchicalNameLike: return("hierarchicalNameLike"); case EConditionType.NameEquals: return("NameEquals"); case EConditionType.NameSpaceIdIs: return("NameSpaceldls"); default: return(""); } }
public List <XMLNyang> GetNyangs(EConditionType conditionType) { return(nyangs.FindAll((n) => { if (n.appear == null || n.appearType == null) { return false; } int size = n.appearType.Length; for (int i = 0; i < size; i++) { if (n.appearType[i] == conditionType) { return true; } } return false; })); }
void OnGUI() { EditorGUILayout.LabelField("Profiler BinLog Hack"); EditorGUILayout.BeginHorizontal(); this.filePath = EditorGUILayout.TextField(this.filePath); if (GUILayout.Button("File", GUILayout.Width(40.0f))) { this.filePath = EditorUtility.OpenFilePanelWithFilters("", "Select BinaryLogFile", new string[] { "profiler log", "data,raw" }); } EditorGUILayout.EndHorizontal(); { EditorGUILayout.LabelField("Concition"); EditorGUILayout.BeginHorizontal(); sampleNameCondition = EditorGUILayout.TextField("sample name ", sampleNameCondition); this.stringCheckCondition = (EConditionType)EditorGUILayout.EnumPopup(this.stringCheckCondition); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField("HierarchyMode"); this.sampleCondition = (ESampleCondition)EditorGUILayout.EnumPopup(this.sampleCondition); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); this.conditionExecuteTime = EditorGUILayout.FloatField("Execute time(ms)", this.conditionExecuteTime); this.conditionAlloc = EditorGUILayout.IntField("Alloc(byte)", conditionAlloc); EditorGUILayout.EndHorizontal(); } EditorGUILayout.BeginHorizontal(); if (!IsExecuting()) { if (GUILayout.Button("Analyze", GUILayout.Width(100))) { this.pageIndex = 1; if (string.IsNullOrEmpty(filePath) || !System.IO.File.Exists(filePath)) { Debug.LogError("No such File "); } else { logReader = ProfilerLogUtil.CreateLogReader(filePath); columnList.Clear(); } } } else { if (GUILayout.Button("Cancel", GUILayout.Width(100))) { logReader.ForceExit(); } } GUILayout.Label(""); if (logReader != null && logReader.IsComplete) { if (GUILayout.Button("Write To CSV", GUILayout.Width(100))) { SaveToCsv(); } } EditorGUILayout.EndHorizontal(); // execute now if (IsExecuting()) { EditorGUILayout.LabelField("Progress " + logReader.Progress * 100.0f + "%"); } else { this.ONGUIResultList(); treeView.OnGUI(); } }