| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- //
- // System.Diagnostics.CounterSample.cs
- //
- // Authors:
- // Jonathan Pryor ([email protected])
- // Andreas Nahr ([email protected])
- //
- // (C) 2002
- // (C) 2003 Andreas Nahr
- //
- //
- // Permission is hereby granted, free of charge, to any person obtaining
- // a copy of this software and associated documentation files (the
- // "Software"), to deal in the Software without restriction, including
- // without limitation the rights to use, copy, modify, merge, publish,
- // distribute, sublicense, and/or sell copies of the Software, and to
- // permit persons to whom the Software is furnished to do so, subject to
- // the following conditions:
- //
- // The above copyright notice and this permission notice shall be
- // included in all copies or substantial portions of the Software.
- //
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- //
- namespace System.Diagnostics {
- public struct CounterSample {
-
- private long rawValue;
- private long baseValue;
- private long counterFrequency;
- private long systemFrequency;
- private long timeStamp;
- private long timeStamp100nSec;
- private long counterTimeStamp;
- private PerformanceCounterType counterType;
- public CounterSample (long rawValue,
- long baseValue,
- long counterFrequency,
- long systemFrequency,
- long timeStamp,
- long timeStamp100nSec,
- PerformanceCounterType counterType)
- : this (rawValue, baseValue, counterFrequency,
- systemFrequency, timeStamp, timeStamp100nSec,
- counterType, 0)
- {
- }
- public CounterSample (long rawValue,
- long baseValue,
- long counterFrequency,
- long systemFrequency,
- long timeStamp,
- long timeStamp100nSec,
- PerformanceCounterType counterType,
- long counterTimeStamp)
- {
- this.rawValue = rawValue;
- this.baseValue = baseValue;
- this.counterFrequency = counterFrequency;
- this.systemFrequency = systemFrequency;
- this.timeStamp = timeStamp;
- this.timeStamp100nSec = timeStamp100nSec;
- this.counterType = counterType;
- this.counterTimeStamp = counterTimeStamp;
- }
- public static CounterSample Empty = new CounterSample (
- 0, 0, 0, 0, 0, 0,
- PerformanceCounterType.NumberOfItems32,
- 0);
- public long BaseValue {
- get {return baseValue;}
- }
- public long CounterFrequency {
- get {return counterFrequency;}
- }
- public long CounterTimeStamp {
- get {return counterTimeStamp;}
- }
- public PerformanceCounterType CounterType {
- get {return counterType;}
- }
- public long RawValue {
- get {return rawValue;}
- }
- public long SystemFrequency {
- get {return systemFrequency;}
- }
- public long TimeStamp {
- get {return timeStamp;}
- }
- public long TimeStamp100nSec {
- get {return timeStamp100nSec;}
- }
- public static float Calculate (CounterSample counterSample)
- {
- return CounterSampleCalculator.ComputeCounterValue (counterSample);
- }
- public static float Calculate (CounterSample counterSample,
- CounterSample nextCounterSample)
- {
- return CounterSampleCalculator.ComputeCounterValue (counterSample, nextCounterSample);
- }
- }
- }
|