Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Services / Monitoring / system / Diagnosticts / CounterSample.cs / 1305376 / 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)); } } } // 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
- LambdaCompiler.ControlFlow.cs
- BlurBitmapEffect.cs
- XmlSerializer.cs
- Compiler.cs
- WebDisplayNameAttribute.cs
- DaylightTime.cs
- FixedSOMLineRanges.cs
- PageTheme.cs
- FixedNode.cs
- BinaryNode.cs
- AnnotationResource.cs
- TypeReference.cs
- DataGridViewSelectedCellCollection.cs
- DelegatingChannelListener.cs
- OdbcCommand.cs
- DbConnectionInternal.cs
- CodeLinePragma.cs
- AstNode.cs
- BitmapCacheBrush.cs
- Lasso.cs
- ASCIIEncoding.cs
- TextParaClient.cs
- EventProvider.cs
- XmlNavigatorFilter.cs
- WebServiceFaultDesigner.cs
- QueryStringParameter.cs
- SafeEventLogWriteHandle.cs
- SettingsPropertyValueCollection.cs
- TableHeaderCell.cs
- AttributeCollection.cs
- WebBrowsableAttribute.cs
- WebResponse.cs
- login.cs
- TextTreePropertyUndoUnit.cs
- MemoryFailPoint.cs
- XpsLiterals.cs
- ServiceInfoCollection.cs
- _HTTPDateParse.cs
- SafeProcessHandle.cs
- MenuAutoFormat.cs
- CalendarSelectionChangedEventArgs.cs
- CharacterBufferReference.cs
- EventProvider.cs
- MinimizableAttributeTypeConverter.cs
- IntegrationExceptionEventArgs.cs
- X509IssuerSerialKeyIdentifierClause.cs
- ComplexType.cs
- LazyTextWriterCreator.cs
- GetFileNameResult.cs
- Error.cs
- DataStreams.cs
- ThemeableAttribute.cs
- DESCryptoServiceProvider.cs
- DoubleAnimationUsingKeyFrames.cs
- EnumValidator.cs
- HuffmanTree.cs
- XmlSchemaAnnotation.cs
- Geometry3D.cs
- SelectedGridItemChangedEvent.cs
- DataGridViewSelectedColumnCollection.cs
- XslException.cs
- ConstraintConverter.cs
- ColorConvertedBitmap.cs
- ImageListUtils.cs
- SelectionWordBreaker.cs
- DispatchChannelSink.cs
- Graphics.cs
- RecognizerBase.cs
- PropertyDescriptor.cs
- DebugHandleTracker.cs
- SolidBrush.cs
- XPathPatternParser.cs
- D3DImage.cs
- UnknownWrapper.cs
- RepeaterCommandEventArgs.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- DBCommand.cs
- RsaSecurityTokenAuthenticator.cs
- ObjectMemberMapping.cs
- ToolbarAUtomationPeer.cs
- DayRenderEvent.cs
- TransformPatternIdentifiers.cs
- NetSectionGroup.cs
- QueuePathDialog.cs
- FacetValueContainer.cs
- Compress.cs
- UnmanagedHandle.cs
- XmlName.cs
- WCFBuildProvider.cs
- VectorValueSerializer.cs
- GroupDescription.cs
- Rotation3DKeyFrameCollection.cs
- Html32TextWriter.cs
- SessionPageStatePersister.cs
- AggregatePushdown.cs
- CodeTypeReferenceSerializer.cs
- Rect3DValueSerializer.cs
- SelectedGridItemChangedEvent.cs
- FunctionDescription.cs
- WinEventHandler.cs