//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //------------------------------------------------------------------------------ namespace System.Diagnostics { using System.Diagnostics; using System; using System.ComponentModel; /// /// A struct defining the counter type, name and help string for a custom counter. /// [ TypeConverter("System.Diagnostics.Design.CounterCreationDataConverter, " + AssemblyRef.SystemDesign), Serializable ] public class CounterCreationData { private PerformanceCounterType counterType = PerformanceCounterType.NumberOfItems32; private string counterName = String.Empty; private string counterHelp = String.Empty; /// /// [To be supplied.] /// public CounterCreationData() { } /// /// [To be supplied.] /// public CounterCreationData(string counterName, string counterHelp, PerformanceCounterType counterType) { CounterType = counterType; CounterName = counterName; CounterHelp = counterHelp; } /// /// [To be supplied.] /// [ DefaultValue(PerformanceCounterType.NumberOfItems32), MonitoringDescription(SR.CounterType) ] public PerformanceCounterType CounterType { get { return counterType; } set { if (!Enum.IsDefined(typeof(PerformanceCounterType), value)) throw new InvalidEnumArgumentException("value", (int)value, typeof(PerformanceCounterType)); counterType = value; } } /// /// [To be supplied.] /// [ DefaultValue(""), MonitoringDescription(SR.CounterName), TypeConverter("System.Diagnostics.Design.StringValueConverter, " + AssemblyRef.SystemDesign) ] public string CounterName { get { return counterName; } set { PerformanceCounterCategory.CheckValidCounter(value); counterName = value; } } /// /// [To be supplied.] /// [ DefaultValue(""), MonitoringDescription(SR.CounterHelp) ] public string CounterHelp { get { return counterHelp; } set { PerformanceCounterCategory.CheckValidHelp(value); counterHelp = value; } } } }