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
- EntityTypeEmitter.cs
- AttributedMetaModel.cs
- SynchronizedInputHelper.cs
- XmlLanguage.cs
- MediaPlayerState.cs
- ZeroOpNode.cs
- IteratorFilter.cs
- DataServiceConfiguration.cs
- ZoomingMessageFilter.cs
- MetadataSerializer.cs
- InheritedPropertyChangedEventArgs.cs
- Focus.cs
- SessionViewState.cs
- Size.cs
- XmlUtilWriter.cs
- ArrayMergeHelper.cs
- dataobject.cs
- TypeForwardedToAttribute.cs
- safePerfProviderHandle.cs
- CodeAttributeArgument.cs
- CollectionViewGroupRoot.cs
- XmlDocumentFragment.cs
- DataViewManagerListItemTypeDescriptor.cs
- WebAdminConfigurationHelper.cs
- WebEncodingValidator.cs
- UInt16.cs
- GeneralTransformGroup.cs
- TypeUtils.cs
- XmlUtf8RawTextWriter.cs
- XmlHierarchyData.cs
- Control.cs
- TrustManagerMoreInformation.cs
- DropShadowEffect.cs
- ImageMapEventArgs.cs
- DataGridViewColumnConverter.cs
- HyperLinkField.cs
- DataFormats.cs
- ListControlBoundActionList.cs
- BrowserCapabilitiesFactoryBase.cs
- DefaultTextStoreTextComposition.cs
- _IPv4Address.cs
- SizeAnimationBase.cs
- FamilyMapCollection.cs
- figurelengthconverter.cs
- XmlSchemaSet.cs
- XmlSerializerObjectSerializer.cs
- AnnotationService.cs
- EventLogInformation.cs
- ParserStreamGeometryContext.cs
- DropTarget.cs
- DetailsViewCommandEventArgs.cs
- hwndwrapper.cs
- FunctionGenerator.cs
- _OverlappedAsyncResult.cs
- GenericWebPart.cs
- TextSpan.cs
- HotSpotCollection.cs
- ListBindingConverter.cs
- COM2Enum.cs
- UdpSocketReceiveManager.cs
- BrowserCapabilitiesCompiler.cs
- ToolStripTextBox.cs
- RegexCompiler.cs
- InnerItemCollectionView.cs
- BamlResourceDeserializer.cs
- FaultHandlingFilter.cs
- DecoderFallbackWithFailureFlag.cs
- _IPv6Address.cs
- ActivityBuilderHelper.cs
- FileLevelControlBuilderAttribute.cs
- Vector3dCollection.cs
- SecurityHelper.cs
- ConfigXmlElement.cs
- XsdCachingReader.cs
- LightweightCodeGenerator.cs
- ReversePositionQuery.cs
- BigInt.cs
- UriSection.cs
- XMLSchema.cs
- TextBreakpoint.cs
- PlanCompiler.cs
- URLIdentityPermission.cs
- LocalizeDesigner.cs
- FlowNode.cs
- VisualStyleTypesAndProperties.cs
- MenuItem.cs
- PenThreadPool.cs
- BuiltInPermissionSets.cs
- SerializableAttribute.cs
- PartManifestEntry.cs
- BitFlagsGenerator.cs
- DrawingContextDrawingContextWalker.cs
- DataControlCommands.cs
- ResourcePermissionBaseEntry.cs
- RemoteWebConfigurationHost.cs
- UrlPropertyAttribute.cs
- BitmapMetadataEnumerator.cs
- SystemUdpStatistics.cs
- StorageModelBuildProvider.cs
- UserPersonalizationStateInfo.cs