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
- __ConsoleStream.cs
- WindowsTooltip.cs
- FixedTextContainer.cs
- OdbcException.cs
- XmlSchemaComplexContent.cs
- httpserverutility.cs
- HierarchicalDataSourceControl.cs
- SspiSafeHandles.cs
- TabControlCancelEvent.cs
- CommandHelpers.cs
- DataContractJsonSerializer.cs
- WriteableBitmap.cs
- GuidelineSet.cs
- NetworkCredential.cs
- QueryOptionExpression.cs
- Int16Converter.cs
- MappingSource.cs
- Mapping.cs
- ToolstripProfessionalRenderer.cs
- TypedTableBaseExtensions.cs
- PointConverter.cs
- GridEntryCollection.cs
- XmlnsCache.cs
- TableLayoutSettingsTypeConverter.cs
- WebPartEditVerb.cs
- StylusEventArgs.cs
- DataGridViewCellStyleConverter.cs
- XmlCDATASection.cs
- ArrayItemReference.cs
- ComponentResourceManager.cs
- PropertyCollection.cs
- ModelService.cs
- BatchWriter.cs
- OrderByQueryOptionExpression.cs
- MetadataCacheItem.cs
- BasicExpressionVisitor.cs
- CharConverter.cs
- RestHandler.cs
- ViewValidator.cs
- EventLogPermissionEntryCollection.cs
- BindingGroup.cs
- CommandPlan.cs
- Table.cs
- StagingAreaInputItem.cs
- NamedPipeWorkerProcess.cs
- UriTemplatePathPartiallyEquivalentSet.cs
- TdsParserSessionPool.cs
- DataGridViewHeaderCell.cs
- CodeNamespaceCollection.cs
- Pen.cs
- WasAdminWrapper.cs
- JsonStringDataContract.cs
- SendMessageRecord.cs
- SiteMapProvider.cs
- RoleGroup.cs
- ConsumerConnectionPoint.cs
- XNodeNavigator.cs
- ErrorWrapper.cs
- AccessDataSource.cs
- RuleRef.cs
- NetMsmqSecurity.cs
- Point3DValueSerializer.cs
- SecurityAttributeGenerationHelper.cs
- MsmqIntegrationMessagePool.cs
- ResXBuildProvider.cs
- Decorator.cs
- EventLogEntry.cs
- SizeAnimationClockResource.cs
- ProfileSettings.cs
- ContentElementAutomationPeer.cs
- ScriptResourceInfo.cs
- BehaviorEditorPart.cs
- InternalException.cs
- TaskFormBase.cs
- NetworkStream.cs
- DataGridColumnCollection.cs
- ProcessRequestArgs.cs
- HttpApplicationStateWrapper.cs
- PropertyChangingEventArgs.cs
- TableCell.cs
- PrinterUnitConvert.cs
- FunctionMappingTranslator.cs
- FilterException.cs
- ActivatedMessageQueue.cs
- DataGridViewCellStyle.cs
- StrongNameUtility.cs
- PersonalizationEntry.cs
- CornerRadiusConverter.cs
- MsmqInputChannelBase.cs
- StateMachineWorkflow.cs
- ProfilePropertySettingsCollection.cs
- LocalServiceSecuritySettings.cs
- GeneralTransform3DTo2DTo3D.cs
- LineServicesRun.cs
- FixedStringLookup.cs
- BuildManager.cs
- TemplatePartAttribute.cs
- EventToken.cs
- TrackingMemoryStream.cs
- DebugView.cs