Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Services / Monitoring / system / Diagnosticts / CounterSample.cs / 1 / CounterSample.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Diagnostics {
using System.Diagnostics;
using System;
///
/// A struct holding the raw data for a performance counter.
///
public struct CounterSample {
private long rawValue;
private long baseValue;
private long timeStamp;
private long counterFrequency;
private PerformanceCounterType counterType;
private long timeStamp100nSec;
private long systemFrequency;
private long counterTimeStamp;
// Dummy holder for an empty sample
///
/// [To be supplied.]
///
public static CounterSample Empty = new CounterSample(0, 0, 0, 0, 0, 0, PerformanceCounterType.NumberOfItems32);
///
/// [To be supplied.]
///
public CounterSample(long rawValue, long baseValue, long counterFrequency, long systemFrequency, long timeStamp, long timeStamp100nSec, PerformanceCounterType counterType) {
this.rawValue = rawValue;
this.baseValue = baseValue;
this.timeStamp = timeStamp;
this.counterFrequency = counterFrequency;
this.counterType = counterType;
this.timeStamp100nSec = timeStamp100nSec;
this.systemFrequency = systemFrequency;
this.counterTimeStamp = 0;
}
///
/// [To be supplied.]
///
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.timeStamp = timeStamp;
this.counterFrequency = counterFrequency;
this.counterType = counterType;
this.timeStamp100nSec = timeStamp100nSec;
this.systemFrequency = systemFrequency;
this.counterTimeStamp = counterTimeStamp;
}
///
/// Raw value of the counter.
///
public long RawValue {
get {
return this.rawValue;
}
}
internal ulong UnsignedRawValue {
get {
return (ulong)this.rawValue;
}
}
///
/// Optional base raw value for the counter (only used if multiple counter based).
///
public long BaseValue {
get {
return this.baseValue;
}
}
///
/// Raw system frequency
///
public long SystemFrequency {
get {
return this.systemFrequency;
}
}
///
/// Raw counter frequency
///
public long CounterFrequency {
get {
return this.counterFrequency;
}
}
///
/// Raw counter frequency
///
public long CounterTimeStamp {
get {
return this.counterTimeStamp;
}
}
///
/// Raw timestamp
///
public long TimeStamp {
get {
return this.timeStamp;
}
}
///
/// Raw high fidelity timestamp
///
public long TimeStamp100nSec {
get {
return this.timeStamp100nSec;
}
}
///
/// Counter type
///
public PerformanceCounterType CounterType {
get {
return this.counterType;
}
}
///
/// Static functions to calculate the performance value off the sample
///
public static float Calculate(CounterSample counterSample) {
return CounterSampleCalculator.ComputeCounterValue(counterSample);
}
///
/// Static functions to calculate the performance value off the samples
///
public static float Calculate(CounterSample counterSample, CounterSample nextCounterSample) {
return CounterSampleCalculator.ComputeCounterValue(counterSample, nextCounterSample);
}
public override bool Equals(Object o) {
return ( o is CounterSample) && Equals((CounterSample)o);
}
public bool Equals(CounterSample sample) {
return (rawValue == sample.rawValue) &&
(baseValue == sample.baseValue) &&
(timeStamp == sample.timeStamp) &&
(counterFrequency == sample.counterFrequency) &&
(counterType == sample.counterType) &&
(timeStamp100nSec == sample.timeStamp100nSec) &&
(systemFrequency == sample.systemFrequency) &&
(counterTimeStamp == sample.counterTimeStamp);
}
public override int GetHashCode() {
return rawValue.GetHashCode();
}
public static bool operator ==(CounterSample a, CounterSample b) {
return a.Equals(b);
}
public static bool operator !=(CounterSample a, CounterSample b) {
return !(a.Equals(b));
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Diagnostics {
using System.Diagnostics;
using System;
///
/// A struct holding the raw data for a performance counter.
///
public struct CounterSample {
private long rawValue;
private long baseValue;
private long timeStamp;
private long counterFrequency;
private PerformanceCounterType counterType;
private long timeStamp100nSec;
private long systemFrequency;
private long counterTimeStamp;
// Dummy holder for an empty sample
///
/// [To be supplied.]
///
public static CounterSample Empty = new CounterSample(0, 0, 0, 0, 0, 0, PerformanceCounterType.NumberOfItems32);
///
/// [To be supplied.]
///
public CounterSample(long rawValue, long baseValue, long counterFrequency, long systemFrequency, long timeStamp, long timeStamp100nSec, PerformanceCounterType counterType) {
this.rawValue = rawValue;
this.baseValue = baseValue;
this.timeStamp = timeStamp;
this.counterFrequency = counterFrequency;
this.counterType = counterType;
this.timeStamp100nSec = timeStamp100nSec;
this.systemFrequency = systemFrequency;
this.counterTimeStamp = 0;
}
///
/// [To be supplied.]
///
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.timeStamp = timeStamp;
this.counterFrequency = counterFrequency;
this.counterType = counterType;
this.timeStamp100nSec = timeStamp100nSec;
this.systemFrequency = systemFrequency;
this.counterTimeStamp = counterTimeStamp;
}
///
/// Raw value of the counter.
///
public long RawValue {
get {
return this.rawValue;
}
}
internal ulong UnsignedRawValue {
get {
return (ulong)this.rawValue;
}
}
///
/// Optional base raw value for the counter (only used if multiple counter based).
///
public long BaseValue {
get {
return this.baseValue;
}
}
///
/// Raw system frequency
///
public long SystemFrequency {
get {
return this.systemFrequency;
}
}
///
/// Raw counter frequency
///
public long CounterFrequency {
get {
return this.counterFrequency;
}
}
///
/// Raw counter frequency
///
public long CounterTimeStamp {
get {
return this.counterTimeStamp;
}
}
///
/// Raw timestamp
///
public long TimeStamp {
get {
return this.timeStamp;
}
}
///
/// Raw high fidelity timestamp
///
public long TimeStamp100nSec {
get {
return this.timeStamp100nSec;
}
}
///
/// Counter type
///
public PerformanceCounterType CounterType {
get {
return this.counterType;
}
}
///
/// Static functions to calculate the performance value off the sample
///
public static float Calculate(CounterSample counterSample) {
return CounterSampleCalculator.ComputeCounterValue(counterSample);
}
///
/// Static functions to calculate the performance value off the samples
///
public static float Calculate(CounterSample counterSample, CounterSample nextCounterSample) {
return CounterSampleCalculator.ComputeCounterValue(counterSample, nextCounterSample);
}
public override bool Equals(Object o) {
return ( o is CounterSample) && Equals((CounterSample)o);
}
public bool Equals(CounterSample sample) {
return (rawValue == sample.rawValue) &&
(baseValue == sample.baseValue) &&
(timeStamp == sample.timeStamp) &&
(counterFrequency == sample.counterFrequency) &&
(counterType == sample.counterType) &&
(timeStamp100nSec == sample.timeStamp100nSec) &&
(systemFrequency == sample.systemFrequency) &&
(counterTimeStamp == sample.counterTimeStamp);
}
public override int GetHashCode() {
return rawValue.GetHashCode();
}
public static bool operator ==(CounterSample a, CounterSample b) {
return a.Equals(b);
}
public static bool operator !=(CounterSample a, CounterSample b) {
return !(a.Equals(b));
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- sqlstateclientmanager.cs
- Stack.cs
- RangeBase.cs
- WSSecurityOneDotOneSendSecurityHeader.cs
- ImageField.cs
- FormViewPageEventArgs.cs
- ColorKeyFrameCollection.cs
- SqlClientPermission.cs
- RegexFCD.cs
- VisemeEventArgs.cs
- TextSelectionProcessor.cs
- BrowserCapabilitiesFactoryBase.cs
- FutureFactory.cs
- VectorKeyFrameCollection.cs
- Executor.cs
- ShaderRenderModeValidation.cs
- ObjectDataSourceDisposingEventArgs.cs
- ScrollItemPattern.cs
- SocketPermission.cs
- ReadOnlyDictionary.cs
- GridViewAutomationPeer.cs
- ToolStripDropDownItem.cs
- ReceiveContent.cs
- AuthenticationModuleElement.cs
- IndexOutOfRangeException.cs
- AnnotationAdorner.cs
- ButtonBaseAutomationPeer.cs
- EventPropertyMap.cs
- ObjectKeyFrameCollection.cs
- DynamicDocumentPaginator.cs
- ParsedAttributeCollection.cs
- MouseActionValueSerializer.cs
- DynamicILGenerator.cs
- XslTransform.cs
- CachedBitmap.cs
- RefreshPropertiesAttribute.cs
- XmlSerializableServices.cs
- ThreadAbortException.cs
- Cursors.cs
- ModelFunction.cs
- WindowPatternIdentifiers.cs
- TextBounds.cs
- EditorZoneBase.cs
- QueryStringParameter.cs
- _SslStream.cs
- TrustManagerMoreInformation.cs
- GeneralTransform3DTo2DTo3D.cs
- DataGridViewTextBoxCell.cs
- DeferredTextReference.cs
- BinHexDecoder.cs
- IfJoinedCondition.cs
- OdbcException.cs
- BuildResultCache.cs
- HttpConfigurationSystem.cs
- MessageSmuggler.cs
- ScriptHandlerFactory.cs
- BindUriHelper.cs
- NavigatingCancelEventArgs.cs
- StoragePropertyMapping.cs
- CharUnicodeInfo.cs
- VirtualDirectoryMapping.cs
- ProtocolProfile.cs
- StrokeCollectionDefaultValueFactory.cs
- sqlstateclientmanager.cs
- VisualBrush.cs
- NativeRightsManagementAPIsStructures.cs
- TextEditorMouse.cs
- WinInet.cs
- Repeater.cs
- DataSourceControlBuilder.cs
- ItemCollection.cs
- ReferencedAssemblyResolver.cs
- SqlCharStream.cs
- WebScriptEndpointElement.cs
- CommonProperties.cs
- ScriptingSectionGroup.cs
- XmlLinkedNode.cs
- ParseHttpDate.cs
- FileAuthorizationModule.cs
- MinimizableAttributeTypeConverter.cs
- reliableinputsessionchannel.cs
- CodeCommentStatement.cs
- FrameworkElement.cs
- PeerContact.cs
- StylusSystemGestureEventArgs.cs
- SqlDataSourceCache.cs
- DataProtectionSecurityStateEncoder.cs
- ConfigurationElementProperty.cs
- TextEditorSelection.cs
- ServiceObjectContainer.cs
- OleDbParameter.cs
- updatecommandorderer.cs
- TabItemAutomationPeer.cs
- IntMinMaxAggregationOperator.cs
- AssociativeAggregationOperator.cs
- GridViewCommandEventArgs.cs
- SocketAddress.cs
- KnownTypeHelper.cs
- SqlCacheDependencySection.cs
- CodeDirectiveCollection.cs