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
- MailMessageEventArgs.cs
- SqlLiftIndependentRowExpressions.cs
- SmtpCommands.cs
- GestureRecognizer.cs
- ClientCredentials.cs
- SystemIPv4InterfaceProperties.cs
- ToolStripSplitButton.cs
- CodeExpressionCollection.cs
- CellPartitioner.cs
- PublishLicense.cs
- ForceCopyBuildProvider.cs
- ThreadAbortException.cs
- MailSettingsSection.cs
- RtfToken.cs
- TextStore.cs
- OracleBFile.cs
- ViewService.cs
- QueryStringParameter.cs
- TrackingParameters.cs
- ScriptRegistrationManager.cs
- ProtocolsConfigurationEntry.cs
- InternalUserCancelledException.cs
- DPCustomTypeDescriptor.cs
- DateTimeOffset.cs
- Point3DCollectionValueSerializer.cs
- DbDataSourceEnumerator.cs
- objectquery_tresulttype.cs
- DbConnectionPool.cs
- TypeResolvingOptions.cs
- NamespaceMapping.cs
- SecurityAccessDeniedException.cs
- FixedTextPointer.cs
- CatalogZoneBase.cs
- HostingMessageProperty.cs
- NaturalLanguageHyphenator.cs
- HandlerBase.cs
- NegationPusher.cs
- TrustManager.cs
- PermissionSet.cs
- PerformanceCounterManager.cs
- XPathPatternBuilder.cs
- UrlPath.cs
- PropertyItem.cs
- CodeMemberField.cs
- VBIdentifierName.cs
- LiteralTextContainerControlBuilder.cs
- ResolveDuplexAsyncResult.cs
- WindowsRichEditRange.cs
- DataGridViewLinkCell.cs
- ConversionHelper.cs
- ListBase.cs
- DrawItemEvent.cs
- PersonalizationDictionary.cs
- ContentElementAutomationPeer.cs
- BoolExpression.cs
- DesignTimeParseData.cs
- NavigationWindowAutomationPeer.cs
- ProcessHost.cs
- COM2IDispatchConverter.cs
- SimpleMailWebEventProvider.cs
- ComponentFactoryHelpers.cs
- AnnotationService.cs
- XmlElementAttributes.cs
- SchemaImporterExtensionElementCollection.cs
- ToolStripItemEventArgs.cs
- ValueProviderWrapper.cs
- XsdBuilder.cs
- ListMarkerLine.cs
- IisTraceListener.cs
- DateRangeEvent.cs
- SmiGettersStream.cs
- PrePrepareMethodAttribute.cs
- XamlWriter.cs
- XmlObjectSerializerReadContextComplexJson.cs
- RectangleF.cs
- DefaultValidator.cs
- HtmlElementCollection.cs
- WebPartManager.cs
- MarkupCompilePass2.cs
- PeerPresenceInfo.cs
- FixedSOMContainer.cs
- WindowsBrush.cs
- RuntimeConfigLKG.cs
- WebPartConnectVerb.cs
- SqlAliasesReferenced.cs
- ContextMenuStrip.cs
- FormViewCommandEventArgs.cs
- FixedTextView.cs
- ConfigurationElementCollection.cs
- Utilities.cs
- SQLInt32.cs
- Color.cs
- DesignerOptionService.cs
- DotExpr.cs
- RsaSecurityTokenAuthenticator.cs
- NameValuePair.cs
- SerialReceived.cs
- XmlSchemaAnnotated.cs
- HtmlForm.cs
- AccessViolationException.cs