Ignore:
Timestamp:
Dec 25, 2004, 6:43:07 PM (19 years ago)
Author:
altba\rryu
Message:

パフォーマンスカウンター系のクラスの実装を追加した。

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MacFaceFloat/MainForm.cs

    r22 r25  
    3131                private FaceDef _currentFaceDef;
    3232                private Configuration _config;
    33                
    34                 int prevUsage;
    35                 int prevMarkers;
    36                 PerformanceCounter cpuCount;
    37                 PerformanceCounter pageoutCount;
    38                 PerformanceCounter pageinCount;
     33
     34                private int prevPattern;
     35                private int prevMarkers;
     36
     37                private CPUUsageCounter cpuCounter;
     38                private MemoryUsageCounter memoryCounter;
    3939
    4040                // ƒRƒ“ƒXƒgƒ‰ƒNƒ^
     
    4545                        this.MoveAtFormDrag = true;
    4646
    47                         prevUsage = -1;
     47                        prevPattern = -1;
    4848                        prevMarkers = -1;
    4949
    50                         cpuCount = new PerformanceCounter();
    51                         cpuCount.CategoryName = "Processor";
    52                         cpuCount.CounterName  = "% Processor Time";
    53                         cpuCount.InstanceName = "_Total";
    54 
    55                         pageoutCount = new PerformanceCounter();
    56                         pageoutCount.CategoryName = "Memory";
    57                         pageoutCount.CounterName  = "Pages Output/sec";
    58 
    59                         pageinCount = new PerformanceCounter();
    60                         pageinCount.CategoryName = "Memory";
    61                         pageinCount.CounterName  = "Pages Input/sec";
     50                        cpuCounter = new CPUUsageCounter();
     51                        memoryCounter = new MemoryUsageCounter();
    6252
    6353                        _updateTimer = new System.Windows.Forms.Timer();
     
    203193                        _facePath = _currentFaceDef.Path;
    204194                        notifyIcon.Text = "MacFace - " + _currentFaceDef.Title;
    205                         prevUsage = -1;
     195                        prevPattern = -1;
    206196                        prevMarkers = -1;
    207197
     
    214204                public void CountProcessorUsage(object sender, EventArgs e)
    215205                {
    216                         int usage = (int)cpuCount.NextValue();
    217                         int pagein = (int)pageinCount.NextValue();
    218                         int pageout = (int)pageoutCount.NextValue();
    219 
    220                         usage /= 10;
    221                         if (usage > 10) {
    222                                 usage = 10;
    223                         } else if (usage < 0) {
    224                                 usage = 0;
     206                        CPUUsage cpuUsage = cpuCounter.CurrentUsage();
     207                        MemoryUsage memUsage = memoryCounter.CurrentUsage();
     208
     209                        int pattern = cpuUsage.Active / 10;
     210                        if (pattern > 10)
     211                        {
     212                                pattern = 10;
     213                        }
     214                        else if (pattern < 0)
     215                        {
     216                                pattern = 0;
    225217                        }
    226218
    227219                        int markers = FaceDef.MarkerNone;
     220                        int pagein = memUsage.Pagein;
     221                        int pageout = memUsage.Pageout;
    228222                        if (pagein > 0) markers += FaceDef.MarkerPageIn;
    229223                        if (pageout > 0) markers += FaceDef.MarkerPageOut;
    230224
    231                         if (prevUsage != usage || prevMarkers != markers)
     225                        if (prevPattern != pattern || prevMarkers != markers)
    232226                        {
    233227                                Graphics g = this.Graphics;
    234228                                g.Clear(Color.FromArgb(0, 0, 0, 0));
    235                                 _currentFaceDef.DrawPatternImage(g, FaceDef.PatternSuite.Normal, usage, markers);
     229                                _currentFaceDef.DrawPatternImage(g, FaceDef.PatternSuite.Normal, pattern, markers);
    236230                                this.Update();
    237231                        }
    238232                               
    239                         prevUsage = usage;
     233                        prevPattern = pattern;
    240234                        prevMarkers = markers;
    241235                }
Note: See TracChangeset for help on using the changeset viewer.