public void Print(MetricsCollection metricsCollection, SortKind sortKind, int top) { lock (sync) { PrintInternal(metricsCollection, sortKind, top); } }
private RankingMethod GetRankingMethod() { HoseiKind hosei_kind = HoseiKind.Nothing; if (radioButtonHoseiVocaran.Checked) { hosei_kind = HoseiKind.Vocaran; } else if (radioButtonHoseiNicoran.Checked) { hosei_kind = HoseiKind.Nicoran; } SortKind sort_kind = SortKind.Nothing; if (radioButtonSortMylist.Checked) { sort_kind = SortKind.Mylist; } else if (radioButtonSortPoint.Checked) { sort_kind = SortKind.Point; } if (checkBoxFilter.Checked) { return(new RankingMethod(hosei_kind, sort_kind, (int)numericUpDownMylistRate.Value, true, nicorank_mgr_.GetPathMgr().GetFullPath(textBoxFilterPath.Text), checkBoxIsOutputFilteredVideo.Checked)); } else { return(new RankingMethod(hosei_kind, sort_kind, (int)numericUpDownMylistRate.Value)); } }
public Sorter(IDataFrame dataFrame, List <int> columnIndexs, SortType type = SortType.ascending, SortKind kind = SortKind.quicksort) { _dataFrame = dataFrame ?? throw new ArgumentNullException("IDataFrame不能为null。"); _columnIndexs = columnIndexs; Type = type; Kind = kind; }
public RankingMethod(HoseiKind hosei_kind_a, SortKind sort_kind_a, int mylist_rate_a) { hosei_kind = hosei_kind_a; sort_kind = sort_kind_a; mylist_rate = mylist_rate_a; is_using_filter = false; filter_filename = ""; }
private void SortToc(SortKind kind) { _tocSort = kind; Util.Properties.Settings.Default.TocSort = kind; Util.Properties.Settings.Default.Save(); _userIsStillWaitingForPerformsTreeView = false; if (_cobolFile == null || _cobolFile.CobolTree == null) { tocTreeView.Nodes.Add(new TreeNode("Error: CobolTree could not be built.") { ForeColor = Color.Red }); return; } var query = tocSearchTextBox.Text != Resources.SearchPlaceholder ? tocSearchTextBox.Text : ""; TocSortAlphabeticallyButton.Checked = _tocSort == SortKind.Alphabetical; TocSortHierarchicallyButton.Checked = _tocSort == SortKind.BySections; TocSortByPerformsButton.Checked = _tocSort == SortKind.ByPerforms; tocTreeView.Nodes.Clear(); var rootNode = _tableOfContentsWorker.GetToc(_tocSort, query); // null => perform tree is not built yet => wait for event if (rootNode == null) { // add loading image tocTreeView.Controls.Add(_loader); _userIsStillWaitingForPerformsTreeView = true; // wait for event _tableOfContentsWorker.PerformTreeIsBuilt += (sender, args) => { // if user has switched to another view, do not disturb him if (!_userIsStillWaitingForPerformsTreeView) { return; } var performTreeRootNode = (TreeNode)args.Result; performTreeRootNode.ExpandAll(); tocTreeView.Nodes.Add(performTreeRootNode); tocTreeView.Controls.Remove(_loader); }; } else { tocTreeView.Controls.Remove(_loader); rootNode.ExpandAll(); tocTreeView.Nodes.Add(rootNode); } }
public RankingMethod(HoseiKind hosei_kind_a, SortKind sort_kind_a, int mylist_rate_a, bool is_using_filter_a, string filter_filename_a, bool is_output_filtered_video_a) { hosei_kind = hosei_kind_a; sort_kind = sort_kind_a; mylist_rate = mylist_rate_a; is_using_filter = is_using_filter_a; filter_filename = filter_filename_a; is_output_filtered_video = is_output_filtered_video_a; }
static string ProcessArguments(string [] args) { var help = false; var options = new OptionSet { $"Usage: {Name}.exe OPTIONS* <methods-file>", "", "Processes JIT methods file from XA app with debug.mono.log=timing enabled", "", "Copyright 2019 Microsoft Corporation", "", "Options:", { "h|help|?", "Show this message and exit", v => help = v != null }, { "m|method=", "Process only methods whose names match {TYPE-REGEX}.", v => methodNameRegexes.Add(new Regex(v)) }, { "s", "Sort by self times. (this is default ordering)", v => sortKind = SortKind.Self }, { "t", "Sort by total times.", v => sortKind = SortKind.Total }, { "u", "Show unsorted results.", v => sortKind = SortKind.Unsorted }, { "v|verbose", "Output information about progress during the run of the tool", v => Verbose = true }, }; var remaining = options.Parse(args); if (help || args.Length < 1) { options.WriteOptionDescriptions(Out); Environment.Exit(0); } if (remaining.Count != 1) { Error("Please specify one <methods-file> to process."); Environment.Exit(2); } return(remaining [0]); }
public TreeNode GetToc(SortKind tocSort, string query) { switch (tocSort) { case SortKind.Alphabetical: return(ConvertToFlatToc(query)); case SortKind.BySections: return(ConvertToTreeNodes(query)); case SortKind.ByPerforms: if (string.IsNullOrEmpty(query)) { return(_performsTree); } return(FilterByQuery(_performsTree, query) ?? new TreeNode()); default: throw new ArgumentOutOfRangeException(); } }
public int[] Sort(SortKind kind, int[] input) { switch (kind) { case SortKind.Bubble: bool sorted = false; while (!sorted) { sorted = true; for (int i = 0; i < input.Length - 1; i++) { if (input[i] > input[i + 1]) { Swap(input, i, i + 1); sorted = false; } } } break; case SortKind.Quick: input = Quicksort(input, 0, input.Length - 1); break; case SortKind.Insertion: for (int i = 0; i < input.Length - 1; i++) { for (int j = i + 1; j > 0; j--) { if (input[j] < input[j - 1]) { Swap(input, j, j - 1); } } } break; } return(input); }
private void PrintInternal(MetricsCollection collection, SortKind sortKind, int top) { stringBuilder.Clear(); stringBuilder.AppendLine($"Machine: {collection.MachineName}, Timestamp: {collection.Timestamp}"); var table = ConsoleTable.From( Sort(collection .ProcessMetricsCollection, sortKind) .Take(top) .Select(x => new ProcessMetricsModel(x))) .ToMarkDownString(); var lines = stringBuilder.Append(table).ToString().Split(NewLine, StringSplitOptions.RemoveEmptyEntries); stringBuilder.Clear(); var width = GetConsoleWidth(); if (consoleWidth != width) { Console.Clear(); consoleWidth = width; } foreach (var line in lines) { stringBuilder.Append(line, 0, Math.Min(width, line.Length)); if (line.Length < width) { stringBuilder.Append(' ', width - line.Length); } stringBuilder.AppendLine(); } Console.SetCursorPosition(0, 0); Console.WriteLine(stringBuilder.ToString()); }
/// <summary> /// Shoutcastの設定をファイルに保存 /// </summary> public void SaveSetting() { FileStream fs = null; XmlTextWriter writer = null; try { fs = new FileStream(GetSettingPath(), FileMode.Create, FileAccess.Write); writer = new XmlTextWriter(fs, Encoding.GetEncoding("utf-8")); writer.Formatting = Formatting.Indented; writer.WriteStartDocument(true); writer.WriteStartElement("Setting"); writer.WriteStartElement("Header"); writer.WriteStartElement("Name"); writer.WriteAttributeString("name", PocketLadioInfo.ApplicationName); writer.WriteEndElement(); // End of Name. writer.WriteStartElement("Version"); writer.WriteAttributeString("version", PocketLadioInfo.VersionNumber); writer.WriteEndElement(); // End of Version. writer.WriteStartElement("Date"); writer.WriteAttributeString("date", DateTime.Now.ToString()); writer.WriteEndElement(); // End of Date. writer.WriteEndElement(); // End of Header. writer.WriteStartElement("Content"); writer.WriteStartElement("SearchWord"); writer.WriteAttributeString("word", SearchWord); writer.WriteEndElement(); // End of SearchWord writer.WriteStartElement("PerView"); writer.WriteAttributeString("view", perView); writer.WriteEndElement(); // End of PerView writer.WriteStartElement("IgnoreHtmlAnalyze"); writer.WriteAttributeString("firstto", IgnoreHtmlAnalyzeFirstTo.ToString()); writer.WriteAttributeString("endfrom", IgnoreHtmlAnalyzeEndFrom.ToString()); writer.WriteEndElement(); // End of IgnoreHtmlAnalyze writer.WriteStartElement("HeadlineViewType"); writer.WriteAttributeString("type", HeadlineViewType); writer.WriteEndElement(); // End of HeadlineViewType writer.WriteStartElement("Filter"); foreach (string filterWord in GetFilterMatchWords()) { writer.WriteStartElement("Word"); writer.WriteAttributeString("type", "match"); writer.WriteAttributeString("word", filterWord); writer.WriteEndElement(); // End of Word } foreach (string filterWord in GetFilterExclusionWords()) { writer.WriteStartElement("Word"); writer.WriteAttributeString("type", "exclusion"); writer.WriteAttributeString("word", filterWord); writer.WriteEndElement(); // End of Word } writer.WriteStartElement("AboveBitRate"); writer.WriteAttributeString("use", FilterAboveBitRateUse.ToString()); writer.WriteAttributeString("bitrate", FilterAboveBitRate.ToString()); writer.WriteEndElement(); // End of AboveBitRate writer.WriteStartElement("BelowBitRate"); writer.WriteAttributeString("use", FilterBelowBitRateUse.ToString()); writer.WriteAttributeString("bitrate", FilterBelowBitRate.ToString()); writer.WriteEndElement(); // End of BelowBitRate writer.WriteStartElement("Sort"); writer.WriteAttributeString("kind", SortKind.ToString()); writer.WriteAttributeString("scending", SortScending.ToString()); writer.WriteEndElement(); // End of Sort writer.WriteEndElement(); // End of Filter writer.WriteEndElement(); // End of Content. writer.WriteEndElement(); // End of Setting. writer.WriteEndDocument(); } finally { writer.Close(); fs.Close(); } }
private static IEnumerable <ProcessMetrics> Sort(IEnumerable <ProcessMetrics> metrics, SortKind sortKind) { switch (sortKind) { case SortKind.Cpu: return(metrics.OrderByDescending(x => x.Cpu)); case SortKind.WorkingSet: return(metrics.OrderByDescending(x => x.WorkingSet)); case SortKind.PrivateBytes: return(metrics.OrderByDescending(x => x.PrivateBytes)); default: throw new ArgumentOutOfRangeException(nameof(sortKind), sortKind, null); } }
/// <summary> /// ねとらじの設定をファイルに保存 /// </summary> public void SaveSetting() { FileStream fs = null; XmlTextWriter writer = null; try { fs = new FileStream(GetSettingPath(), FileMode.Create, FileAccess.Write); writer = new XmlTextWriter(fs, Encoding.GetEncoding("utf-8")); writer.Formatting = Formatting.Indented; writer.WriteStartDocument(true); writer.WriteStartElement("Setting"); writer.WriteStartElement("Header"); writer.WriteStartElement("Name"); writer.WriteAttributeString("name", PocketLadioInfo.ApplicationName); writer.WriteEndElement(); // End of Name. writer.WriteStartElement("Version"); writer.WriteAttributeString("version", PocketLadioInfo.VersionNumber); writer.WriteEndElement(); // End of Version. writer.WriteStartElement("Date"); writer.WriteAttributeString("date", DateTime.Now.ToString()); writer.WriteEndElement(); // End of Date. writer.WriteEndElement(); // End of Header. writer.WriteStartElement("Content"); writer.WriteStartElement("HeadlineCsvUrl"); writer.WriteAttributeString("url", ((HeadlineCsvUrl != null) ? HeadlineCsvUrl.ToString() : string.Empty)); writer.WriteEndElement(); // End of HeadlineCsvUrl writer.WriteStartElement("HeadlineXmlUrl"); writer.WriteAttributeString("url", ((HeadlineXmlUrl != null) ? HeadlineXmlUrl.ToString() : string.Empty)); writer.WriteEndElement(); // End of HeadlineXmlUrl writer.WriteStartElement("HeadlineDatV2Url"); writer.WriteAttributeString("url", ((HeadlineDatV2Url != null) ? HeadlineDatV2Url.ToString() : string.Empty)); writer.WriteEndElement(); // End of HeadlineDatV2Url writer.WriteStartElement("HeadlineGetType"); writer.WriteAttributeString("type", HeadlineGetWay.ToString()); writer.WriteEndElement(); // End of HeadlineGetType writer.WriteStartElement("HeadlineViewType"); writer.WriteAttributeString("type", HeadlineViewType); writer.WriteEndElement(); // End of HeadlineViewType writer.WriteStartElement("Filter"); foreach (string filterWord in GetFilterMatchWords()) { writer.WriteStartElement("Word"); writer.WriteAttributeString("type", "match"); writer.WriteAttributeString("word", filterWord); writer.WriteEndElement(); // End of Word } foreach (string filterWord in GetFilterExclusionWords()) { writer.WriteStartElement("Word"); writer.WriteAttributeString("type", "exclusion"); writer.WriteAttributeString("word", filterWord); writer.WriteEndElement(); // End of Word } writer.WriteStartElement("AboveBitRate"); writer.WriteAttributeString("use", FilterAboveBitRateUse.ToString()); writer.WriteAttributeString("bitrate", FilterAboveBitRate.ToString()); writer.WriteEndElement(); // End of AboveBitRate writer.WriteStartElement("BelowBitRate"); writer.WriteAttributeString("use", FilterBelowBitRateUse.ToString()); writer.WriteAttributeString("bitrate", FilterBelowBitRate.ToString()); writer.WriteEndElement(); // End of BelowBitRate writer.WriteStartElement("Sort"); writer.WriteAttributeString("kind", SortKind.ToString()); writer.WriteAttributeString("scending", SortScending.ToString()); writer.WriteEndElement(); // End of Sort writer.WriteEndElement(); // End of Filter writer.WriteEndElement(); // End of Content. writer.WriteEndElement(); // End of Setting. writer.WriteEndDocument(); } finally { writer.Close(); fs.Close(); } }
/// <summary> /// 按列索引对应值进行排序 /// </summary> /// <param name="df"></param> /// <param name="indexs">列名索引</param> /// <param name="ascending">升序/降序,默认升序</param> /// <param name="kind">排序算法,默认快速排序</param> /// <returns></returns> public static IDataFrame sort_values(this IDataFrame df, int[] indexs, bool ascending = true, SortKind kind = SortKind.quicksort) { var sorter = new Sorter(df, indexs.ToList(), ascending ? SortType.ascending : SortType.descending, kind); var sort = new DataFrameSort(df, sorter); return(sort.ExcuteSort()); }
public Comparer(SortKind sort1, bool descending1, SortKind sort2, bool descending2) { _sort = new Tuple <SortKind, bool>[] { new Tuple <SortKind, bool>(sort1, descending1), new Tuple <SortKind, bool>(sort2, descending2) }; }
public Comparer(SortKind sort, bool descending) { _sort = new Tuple <SortKind, bool>[] { new Tuple <SortKind, bool>(sort, descending) }; }