Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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 ////// 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; } ///[To be supplied.] ////// 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)); } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EventItfInfo.cs
- Run.cs
- CodeAttributeDeclaration.cs
- BrowserPolicyValidator.cs
- KeyedHashAlgorithm.cs
- RegexStringValidator.cs
- AssemblyHash.cs
- Vector3DCollectionValueSerializer.cs
- OverlappedAsyncResult.cs
- InvokeHandlers.cs
- ContentPropertyAttribute.cs
- SQLDecimalStorage.cs
- BaseResourcesBuildProvider.cs
- WsdlInspector.cs
- ErrorItem.cs
- StreamingContext.cs
- NotImplementedException.cs
- SyndicationElementExtension.cs
- FilterException.cs
- DataServices.cs
- WebHttpSecurityElement.cs
- userdatakeys.cs
- RequestCacheValidator.cs
- DataGridViewLayoutData.cs
- Propagator.JoinPropagator.JoinPredicateVisitor.cs
- ClaimTypeRequirement.cs
- ReaderOutput.cs
- X509Certificate.cs
- ExpressionServices.cs
- DataGridBoolColumn.cs
- ETagAttribute.cs
- InvalidDataException.cs
- EntityReference.cs
- SimpleHandlerBuildProvider.cs
- SamlAudienceRestrictionCondition.cs
- Input.cs
- XamlPointCollectionSerializer.cs
- HeaderedContentControl.cs
- PageBuildProvider.cs
- LoginViewDesigner.cs
- ExpressionBindingCollection.cs
- ExpressionPrefixAttribute.cs
- XmlSchemaType.cs
- SqlDependency.cs
- BulletChrome.cs
- Border.cs
- querybuilder.cs
- VariableExpressionConverter.cs
- Configuration.cs
- TextClipboardData.cs
- WorkflowRequestContext.cs
- ScrollableControl.cs
- ValueCollectionParameterReader.cs
- externdll.cs
- PeerInvitationResponse.cs
- X509ImageLogo.cs
- LayoutManager.cs
- XmlNode.cs
- SerializationSectionGroup.cs
- HitTestParameters3D.cs
- RoleBoolean.cs
- OutputCache.cs
- CheckBoxField.cs
- PreDigestedSignedInfo.cs
- RadioButtonBaseAdapter.cs
- InputProcessorProfilesLoader.cs
- ComponentRenameEvent.cs
- DrawingBrush.cs
- UpDownBaseDesigner.cs
- MediaContext.cs
- GroupStyle.cs
- InlineUIContainer.cs
- WindowsEditBoxRange.cs
- TargetConverter.cs
- DispatcherOperation.cs
- DiscardableAttribute.cs
- DocumentCollection.cs
- UnsafeNativeMethods.cs
- StrokeNodeOperations2.cs
- ColorConverter.cs
- NativeBuffer.cs
- Font.cs
- QuaternionRotation3D.cs
- GeneralTransform3DCollection.cs
- DecoderExceptionFallback.cs
- MatrixCamera.cs
- JsonQueryStringConverter.cs
- ListSortDescription.cs
- EventManager.cs
- UdpContractFilterBehavior.cs
- SspiSecurityTokenProvider.cs
- BackoffTimeoutHelper.cs
- BatchServiceHost.cs
- SingleKeyFrameCollection.cs
- RedirectionProxy.cs
- ErrorWrapper.cs
- TimelineGroup.cs
- BinaryMethodMessage.cs
- LiteralTextContainerControlBuilder.cs
- SecurityProtocolFactory.cs