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
- ServiceModelStringsVersion1.cs
- RegisteredArrayDeclaration.cs
- MultiTrigger.cs
- ExpressionParser.cs
- ProxyManager.cs
- unitconverter.cs
- _HTTPDateParse.cs
- ArraySet.cs
- NavigationWindowAutomationPeer.cs
- EDesignUtil.cs
- RegexCompilationInfo.cs
- UnmanagedMemoryStream.cs
- ToolStripItemClickedEventArgs.cs
- BindStream.cs
- TextRunCacheImp.cs
- HyperLinkStyle.cs
- VisualStyleInformation.cs
- GeometryModel3D.cs
- DetailsViewModeEventArgs.cs
- PackageStore.cs
- NameGenerator.cs
- HMACSHA256.cs
- Overlapped.cs
- DataGridViewCellCancelEventArgs.cs
- SerialStream.cs
- OracleTimeSpan.cs
- GridItemPattern.cs
- DbConnectionPoolOptions.cs
- OperationGenerator.cs
- ComponentDispatcher.cs
- XmlnsCache.cs
- SessionEndedEventArgs.cs
- WebServiceFault.cs
- QueryExpression.cs
- ClientUtils.cs
- SystemTcpConnection.cs
- OperationResponse.cs
- DesignerWebPartChrome.cs
- DecoderReplacementFallback.cs
- MouseGestureConverter.cs
- DesignerSerializationVisibilityAttribute.cs
- VectorCollectionConverter.cs
- TableColumn.cs
- TraceContextRecord.cs
- NativeWindow.cs
- HtmlInputFile.cs
- CommandID.cs
- sqlcontext.cs
- CharAnimationUsingKeyFrames.cs
- Membership.cs
- MessageBox.cs
- SiteMapSection.cs
- Assembly.cs
- ResolvedKeyFrameEntry.cs
- CustomWebEventKey.cs
- LockedBorderGlyph.cs
- ConnectionStringSettingsCollection.cs
- XpsColorContext.cs
- SoapAttributeAttribute.cs
- ReachPrintTicketSerializer.cs
- DataGridAutomationPeer.cs
- ScriptHandlerFactory.cs
- CompilerScope.cs
- ObjectPropertyMapping.cs
- FamilyMapCollection.cs
- ReleaseInstanceMode.cs
- MouseActionValueSerializer.cs
- ConfigsHelper.cs
- WindowPattern.cs
- IntSecurity.cs
- ConditionalAttribute.cs
- SecurityContext.cs
- DbConvert.cs
- DataFormats.cs
- TextDecorationCollection.cs
- FusionWrap.cs
- SurrogateSelector.cs
- XmlSchemaDatatype.cs
- OleStrCAMarshaler.cs
- RequestTimeoutManager.cs
- LayoutInformation.cs
- DiscoveryClientReferences.cs
- SmtpMail.cs
- TemplateField.cs
- TypeDescriptorContext.cs
- PathNode.cs
- SendActivityValidator.cs
- GraphicsContainer.cs
- EntitySet.cs
- SAPICategories.cs
- VirtualPathExtension.cs
- XmlSchemaExternal.cs
- SchemaCollectionPreprocessor.cs
- FormatSettings.cs
- WindowsGraphics.cs
- cache.cs
- CodeParameterDeclarationExpressionCollection.cs
- XmlJsonReader.cs
- XmlSchemaRedefine.cs
- DataServiceQuery.cs