tools/profiler/csharp/Comparators.cs
author David Anderson <dvander@alliedmods.net>
Sun Mar 02 06:40:59 2008 +0000 (2008-03-02)
changeset 1908 318e0a01aef9
permissions -rw-r--r--
added amb256 - (nice number), profiler complete with gui to show files
dvander@1908
     1
using System;
dvander@1908
     2
using System.Collections;
dvander@1908
     3
using System.Text;
dvander@1908
     4
using System.Windows.Forms;
dvander@1908
     5
dvander@1908
     6
namespace profviewer
dvander@1908
     7
{
dvander@1908
     8
    class LIStringComparator : IComparer
dvander@1908
     9
    {
dvander@1908
    10
        private int m_col;
dvander@1908
    11
dvander@1908
    12
        public LIStringComparator(int col)
dvander@1908
    13
        {
dvander@1908
    14
            m_col = col;
dvander@1908
    15
        }
dvander@1908
    16
dvander@1908
    17
        public int Compare(object x, object y)
dvander@1908
    18
        {
dvander@1908
    19
            ListViewItem a = (ListViewItem)x;
dvander@1908
    20
            ListViewItem b = (ListViewItem)y;
dvander@1908
    21
dvander@1908
    22
            return String.Compare(a.SubItems[m_col].Text, b.SubItems[m_col].Text);
dvander@1908
    23
        }
dvander@1908
    24
    }
dvander@1908
    25
dvander@1908
    26
    class LIIntComparator : IComparer
dvander@1908
    27
    {
dvander@1908
    28
        private int m_col;
dvander@1908
    29
dvander@1908
    30
        public LIIntComparator(int col)
dvander@1908
    31
        {
dvander@1908
    32
            m_col = col;
dvander@1908
    33
        }
dvander@1908
    34
dvander@1908
    35
        public int Compare(object x, object y)
dvander@1908
    36
        {
dvander@1908
    37
            ListViewItem a = (ListViewItem)x;
dvander@1908
    38
            ListViewItem b = (ListViewItem)y;
dvander@1908
    39
dvander@1908
    40
            int num1 = Int32.Parse(a.SubItems[m_col].Text);
dvander@1908
    41
            int num2 = Int32.Parse(b.SubItems[m_col].Text);
dvander@1908
    42
dvander@1908
    43
            if (num1 > num2)
dvander@1908
    44
            {
dvander@1908
    45
                return -1;
dvander@1908
    46
            }
dvander@1908
    47
            else if (num1 < num2)
dvander@1908
    48
            {
dvander@1908
    49
                return 1;
dvander@1908
    50
            }
dvander@1908
    51
dvander@1908
    52
            return 0;
dvander@1908
    53
        }
dvander@1908
    54
    }
dvander@1908
    55
dvander@1908
    56
    class LIDoubleComparator : IComparer
dvander@1908
    57
    {
dvander@1908
    58
        private int m_col;
dvander@1908
    59
dvander@1908
    60
        public LIDoubleComparator(int col)
dvander@1908
    61
        {
dvander@1908
    62
            m_col = col;
dvander@1908
    63
        }
dvander@1908
    64
dvander@1908
    65
        public int Compare(object x, object y)
dvander@1908
    66
        {
dvander@1908
    67
            ListViewItem a = (ListViewItem)x;
dvander@1908
    68
            ListViewItem b = (ListViewItem)y;
dvander@1908
    69
dvander@1908
    70
            double num1 = Double.Parse(a.SubItems[m_col].Text);
dvander@1908
    71
            double num2 = Double.Parse(b.SubItems[m_col].Text);
dvander@1908
    72
dvander@1908
    73
            if (num1 > num2)
dvander@1908
    74
            {
dvander@1908
    75
                return -1;
dvander@1908
    76
            }
dvander@1908
    77
            else if (num1 < num2)
dvander@1908
    78
            {
dvander@1908
    79
                return 1;
dvander@1908
    80
            }
dvander@1908
    81
dvander@1908
    82
            return 0;
dvander@1908
    83
        }
dvander@1908
    84
    }
dvander@1908
    85
}