<?xml version="1.0" encoding="utf-8"?>
<doc>
  <assembly>
    <name>Gemstone.Diagnostics</name>
  </assembly>
  <members>
    <member name="T:Gemstone.Diagnostics.ChildProcessManager">
      <summary>
            Represents a manager for automatically terminating child processes.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.ChildProcessManager.#ctor">
      <summary>
            Creates a new <see cref="T:Gemstone.Diagnostics.ChildProcessManager" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.ChildProcessManager.AddProcess(System.Diagnostics.Process)">
      <summary>
            Associates the specified <paramref name="process" /> as a child of this <see cref="T:Gemstone.Diagnostics.ChildProcessManager" /> instance.
            </summary>
      <param name="process">The <see cref="T:System.Diagnostics.Process" /> to associate.</param>
      <remarks>
        <para>
            The <paramref name="process" /> will be managed as an associated process of this <see cref="T:Gemstone.Diagnostics.ChildProcessManager" />
            instance. When this <see cref="T:Gemstone.Diagnostics.ChildProcessManager" /> instance is disposed or garbage collected, the children
            processes will be terminated.
            </para>
        <para>
            Creating an instance of this class with lifetime scope of the executing application will cause any child processes
            to be terminated when the parent process shuts down, on Windows environments this will happen even when the parent
            process termination is abnormal.
            </para>
      </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.ChildProcessManager.Dispose">
      <summary>
            Releases all the resources used by the <see cref="T:Gemstone.Diagnostics.ChildProcessManager" /> object.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.ChildProcessManager.Finalize">
      <summary>
            Make sure child processes get disposed.
            </summary>
    </member>
    <member name="E:Gemstone.Diagnostics.ChildProcessManager.TerminationException">
      <summary>
            Raised when there is an exception while attempting to terminate child process.
            </summary>
      <remarks>
            This is currently only raised on non-Windows operating systems.
            </remarks>
    </member>
    <member name="T:Gemstone.Diagnostics.DiagnosticsLogger">
      <summary>
            A logger that writes messages to the <see cref="T:Gemstone.Diagnostics.Logger" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLogger.#ctor(System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" /> class.
            </summary>
      <param name="categoryName">The category of log messages captured by this instance of the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" /> class.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLogger.BeginScope``1(``0)">
      <summary>
            Begins a logical operation scope.
            </summary>
      <param name="state">The identifier for the scope.</param>
      <typeparam name="TState">The type of the state to begin scope for.</typeparam>
      <returns>An <see cref="T:System.IDisposable" /> that ends the logical operation scope on dispose.</returns>
    </member>
    <member name="F:Gemstone.Diagnostics.DiagnosticsLogger.DefaultBurstLimit">
      <summary>
            The default burst limit for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.DiagnosticsLogger.DefaultLogPath">
      <summary>
            Gets the default log path for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.DiagnosticsLogger.DefaultLogVerbosity">
      <summary>
            The default log verbosity for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.DiagnosticsLogger.DefaultMaxLogFiles">
      <summary>
            The default maximum number of log files for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.DiagnosticsLogger.DefaultRateLimit">
      <summary>
            The default expected message rate limit for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.DiagnosticsLogger.DefaultSettingsCategory">
      <summary>
            The default settings category for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLogger.DefineSettings(Gemstone.Configuration.Settings,System.String)">
      <summary>
            Establishes default settings for the config file.
            </summary>
      <param name="settings">Settings instance used to hold configuration.</param>
      <param name="settingsCategory">The config file settings category under which the settings are defined.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLogger.Initialize">
      <summary>
            Initializes the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLogger.IsEnabled(Microsoft.Extensions.Logging.LogLevel)">
      <summary>
            Checks if the given <paramref name="logLevel" /> is enabled.
            </summary>
      <param name="logLevel">Level to be checked.</param>
      <returns>
        <c>true</c> if enabled.</returns>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLogger.Log``1(Microsoft.Extensions.Logging.LogLevel,Microsoft.Extensions.Logging.EventId,``0,System.Exception,System.Func{``0,System.Exception,System.String})">
      <summary>
            Writes a log entry.
            </summary>
      <param name="logLevel">Entry will be written on this level.</param>
      <param name="eventId">Id of the event.</param>
      <param name="state">The entry to be written. Can be also an object.</param>
      <param name="exception">The exception related to this entry.</param>
      <param name="formatter">Function to create a <see cref="T:System.String" /> message of the <paramref name="state" /> and <paramref name="exception" />.</param>
      <typeparam name="TState">The type of the object to be written.</typeparam>
    </member>
    <member name="P:Gemstone.Diagnostics.DiagnosticsLogger.LogPublisher">
      <summary>
            Gets the <see cref="P:Gemstone.Diagnostics.DiagnosticsLogger.LogPublisher" /> for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.DiagnosticsLogger.SettingsCategory">
      <summary>
            Gets or sets the settings category for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.DiagnosticsLoggerProvider">
      <summary>
            The provider for the <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLoggerProvider.#ctor">
      <summary>
        <markup>
          <include item="SMCAutoDocConstructor">
            <parameter>Gemstone.Diagnostics.DiagnosticsLoggerProvider</parameter>
          </include>
        </markup>
      </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLoggerProvider.CreateLogger(System.String)">
      <summary>
            Creates a new <see cref="T:Microsoft.Extensions.Logging.ILogger" /> instance.
            </summary>
      <param name="categoryName">The category name for messages produced by the logger.</param>
      <returns>The instance of <see cref="T:Microsoft.Extensions.Logging.ILogger" /> that was created.</returns>
    </member>
    <member name="M:Gemstone.Diagnostics.DiagnosticsLoggerProvider.Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="T:Gemstone.Diagnostics.DisposableLoggingClassBase">
      <summary>
            A helper class that implements <see cref="T:System.IDisposable" /> that will raise log messages
            when this class is not properly disposed of.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DisposableLoggingClassBase.#ctor(Gemstone.Diagnostics.MessageClass)">
      <summary>
            Creates a <see cref="T:Gemstone.Diagnostics.DisposableLoggingClassBase" /></summary>
      <param name="messageClassification">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>messageClassification</parameter>
            <parameter>M:Gemstone.Diagnostics.DisposableLoggingClassBase.#ctor(Gemstone.Diagnostics.MessageClass)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.DisposableLoggingClassBase.CheckDisposed">
      <summary>
            Checks if the class has been disposed, throws an exception if this is the case.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DisposableLoggingClassBase.Dispose">
      <summary>
            Releases all the resources used by the <see cref="T:Gemstone.Diagnostics.DisposableLoggingClassBase" /> object.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.DisposableLoggingClassBase.Dispose(System.Boolean)">
      <summary>
            Releases the unmanaged resources used by the <see cref="T:Gemstone.Diagnostics.DisposableLoggingClassBase" /> object and optionally releases the managed resources.
            </summary>
      <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.DisposableLoggingClassBase.Finalize">
      <summary>
            This code is here to detect when finalizers are called rather than a class be properly disposed. 
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.DisposableLoggingClassBase.Log">
      <summary>
            The <see cref="T:Gemstone.Diagnostics.LogPublisher" /> for logging messages.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.LogEventPublisher">
      <summary>
            Can be used to publish event messages.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogEventPublisher.HasSubscribers">
      <summary>
            Gets if this publisher has any subscribers to it. This does not have to be checked as messages won't route if there are not subscribers. This is mainly
            used to skip the code that would generate the data for the <see cref="T:Gemstone.Diagnostics.LogMessage" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisher.Publish(Gemstone.Diagnostics.MessageFlags,System.String,System.String,System.Exception)">
      <summary>
            Raises a log message with the provided data.
            </summary>
      <param name="flags">additional flags to set to this log</param>
      <param name="message">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>message</parameter>
            <parameter>M:Gemstone.Diagnostics.LogEventPublisher.Publish(Gemstone.Diagnostics.MessageFlags,System.String,System.String,System.Exception)</parameter>
          </include>
        </markup>
      </param>
      <param name="details">A long text field with the details of the message.</param>
      <param name="exception">An exception object if one is provided.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisher.Publish(System.String,System.String,System.Exception)">
      <summary>
            Raises a log message with the provided data.
            </summary>
      <param name="message">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>message</parameter>
            <parameter>M:Gemstone.Diagnostics.LogEventPublisher.Publish(System.String,System.String,System.Exception)</parameter>
          </include>
        </markup>
      </param>
      <param name="details">A long text field with the details of the message.</param>
      <param name="exception">An exception object if one is provided.</param>
    </member>
    <member name="P:Gemstone.Diagnostics.LogEventPublisher.ShouldRaiseMessageSuppressionNotifications">
      <summary>
            Gets/Sets if a log message should be generated when message suppression occurs.
            Default is true;
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.LogEventPublisherDetails">
      <summary>
            Information about the <see cref="T:Gemstone.Diagnostics.LogEventPublisher" /> that published this message.
            </summary>
      <remarks>
            Since it is likely that a log file will have this data repeated a bunch, this class allows
            de-duplication of this data so it takes up less memory to store.
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisherDetails.#ctor(Gemstone.Diagnostics.PublisherTypeDefinition,System.String)">
      <summary>
            Represents a single owner of a log message.
            </summary>
      <param name="typeData">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>typeData</parameter>
            <parameter>M:Gemstone.Diagnostics.LogEventPublisherDetails.#ctor(Gemstone.Diagnostics.PublisherTypeDefinition,System.String)</parameter>
          </include>
        </markup>
      </param>
      <param name="eventName">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>eventName</parameter>
            <parameter>M:Gemstone.Diagnostics.LogEventPublisherDetails.#ctor(Gemstone.Diagnostics.PublisherTypeDefinition,System.String)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisherDetails.Equals(Gemstone.Diagnostics.LogEventPublisherDetails)">
      <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
      <param name="obj">An object to compare with this object.</param>
      <returns>
            true if the current object is equal to the <paramref name="obj" /> parameter; otherwise, false.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisherDetails.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The object to compare with the current object. </param>
      <returns>
            true if the specified object  is equal to the current object; otherwise, false.
            </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.LogEventPublisherDetails.EventName">
      <summary>
            The event name of this log message.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisherDetails.GetHashCode">
      <summary>
            Serves as a hash function for a particular type. 
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogEventPublisherDetails.ToString">
      <summary>
            Returns a string that represents the current object.
            </summary>
      <returns>
            A string that represents the current object.
            </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.LogEventPublisherDetails.TypeData">
      <summary>
            The <see cref="T:Gemstone.Diagnostics.PublisherTypeDefinition" /> associated with <see cref="T:Gemstone.Diagnostics.LogPublisher" /> that generated the message.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.LogFileWriterInMemory">
      <summary>
            A log subscriber that will log messages to a file.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogFileWriterInMemory.#ctor">
      <summary>
            Creates a LogFileWriter that initially queues message
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogFileWriterInMemory.LogCount">
      <summary>
            The number of logs that have been written to this file.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogFileWriterInMemory.ToByteArray">
      <summary>
            Returns a byte array of the log zip stream.
            </summary>
      <returns>Byte array of the log zip stream.</returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogFileWriterInMemory.Write(Gemstone.Diagnostics.LogMessage)">
      <summary>
            Writes the specified log to the file
            </summary>
      <param name="log">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>log</parameter>
            <parameter>M:Gemstone.Diagnostics.LogFileWriterInMemory.Write(Gemstone.Diagnostics.LogMessage)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="T:Gemstone.Diagnostics.Logger">
      <summary>
            Manages the collection and reporting of logging information in a system.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.AppendStackMessages(Gemstone.Diagnostics.LogStackMessages)">
      <summary>
            Temporarily appends data to the thread's stack so the data can be propagated to any messages generated on this thread.
            Be sure to call Dispose on the returned object to remove this from the stack.
            </summary>
      <param name="messages">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>messages</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.AppendStackMessages(Gemstone.Diagnostics.LogStackMessages)</parameter>
          </include>
        </markup>
      </param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.AppendStackMessages(Gemstone.Diagnostics.LogStackMessages)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.AppendStackMessages(System.String,System.String)">
      <summary>
            Temporarily appends data to the thread's stack so the data can be propagated to any messages generated on this thread.
            Be sure to call Dispose on the returned object to remove this from the stack.
            </summary>
      <param name="key">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>key</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.AppendStackMessages(System.String,System.String)</parameter>
          </include>
        </markup>
      </param>
      <param name="value">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>value</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.AppendStackMessages(System.String,System.String)</parameter>
          </include>
        </markup>
      </param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.AppendStackMessages(System.String,System.String)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.Logger.Console">
      <summary>
            The default console based log subscriber.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.CreatePublisher(System.Type,Gemstone.Diagnostics.MessageClass)">
      <summary>
            Looks up the type of the log source
            </summary>
      <param name="type">the type</param>
      <param name="classification">the classification of the type of messages that this publisher will raise.</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.CreatePublisher(System.Type,Gemstone.Diagnostics.MessageClass)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.CreateSubscriber(Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Creates a <see cref="T:Gemstone.Diagnostics.LogSubscriber" /></summary>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.CreateSubscriber(Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.CreateSubscriber(Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.Logger.FileWriter">
      <summary>
            The default file based log writer.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.GetStackMessages">
      <summary>
            Searches the current stack frame for all related messages that will be published with this message.
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.GetStackMessages</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.OverrideSuppressLogMessages">
      <summary>
            Sets a flag that will allow log messages to be raised again.
            Remember to dispose of the callback to remove this override.
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.OverrideSuppressLogMessages</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="P:Gemstone.Diagnostics.Logger.ShouldSuppressFirstChanceLogMessages">
      <summary>
            Gets if First Chance Exception Log Messages should be suppressed.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.Logger.ShouldSuppressLogMessages">
      <summary>
            Gets if Log Messages should be suppressed.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.SuppressFirstChanceExceptionLogMessages">
      <summary>
            Sets a flag that will prevent First Chance Exception log messages from being raised on this thread.
            Remember to dispose of the callback to remove this suppression.
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.SuppressFirstChanceExceptionLogMessages</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.SuppressLogMessages">
      <summary>
            Sets a flag that will prevent log messages from being raised on this thread.
            Remember to dispose of the callback to remove this suppression.
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Logger.SuppressLogMessages</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.Logger.SwallowException(System.Exception,System.String,System.String,Gemstone.Diagnostics.MessageFlags)">
      <summary>
            Logs that a first chance exception was intentionally not handled for the provided reason.
            In the LogFileViewer it will filter messages differently if it was indicated that they were swallowed.
            </summary>
      <param name="ex">the exception that was swallowed</param>
      <param name="message">message to include, such as a reason why it was swallowed.</param>
      <param name="details">additional details.</param>
      <param name="additionalFlags">additional flags that can be set with this swallowed exception.</param>
    </member>
    <member name="T:Gemstone.Diagnostics.LoggerExtensions">
      <summary>
            Defines extension methods related to logging.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LoggerExtensions.AddGemstoneDiagnostics(Microsoft.Extensions.Logging.ILoggingBuilder)">
      <summary>
            Adds Gemstone <see cref="T:Gemstone.Diagnostics.DiagnosticsLogger" /> to the factory.
            </summary>
      <param name="builder">The extension method argument.</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LoggerExtensions.AddGemstoneDiagnostics(Microsoft.Extensions.Logging.ILoggingBuilder)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LoggerExtensions.ToLogLevel(Gemstone.Diagnostics.MessageLevel)">
      <summary>
            Converts a <see cref="T:Gemstone.Diagnostics.MessageLevel" /> to a <see cref="T:Microsoft.Extensions.Logging.LogLevel" />.
            </summary>
      <param name="level">
        <see cref="T:Gemstone.Diagnostics.MessageLevel" /> to convert.</param>
      <returns>
        <see cref="T:Microsoft.Extensions.Logging.LogLevel" /> equivalent of the specified <see cref="T:Gemstone.Diagnostics.MessageLevel" />.</returns>
      <remarks>
            Note that <see cref="F:Microsoft.Extensions.Logging.LogLevel.Trace" /> has no equivalent <see cref="T:Gemstone.Diagnostics.MessageLevel" />.
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.LoggerExtensions.ToMessageLevel(Microsoft.Extensions.Logging.LogLevel)">
      <summary>
            Converts a <see cref="T:Microsoft.Extensions.Logging.LogLevel" /> to a <see cref="T:Gemstone.Diagnostics.MessageLevel" />.
            </summary>
      <param name="level">
        <see cref="T:Microsoft.Extensions.Logging.LogLevel" /> to convert.</param>
      <returns>
        <see cref="T:Gemstone.Diagnostics.MessageLevel" /> equivalent of the specified <see cref="T:Microsoft.Extensions.Logging.LogLevel" />.</returns>
      <remarks>
            Note that <see cref="F:Microsoft.Extensions.Logging.LogLevel.Trace" /> has no equivalent <see cref="T:Gemstone.Diagnostics.MessageLevel" />.
            </remarks>
    </member>
    <member name="T:Gemstone.Diagnostics.LogMessage">
      <summary>
            An individual log message.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.AssemblyName">
      <summary>
            The <see cref="T:System.Reflection.Assembly" /> associated with <see cref="T:Gemstone.Diagnostics.LogPublisher" /> that generated the message.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.Classification">
      <summary>
            The classification of the message
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.CurrentStackMessages">
      <summary>
            The message stack that existed when this <see cref="T:Gemstone.Diagnostics.LogMessage" /> was published.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.CurrentStackTrace">
      <summary>
            The stack trace that existed when this <see cref="T:Gemstone.Diagnostics.LogMessage" /> was published.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.Details">
      <summary>
            A long text field with the details of the message. 
            Can be String.Empty.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.EventName">
      <summary>
            The event name of this log message.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.EventPublisherDetails">
      <summary>
            Contains details about the <see cref="T:Gemstone.Diagnostics.LogEventPublisher" /> that published this <see cref="T:Gemstone.Diagnostics.LogMessage" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.Exception">
      <summary>
            An exception object if one is provided.
            Can be null. 
            Since the exception is not serialized to the disk, it will be null when loaded.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.ExceptionString">
      <summary>
            A string representation of the exception. Can be String.Empty.
            If loaded from the disk, since exception objects cannot be serialized, 
            the <see cref="F:Gemstone.Diagnostics.LogMessage.Exception" /> will be null and 
            this field will have the string representation of <see cref="F:Gemstone.Diagnostics.LogMessage.Exception" /></summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.Flags">
      <summary>
            The flags associated with the message
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogMessage.GetMessage">
      <summary>
            Gets the details of the message.
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogMessage.GetMessage</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.InitialStackMessages">
      <summary>
            The message stack that existed when the <see cref="T:Gemstone.Diagnostics.LogPublisher" /> was originally constructed.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.InitialStackTrace">
      <summary>
            The stack trace that existed when the <see cref="T:Gemstone.Diagnostics.LogPublisher" /> was originally constructed.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.Level">
      <summary>
            The level associated with the message
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.ManagedThreadID">
      <summary>
            The Managed Thread ID of the thread that created this message. This 
            is primarily to assist in future log viewing applications
            where it is beneficial to track the thread.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.Message">
      <summary>
            A specific message about the event giving more specifics about the actual message. 
            Typically, this will be up to 1 line of text. 
            Can be String.Empty.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.MessageSuppression">
      <summary>
            The suppression level assigned to this log message
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.PreviousFirstChanceExceptionSequenceNumber">
      <summary>
            A sequence number maintained by each thread of the previous 
            first chance exception that was thrown. This is used to assist
            LogFileViewer associate log messages with properly handled 
            first chance exceptions.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogMessage.ToString">
      <summary>Returns a string that represents the current object.</summary>
      <returns>A string that represents the current object.</returns>
    </member>
    <member name="P:Gemstone.Diagnostics.LogMessage.TypeName">
      <summary>
            The <see cref="T:System.Type" /> associated with <see cref="T:Gemstone.Diagnostics.LogPublisher" /> that generated the message.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogMessage.UtcTime">
      <summary>
            The time that the message was created.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.LogPublisher">
      <summary>
            A publisher of log messages. 
            </summary>
      <remarks>
        <see cref="F:Gemstone.Diagnostics.LogPublisher.InitialStackMessages" /> and <see cref="F:Gemstone.Diagnostics.LogPublisher.InitialStackTrace" /> can be modified so messages that are generated 
            with this instance will have this data appended to the log message.
            
            The user can either call one of the Publish overloads to lazily publish a message, or they
            can register a message with RegisterEvent so calling this message will incur little overhead.
            If registering an event, the user can check <see cref="P:Gemstone.Diagnostics.LogEventPublisher.HasSubscribers" /> to determine if the log message can be skipped altogether. 
            Registering events also allows the user to specify the auto-suppression algorithm and the depth of the stack trace that will be recorded on a message being raised.
            
            </remarks>
    </member>
    <member name="F:Gemstone.Diagnostics.LogPublisher.InitialStackMessages">
      <summary>
            The stack messages that existed when this publisher was created. This can be modified by the user of this publisher.
            Any messages that get published by this class will automatically have this data added to the log message.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogPublisher.InitialStackTrace">
      <summary>
            The stack trace that existed when this publisher was created. This can be modified by the user of this publisher.
            Any messages that get published by this class will automatically have this data added to the log message.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.LogPublisher.MaxDistinctEventPublisherCount">
      <summary>
            The maximum number of distinct events that this publisher can generate. (Default: 20)
            </summary>
      <remarks>
            Since message suppression and collection occurs at the event name level, it is important
            to have only a few distinct message types. This is the limit so misapplication
            of this publisher will not cause memory impacts on the system.
            
            It is recommended to keep the event name as a fixed string and not report any other meta data
            with the event.
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.Publish(Gemstone.Diagnostics.MessageLevel,Gemstone.Diagnostics.MessageFlags,System.String,System.String,System.String,System.Exception)">
      <summary>
            Raises a log message with the provided data.
            </summary>
      <param name="level">the level of the message</param>
      <param name="flags">associated flags</param>
      <param name="eventName">A short name about what this message is detailing. Typically this will be a few words.</param>
      <param name="message"> A longer message than <see param="eventName" /> giving more specifics about the actual message. 
            Typically, this will be up to 1 line of text.</param>
      <param name="details">A long text field with the details of the message.</param>
      <param name="exception">An exception object if one is provided.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.Publish(Gemstone.Diagnostics.MessageLevel,System.String,System.String,System.String,System.Exception)">
      <summary>
            Raises a log message with the provided data.
            </summary>
      <param name="level">the level of the message</param>
      <param name="eventName">A short name about what this message is detailing. Typically this will be a few words.</param>
      <param name="message"> A longer message than <see param="eventName" /> giving more specifics about the actual message. 
            Typically, this will be up to 1 line of text.</param>
      <param name="details">A long text field with the details of the message.</param>
      <param name="exception">An exception object if one is provided.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,Gemstone.Diagnostics.MessageFlags,System.String)">
      <summary>
            Initializes an <see cref="T:Gemstone.Diagnostics.LogEventPublisher" /> with the provided values.
            </summary>
      <param name="level">the level of the message</param>
      <param name="flags">associated flags</param>
      <param name="eventName">the name of the event.</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,Gemstone.Diagnostics.MessageFlags,System.String)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,Gemstone.Diagnostics.MessageFlags,System.String,System.Int32,Gemstone.Diagnostics.MessageRate,System.Int32)">
      <summary>
            Initializes an <see cref="T:Gemstone.Diagnostics.LogEventPublisher" /> with the provided values.
            </summary>
      <param name="level">the level of the message</param>
      <param name="flags">associated flags</param>
      <param name="eventName"></param>
      <param name="stackTraceDepth"></param>
      <param name="messagesPerSecond"></param>
      <param name="burstLimit"></param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,Gemstone.Diagnostics.MessageFlags,System.String,System.Int32,Gemstone.Diagnostics.MessageRate,System.Int32)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,System.String)">
      <summary>
            Initializes an <see cref="T:Gemstone.Diagnostics.LogEventPublisher" /> with the provided values.
            </summary>
      <param name="level">the level of the message and associated flags if any</param>
      <param name="eventName">the name of the event.</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,System.String)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,System.String,System.Int32,Gemstone.Diagnostics.MessageRate,System.Int32)">
      <summary>
            Initializes an <see cref="T:Gemstone.Diagnostics.LogEventPublisher" /> with the provided values.
            </summary>
      <param name="level">the level of the message</param>
      <param name="eventName"></param>
      <param name="stackTraceDepth"></param>
      <param name="messagesPerSecond"></param>
      <param name="burstLimit"></param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogPublisher.RegisterEvent(Gemstone.Diagnostics.MessageLevel,System.String,System.Int32,Gemstone.Diagnostics.MessageRate,System.Int32)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogPublisher.ToString">
      <summary>
            Gets the full name of the type.
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogPublisher.ToString</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="T:Gemstone.Diagnostics.LogStackFrame">
      <summary>
            Provides information about the specific stack frame.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackFrame.#ctor(System.Diagnostics.StackFrame)">
      <summary>
            Creates a <see cref="T:Gemstone.Diagnostics.LogStackFrame" /> from a <see cref="T:System.Diagnostics.StackFrame" /></summary>
      <param name="frame"></param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackFrame.#ctor(System.IO.Stream)">
      <summary>
            Creates a <see cref="T:Gemstone.Diagnostics.LogStackFrame" /> from a <see cref="T:System.IO.Stream" />.
            </summary>
      <param name="stream">the stream to load from</param>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackFrame.ClassName">
      <summary>
            The name of the method's type.
            </summary>
      <remarks>
            Example: System.Collections.Generic.List`1+Enumerable
            </remarks>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackFrame.ColumnNumber">
      <summary>
            The column number of the execution point.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackFrame.Equals(Gemstone.Diagnostics.LogStackFrame)">
      <summary>
            Gets of the two classes are equal
            </summary>
      <param name="other">the class to compare.</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogStackFrame.Equals(Gemstone.Diagnostics.LogStackFrame)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackFrame.FileName">
      <summary>
            The file name if debug symbols were compiled with the assembly
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackFrame.LineNumber">
      <summary>
            The line number of the data.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackFrame.MethodName">
      <summary>
            The name of the method
            </summary>
      <remarks>
            Example: MethodName&lt;TKey,TValue&gt;(String key, String value)
            </remarks>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackFrame.NativeOffset">
      <summary>
            Gets the offset position in the IL Code.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackFrame.Save(System.IO.Stream)">
      <summary>
            Saves this class to a <see cref="T:System.IO.Stream" /></summary>
      <param name="stream">the stream to write to.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackFrame.ToString">
      <summary>
            Makes a string
            </summary>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogStackFrame.ToString</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackFrame.ToString(System.Text.StringBuilder)">
      <summary>
            Appends the details of this stack frame to the provided <see param="stringBuilder" />.
            </summary>
      <param name="stringBuilder">where to append this class information</param>
      <remarks>
            Does not append a <see cref="P:System.Environment.NewLine" /> to the end of the line.
            </remarks>
    </member>
    <member name="T:Gemstone.Diagnostics.LogStackMessages">
      <summary>
            Represents an immutable list of stack messages.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.#ctor(System.Collections.Generic.List{Gemstone.Diagnostics.LogStackMessages})">
      <summary>
            Appends stack messages together.
            </summary>
      <param name="messages">the messages</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.#ctor(System.Collections.Generic.List{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
      <summary>
            Appends stack messages together.
            </summary>
      <param name="messages">the messages</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.#ctor(System.IO.Stream)">
      <summary>
            Loads stack messages from the stream.
            </summary>
      <param name="stream">the stream to load from</param>
      <exception cref="T:System.Data.VersionNotFoundException">if the version is not recognized.</exception>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.#ctor(System.String,System.String)">
      <summary>
            Creates a new stack message from the provided <paramref name="key" /> and <paramref name="value" />.
            </summary>
      <param name="key">The key.</param>
      <param name="value">The value.</param>
      <exception cref="T:System.ArgumentNullException">if key or value are null or whitespace.</exception>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.#ctor(System.String[])">
      <summary>
            Creates a new stack message from the provided list of key/value pairs.
            </summary>
      <param name="keyValuePairs">Key/value pairs, e.g., key1, value1, key2, value2, ..., key(n), value(n).</param>
    </member>
    <member name="P:Gemstone.Diagnostics.LogStackMessages.Count">
      <summary>
            Gets the number of Key/Value pairs.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackMessages.Empty">
      <summary>
            An empty stack message.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.Equals(Gemstone.Diagnostics.LogStackMessages)">
      <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
      <param name="other">An object to compare with this object.</param>
      <returns>
            true if the current object is equal to the <paramref name="other" /> parameter; otherwise, false.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The object to compare with the current object. </param>
      <returns>
            true if the specified object  is equal to the current object; otherwise, false.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.GetHashCode">
      <summary>
            Serves as a hash function for a particular type. 
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="P:Gemstone.Diagnostics.LogStackMessages.Item(System.Int32)">
      <summary>
            Gets the KeyValue for the provided index.
            </summary>
      <param name="index">The Index</param>
    </member>
    <member name="P:Gemstone.Diagnostics.LogStackMessages.Item(System.String)">
      <summary>
            Gets the first match of the provided <see pref="key" /> in this dictionary. Returns
            null if none can be found.
            </summary>
      <param name="key">The Index</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.Save(System.IO.Stream)">
      <summary>
            Saves this instance to the provided stream
            </summary>
      <param name="stream">the stream to save.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.ToString">
      <summary>Returns a string that represents the current object.</summary>
      <returns>A string that represents the current object.</returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.Union(Gemstone.Diagnostics.LogStackMessages)">
      <summary>
            returns the union of this instance and the specified <see pref="stackMessage" />
            New messages replace existing messages.
            </summary>
      <param name="stackMessage">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>stackMessage</parameter>
            <parameter>M:Gemstone.Diagnostics.LogStackMessages.Union(Gemstone.Diagnostics.LogStackMessages)</parameter>
          </include>
        </markup>
      </param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogStackMessages.Union(Gemstone.Diagnostics.LogStackMessages)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.Union(System.String,System.String)">
      <summary>
            returns the union of this instance and the specified key/value. 
            If the key already exists. The new one replaces the existing one.
            </summary>
      <param name="key">a key</param>
      <param name="value">a value</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogStackMessages.Union(System.String,System.String)</parameter>
          </include>
        </markup>
      </returns>
      <exception cref="T:System.ArgumentNullException">if Key or Value are null or whitespace.</exception>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackMessages.Union(System.String[])">
      <summary>
            returns the union of this instance and the specified list of key/value pairs. 
            If the keys already exists. The new one replaces the existing one.
            </summary>
      <param name="keyValuePairs">Key/value pairs, e.g., key1, value1, key2, value2, ..., key(n), value(n).</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.LogStackMessages.Union(System.String[])</parameter>
          </include>
        </markup>
      </returns>
      <exception cref="T:System.ArgumentNullException">if Key or Value are null or whitespace.</exception>
    </member>
    <member name="T:Gemstone.Diagnostics.LogStackTrace">
      <summary>
            Provides stack trace data that can be serialized to a stream.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.#ctor(System.Boolean,System.Int32,System.Int32)">
      <summary>
            Creates a stack trace object
            </summary>
      <param name="lookupFileInfo">gets if the file paths need to be looked up.</param>
      <param name="skipCount">the number of frames to skip.</param>
      <param name="maxStackFrames">the maximum number of frames in the stack trace.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.#ctor(System.IO.Stream)">
      <summary>
            Loads stack trace information from the supplied <see param="stream" /></summary>
      <param name="stream">where to load the stack trace information</param>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackTrace.Empty">
      <summary>
            An empty stack trace.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.Equals(Gemstone.Diagnostics.LogStackTrace)">
      <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
      <param name="other">An object to compare with this object.</param>
      <returns>
            true if the current object is equal to the <paramref name="other" /> parameter; otherwise, false.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The object to compare with the current object. </param>
      <returns>
            true if the specified object  is equal to the current object; otherwise, false.
            </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.LogStackTrace.Frames">
      <summary>
            Gets the stack frame data
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.GetHashCode">
      <summary>
            Serves as a hash function for a particular type. 
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.Save(System.IO.Stream)">
      <summary>
            Saves stack trace information to the supplied <see param="stream" /></summary>
      <param name="stream">where to save the stack trace information</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogStackTrace.ToString">
      <summary>
            Returns a string that represents the current object.
            </summary>
      <returns>
            A string that represents the current object.
            </returns>
    </member>
    <member name="T:Gemstone.Diagnostics.LogSubscriber">
      <summary>
            Subscribes to log events.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.Clear">
      <summary>
            Clears all subscriptions
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.IgnoreAll(Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Ignore all messages of this verbose level.
            </summary>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreAll(Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.IgnoreAssembly(System.Reflection.Assembly,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Ignore all messages of this verbose level.
            </summary>
      <param name="assembly">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>assembly</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreAssembly(System.Reflection.Assembly,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreAssembly(System.Reflection.Assembly,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.IgnoreAssembly(System.String,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Ignore all messages of this verbose level.
            </summary>
      <param name="assemblyExpression">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>assemblyExpression</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreAssembly(System.String,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreAssembly(System.String,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.IgnoreType(System.String,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Ignore all messages of this verbose level.
            </summary>
      <param name="typeExpression">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>typeExpression</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreType(System.String,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreType(System.String,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.IgnoreType(System.Type,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Ignore all messages of this verbose level.
            </summary>
      <param name="type">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>type</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreType(System.Type,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.IgnoreType(System.Type,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="E:Gemstone.Diagnostics.LogSubscriber.NewLogMessage">
      <summary>
            Event handler for the logs that are raised.
            </summary>
      <remarks>
            Any exceptions generated by this callback will be ignored.
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.SubscribeToAll(Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Subscribes to all publishers with the specified verbose level.
            </summary>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.SubscribeToAll(Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.SubscribeToAssembly(System.Reflection.Assembly,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Subscribes to the publisher of the specified assembly with the specified verbose level.
            </summary>
      <param name="assembly">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>assembly</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.SubscribeToAssembly(System.Reflection.Assembly,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.SubscribeToAssembly(System.Reflection.Assembly,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.SubscribeToAssembly(System.String,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Subscribes to the publisher of the specified assembly with the specified verbose level.
            </summary>
      <param name="assemblyExpression">An expression of the name of an assembly. Must include a * or ? to be considered an expression.</param>
      <param name="level">The level</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.SubscribeToType(System.String,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Subscribes to the publisher of the specified type expression with the specified verbose level.
            </summary>
      <param name="typeExpression">An expression of the name of a type. Must include a * or ? to be considered an expression.</param>
      <param name="level">The level</param>
    </member>
    <member name="M:Gemstone.Diagnostics.LogSubscriber.SubscribeToType(System.Type,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Subscribes to the publisher of the specified type with the specified verbose level.
            </summary>
      <param name="type">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>type</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.SubscribeToType(System.Type,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.LogSubscriber.SubscribeToType(System.Type,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="T:Gemstone.Diagnostics.MessageClass">
      <summary>
            Gets the classification of the message. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageClass.Component">
      <summary>
            Messages that come from core components. These messages are for classes that 
            are not working towards a specific framework or application, but can 
            generally be used. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageClass.Framework">
      <summary>
            Messages from higher level software components. A framework is what makes the underlying application work and 
            is the assimilation of components for a specific purpose. Use this if the intent is that this
            code will be shared among many different applications and may be implemented differently in those applications. 
            This is different from Component as it has a more specific and defined purpose.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageClass.Application">
      <summary>
            These messages are for the highest layer of an application. 
            Messages like 'Application X is starting up, shutting down' would go here.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.MessageFlags">
      <summary>
            Various flags that can be attributed to a <see cref="T:Gemstone.Diagnostics.LogMessage" />. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageFlags.None">
      <summary>
            No flags are specified.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageFlags.UsageIssue">
      <summary>
            Indicates that a segment of code is not being used properly or ideally.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageFlags.BugReport">
      <summary>
            Indicates that a issue in the code exists somewhere. This is helpful when the programmer suspects that 
            certain exceptions were not properly handled.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageFlags.PerformanceIssue">
      <summary>
            A flag indicating that a performance related issue has occurred. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageFlags.SecurityMessage">
      <summary>
            Indicates this message has security implications with it. Such as 
            a successful/unsuccessful authentication.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageFlags.SystemHealth">
      <summary>
            These messages in generally should always be logged because they report the state of the current system's health. Normally this 
            will be when the system health is abnormal, for example, something abnormal is happening in the background that is important to 
            note and can assist debugging other components. Messages raised here would include First Chance Exceptions 
            and exceptions in log message routing (such as Message Suppression).
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.MessageLevel">
      <summary>
            The level of importance of a message that is being raised. Increasing from Debug, Info, Warning, Error, Critical.
            None can be specified, but this indicates an importance level cannot be properly identified, and the message
            will be routed based on <see cref="T:Gemstone.Diagnostics.MessageFlags" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevel.NA">
      <summary>
            Indicates a level that cannot be generally subscribed to. In this case,
            the message can only be subscribed to if a <see cref="T:Gemstone.Diagnostics.MessageFlags" /> is subscribed to.
            Example: First Chance AppDomain Exceptions could fall under here because it's impossible
            to assign the risk of this king of exception. Instead the SystemHealth flag will be raised.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevel.Debug">
      <summary>
            Indicates a message that may assist in debugging code and generally
            serves no additional purpose. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevel.Info">
      <summary>
            Indicates that the message is informational. No action should be taken
            for these type of messages.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevel.Warning">
      <summary>
            Indicates that something happened that might adversely affect the system's operation.
            This level can also be used for expected errors. Warnings can be precursors
            to errors in the system. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevel.Error">
      <summary>
            Indicates that something happened that might adversely affect the system's operation.
            This level should be reserved for errors that are not expected to occur. 
            These are non-urgent failures to the system.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevel.Critical">
      <summary>
            Indicates that something happened that will render certain components useless. These
            errors can be recovered from. An example case would be one of those 
            "this should never happen" errors that were likely not handled properly and thus could
            eventually make the system unstable or unusable.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.LoggerExtensions.ToLogLevel(Gemstone.Diagnostics.MessageLevel)">
      <summary>
            Converts a <see cref="T:Gemstone.Diagnostics.MessageLevel" /> to a <see cref="T:Microsoft.Extensions.Logging.LogLevel" />.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.MessageLevelFlags">
      <summary>
            The level of importance of a message that is being raised. Increasing from Debug, Info, Warning, Error, Critical.
            None can be specified, but this indicates an importance level cannot be properly identified, and the message
            will be routed based on <see cref="T:Gemstone.Diagnostics.MessageFlags" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevelFlags.NA">
      <summary>
            Indicates a level that cannot be generally subscribed to. In this case,
            the message can only be subscribed to if a <see cref="T:Gemstone.Diagnostics.MessageFlags" /> is subscribed to.
            Example: First Chance AppDomain Exceptions could fall under here because it's impossible
            to assign the risk of this king of exception. Instead the SystemHealth flag will be raised.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevelFlags.Debug">
      <summary>
            Indicates a message that may assist in debugging code and generally
            serves no additional purpose. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevelFlags.Info">
      <summary>
            Indicates that the message is informational. No action should be taken
            for these type of messages.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevelFlags.Warning">
      <summary>
            Indicates that something happened that might adversely affect the system's operation.
            This level can also be used for expected errors. Warnings can be precursors
            to errors in the system. 
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevelFlags.Error">
      <summary>
            Indicates that something happened that might adversely affect the system's operation.
            This level should be reserved for errors that are not expected to occur. 
            These are non-urgent failures to the system.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageLevelFlags.Critical">
      <summary>
            Indicates that something happened that will render certain components useless. These
            errors can be recovered from. An example case would be one of those 
            "this should never happen" errors that were likely not handled properly and thus could
            eventually make the system unstable or unusable.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.MessageRate">
      <summary>
            Defines a message rate for the message suppression algorithm
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageRate.Default">
      <summary>
            Gets the default message rate. Which is 1 message per second.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.EveryFewDays(System.Double)">
      <summary>
            As a minimum timespan between each message.
            </summary>
      <param name="separation">the number of Days between messages</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.EveryFewDays(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.EveryFewHours(System.Double)">
      <summary>
            As a minimum timespan between each message.
            </summary>
      <param name="separation">the number of Hours between messages</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.EveryFewHours(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.EveryFewMinutes(System.Double)">
      <summary>
            As a minimum timespan between each message.
            </summary>
      <param name="separation">the number of Minutes between messages</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.EveryFewMinutes(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.EveryFewSeconds(System.Double)">
      <summary>
            As a minimum timespan between each message.
            </summary>
      <param name="separation">the number of seconds between messages</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.EveryFewSeconds(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.op_Implicit(Gemstone.Diagnostics.MessageRate)~System.Double">
      <summary>
            Implicitly convert the message rate to a rate per second.
            </summary>
      <param name="rate">the item to convert.</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.op_Implicit(Gemstone.Diagnostics.MessageRate)~System.Double</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.PerDay(System.Double)">
      <summary>
            As messages per day.
            </summary>
      <param name="messagesPerDay">the number of messages to allow per day</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.PerDay(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.PerHour(System.Double)">
      <summary>
            As messages per hour.
            </summary>
      <param name="messagesPerHour">the number of messages to allow per hour</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.PerHour(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.PerMinute(System.Double)">
      <summary>
            As messages per minute.
            </summary>
      <param name="messagesPerMinute">the number of messages to allow per minute</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.PerMinute(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.MessageRate.PerSecond(System.Double)">
      <summary>
            As messages per second.
            </summary>
      <param name="messagesPerSecond">the number of messages to allow per second</param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.MessageRate.PerSecond(System.Double)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="T:Gemstone.Diagnostics.MessageSuppression">
      <summary>
            Indicates the suppression level that this message received
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageSuppression.None">
      <summary>
            This message did not receive a suppression level.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageSuppression.Standard">
      <summary>
            Indicates that the message rate is slightly over normal levels. Only subscribers specifically
            asking for this suppression level will receive this message.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageSuppression.Heavy">
      <summary>
            Indicates that the message rate is heavily over normal levels. Only subscribers specifically
            asking for this suppression level will receive this message.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.MessageSuppression.Severe">
      <summary>
            Indicates that the message rate is severely over normal levels. Only subscribers specifically
            asking for this suppression level will receive this message.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.NewLogMessageEventHandler">
      <summary>
            A log message delegate
            </summary>
      <param name="logMessage">the log message</param>
    </member>
    <member name="T:Gemstone.Diagnostics.PerformanceCounter">
      <summary>
             Represents an extension of the basic <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> providing additional statistical logic.
             </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.#ctor(System.String,System.String,System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> class.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.#ctor(System.String,System.String,System.String,System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> class.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
      <param name="aliasName">The alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.#ctor(System.String,System.String,System.String,System.String,System.String)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> class.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
      <param name="aliasName">The alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="valueUnit">The measurement unit for the statistical values of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.#ctor(System.String,System.String,System.String,System.String,System.String,System.Single,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> class.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
      <param name="aliasName">The alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="valueUnit">The measurement unit for the statistical values of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="valueDivisor">The divisor to be applied to the statistical values of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="readOnly">Flag that determines if this counter is read-only.</param>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.AliasName">
      <summary>
            Gets or sets an alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.AverageValue">
      <summary>
            Gets the average value from the samples of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object that this <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> objects wraps.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.PerformanceCounter.DefaultSamplingWindow">
      <summary>
            Default number of samples over which statistical values are to be calculated.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.PerformanceCounter.DefaultValueDivisor">
      <summary>
            Default divisor to be applied to the statistical value.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.PerformanceCounter.DefaultValueUnit">
      <summary>
            Default measurement unit of the statistical values.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.Dispose">
      <summary>
            Releases all the resources used by the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.Dispose(System.Boolean)">
      <summary>
            Releases the unmanaged resources used by the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object and optionally 
            releases the managed resources.
            </summary>
      <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.Finalize">
      <summary>
            Releases the unmanaged resources before the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object is reclaimed by <see cref="T:System.GC" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.LastValue">
      <summary>
            Gets the last sample value from the samples of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.LifetimeAverageValue">
      <summary>
            Gets the average sample value over the entire lifetime of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.LifetimeMaximumValue">
      <summary>
            Gets the maximum sample value over the entire lifetime of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.LifetimeSampleCount">
      <summary>
            Gets the total values sampled over the entire lifetime of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.MaximumValue">
      <summary>
            Gets the maximum sample value from the samples of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.MinimumValue">
      <summary>
            Gets the minimum sample value from the samples of the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.Reset">
      <summary>
            Resets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object to its initial state.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceCounter.Sample">
      <summary>
            Obtains a sample value from the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.SampleAdjuster">
      <summary>
            Gets or sets an optional custom sample adjustment function. Can be used to apply linear adjustments to sampled values.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.SampleFilter">
      <summary>
            Gets or sets an optional custom sample filter function. Can be used to skip sampled values that are unreasonable.
            </summary>
      <remarks>
            Return <c>true</c> if sample should be filtered; otherwise, <c>false</c>.
            </remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.Samples">
      <summary>
            Gets a list of sampled values from the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.BaseCounter" /></summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.SamplingWindow">
      <summary>
            Gets or sets the number of samples to use to determine the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.LastValue" />, 
            <see cref="P:Gemstone.Diagnostics.PerformanceCounter.MinimumValue" />, <see cref="P:Gemstone.Diagnostics.PerformanceCounter.MaximumValue" /> and <see cref="P:Gemstone.Diagnostics.PerformanceCounter.AverageValue" />.
            </summary>
      <exception cref="T:System.ArgumentOutOfRangeException">The value being assigned is not greater than 0.</exception>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.ValueDivisor">
      <summary>
            Gets or sets the divisor to be applied to the <see cref="P:Gemstone.Diagnostics.PerformanceCounter.LastValue" />, <see cref="P:Gemstone.Diagnostics.PerformanceCounter.MinimumValue" />, 
            <see cref="P:Gemstone.Diagnostics.PerformanceCounter.MaximumValue" /> and <see cref="P:Gemstone.Diagnostics.PerformanceCounter.AverageValue" />.
            </summary>
      <exception cref="T:System.ArgumentOutOfRangeException">The value being assigned is not greater than 0.</exception>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceCounter.ValueUnit">
      <summary>
            Gets or sets the measurement unit of <see cref="P:Gemstone.Diagnostics.PerformanceCounter.LastValue" />, <see cref="P:Gemstone.Diagnostics.PerformanceCounter.MinimumValue" />, 
            <see cref="P:Gemstone.Diagnostics.PerformanceCounter.MaximumValue" /> and <see cref="P:Gemstone.Diagnostics.PerformanceCounter.AverageValue" /></summary>
      <exception cref="T:System.ArgumentNullException">The value being assigned is a null or empty string.</exception>
    </member>
    <member name="T:Gemstone.Diagnostics.PerformanceMonitor">
      <summary>
             Represents a process performance monitor that operates similar to the Windows Performance Monitor utility
             that can be used to monitor system performance.
             </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitor.#ctor">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> class.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitor.#ctor(System.Double,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> class.
            </summary>
      <param name="samplingInterval">Interval, in milliseconds, at which the <see cref="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters" /> are to be sampled.</param>
      <param name="addDefaultCounters">Set to <c>true</c> to add default counters; otherwise <c>false</c>.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitor.#ctor(System.String,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> class.
            </summary>
      <param name="processName">Name of the <see cref="T:System.Diagnostics.Process" /> whose performance is to be monitored.</param>
      <param name="addDefaultCounters">Set to <c>true</c> to add default counters; otherwise <c>false</c>.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitor.#ctor(System.String,System.Double,System.Boolean)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> class.
            </summary>
      <param name="processName">Name of the <see cref="T:System.Diagnostics.Process" /> whose performance is to be monitored.</param>
      <param name="samplingInterval">Interval, in milliseconds, at which the <see cref="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters" /> are to be sampled.</param>
      <param name="addDefaultCounters">Set to <c>true</c> to add default counters; otherwise <c>false</c>.</param>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.CPUUsage">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the processor utilization of the monitored process.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitor.Finalize">
      <summary>
            Releases the unmanaged resources before the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> object is reclaimed by <see cref="T:System.GC" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.HandleCount">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the total number of handles currently open by 
            the monitored process.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.IOActivity">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the rate at which the monitored process is 
            issuing read and write I/O operations.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.IOUsage">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the rate at which the monitored process is 
            issuing bytes to I/O operations that do not involve data such as control operations.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.IPDataReceiveRate">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the IP based datagrams received / second of the system.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.IPDataSendRate">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the IP based datagrams sent / second of the system.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.MemoryUsage">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the memory utilization of the monitored process.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.Name">
      <summary>
            Gets the friendly name of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> object.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.ProcessName">
      <summary>
            Gets or sets the name of the <see cref="T:System.Diagnostics.Process" /> to be monitored.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitor.SampleCustomCounters">
      <summary>
            Handle sampling of custom counters.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.ThreadCount">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the number of threads currently active in the 
            monitored process.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitor.ThreadingContentionRate">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the .NET threading contention rate / second of the process.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="F:Gemstone.Diagnostics.PerformanceMonitor.ThreadPoolCountersCategoryName">
      <summary>
            Name of the custom thread pool counters category.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.PerformanceMonitorBase">
      <summary>
            Represents a base class for performance monitors, e.g., the process level <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" />
            and the system level <see cref="T:Gemstone.Diagnostics.SystemPerformanceMonitor" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.#ctor(System.Double)">
      <summary>
            Initializes a new instance of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitorBase" /> class.
            </summary>
      <param name="samplingInterval">Interval, in milliseconds, at which the <see cref="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters" /> are to be sampled.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.AddCounter(Gemstone.Diagnostics.PerformanceCounter)">
      <summary>
            Adds a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be monitored.
            </summary>
      <param name="counter">The <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object to be monitored.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.AddCounter(System.String,System.String,System.String)">
      <summary>
            Adds a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be monitored.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.AddCounter(System.String,System.String,System.String,System.String)">
      <summary>
            Adds a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be monitored.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
      <param name="aliasName">The alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.AddCounter(System.String,System.String,System.String,System.String,System.String)">
      <summary>
            Adds a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be monitored.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
      <param name="aliasName">The alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="valueUnit">The measurement unit for the statistical values of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.AddCounter(System.String,System.String,System.String,System.String,System.String,System.Single,System.Boolean,System.Func{System.Single,System.Single},System.Func{System.Single,System.Boolean})">
      <summary>
            Adds a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be monitored.
            </summary>
      <param name="categoryName">The name of the performance counter category (performance object) with which this performance counter is associated.</param>
      <param name="counterName">The name of the performance counter.</param>
      <param name="instanceName">The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.</param>
      <param name="aliasName">The alias name for the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="valueUnit">The measurement unit for the statistical values of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="valueDivisor">The divisor to be applied to the statistical values of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object.</param>
      <param name="readOnly">Flag that determines if this counter is read-only.</param>
      <param name="sampleAdjuster">Defines a custom sample adjustment function for the counter.</param>
      <param name="sampleFilter">Defines a custom sample filter function for the counter.</param>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters">
      <summary>
            Gets a read-only list of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> objects monitored by the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> object.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.PerformanceMonitorBase.DefaultSamplingInterval">
      <summary>
            Default interval for sampling the <see cref="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.Dispose">
      <summary>
            Releases all the resources used by the <see cref="T:Gemstone.Diagnostics.PerformanceMonitorBase" /> object.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.Dispose(System.Boolean)">
      <summary>
            Releases the unmanaged resources used by the <see cref="T:Gemstone.Diagnostics.PerformanceMonitorBase" /> object and optionally releases the managed resources.
            </summary>
      <param name="disposing">true to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.Finalize">
      <summary>
            Releases the unmanaged resources before the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> object is reclaimed by <see cref="T:System.GC" />.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.FindCounter(System.String)">
      <summary>
            Returns a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object matching the specified counter name.
            </summary>
      <param name="counterName">Name of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be retrieved.</param>
      <returns>A <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object if a match is found; otherwise null.</returns>
      <remarks>
            First <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> with matching name is returned. If same name exists within
            multiple monitored categories, use <see cref="M:Gemstone.Diagnostics.PerformanceMonitorBase.FindCounter(System.String,System.String)" /> overload instead.
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.FindCounter(System.String,System.String)">
      <summary>
            Returns a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object matching the specified counter name.
            </summary>
      <param name="categoryName">Category of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be retrieved.</param>
      <param name="counterName">Name of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be retrieved.</param>
      <returns>A <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object if a match is found; otherwise null.</returns>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.FindCounters(System.String)">
      <summary>
            Returns <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> array matching the specified counter name.
            </summary>
      <param name="counterName">Name of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be retrieved.</param>
      <returns>A <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> array of found matches, if any.</returns>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.FindCounters(System.String,System.String)">
      <summary>
            Returns <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> array matching the specified counter name.
            </summary>
      <param name="categoryName">Category of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be retrieved.</param>
      <param name="counterName">Name of the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> to be retrieved.</param>
      <returns>A <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> array of found matches, if any.</returns>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitorBase.LifetimeStatus">
      <summary>
            Gets the lifetime status statistics of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitor" /> object.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitorBase.Name">
      <summary>
            Gets the friendly name of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitorBase" /> object.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.RemoveCounter(Gemstone.Diagnostics.PerformanceCounter)">
      <summary>
            Removes a <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> being monitored.
            </summary>
      <param name="counter">The <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> object to be unmonitored.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.SampleCounters">
      <summary>
            Sample all defined counters.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PerformanceMonitorBase.SampleCustomCounters">
      <summary>
            Derived class should override this method to sample any custom counters.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitorBase.SamplingInterval">
      <summary>
            Gets or sets the interval, in milliseconds, at which the <see cref="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters" /> are to be sampled.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.PerformanceMonitorBase.Status">
      <summary>
            Gets the current status of the <see cref="T:Gemstone.Diagnostics.PerformanceMonitorBase" /> object.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.ProcessUtilizationCalculator">
      <summary>
            Represents a utilization calculator for a related <see cref="T:System.Diagnostics.Process" /> set.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.ProcessUtilizationCalculator.#ctor">
      <summary>
            Creates a new <see cref="T:Gemstone.Diagnostics.ProcessUtilizationCalculator" />.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.ProcessUtilizationCalculator.AssociatedProcesses">
      <summary>
            Gets associated processes for this <see cref="T:Gemstone.Diagnostics.ProcessUtilizationCalculator" />.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.ProcessUtilizationCalculator.DefaultUpdateInterval">
      <summary>
            Default value for the <see cref="P:Gemstone.Diagnostics.ProcessUtilizationCalculator.UpdateInterval" /> property.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.ProcessUtilizationCalculator.Dispose">
      <summary>
            Releases all the resources used by the <see cref="T:Gemstone.Diagnostics.ProcessUtilizationCalculator" /> object.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.ProcessUtilizationCalculator.Initialize(System.Collections.Generic.IEnumerable{System.Diagnostics.Process})">
      <summary>
            Starts calculating the total processor utilization of the specified <paramref name="processes" />.
            </summary>
      <param name="processes">The <see cref="T:System.Diagnostics.Process" /> set, e.g., parent and child processes, to monitor for total processor utilization.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.ProcessUtilizationCalculator.Initialize(System.Diagnostics.Process[])">
      <summary>
            Starts calculating the total processor utilization of the specified <paramref name="processes" />.
            </summary>
      <param name="processes">The <see cref="T:System.Diagnostics.Process" /> set, e.g., parent and child processes, to monitor for total processor utilization.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.ProcessUtilizationCalculator.Refresh">
      <summary>
            Refreshes the processor utilization of the associated <see cref="T:System.Diagnostics.Process" /> set.
            </summary>
    </member>
    <member name="E:Gemstone.Diagnostics.ProcessUtilizationCalculator.StatusMessage">
      <summary>
            Provides status messages to consumer.
            </summary>
      <remarks>
        <see cref="F:Gemstone.EventArgs`1.Argument" /> is new status message.
            </remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.ProcessUtilizationCalculator.UpdateInterval">
      <summary>
            Gets or sets the interval, in milliseconds, over which <see cref="P:Gemstone.Diagnostics.ProcessUtilizationCalculator.Utilization" /> will be calculated.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.ProcessUtilizationCalculator.Utilization">
      <summary>
            Gets the current processor utilization, percent between 0.0 and 1.0, of the associated <see cref="T:System.Diagnostics.Process" /> set.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.PublisherTypeDefinition">
      <summary>
            Contains all of the metadata associated with a <see cref="T:System.Type" /> that will 
            be serialized to the disk.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.#ctor(System.IO.Stream)">
      <summary>
            Loads a log messages from the supplied stream
            </summary>
      <param name="stream">the stream to load the log message from.</param>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.#ctor(System.Type)">
      <summary>
            Creates a <see cref="T:Gemstone.Diagnostics.PublisherTypeDefinition" /> by looking it up from <see pref="type" />.
            </summary>
      <param name="type"></param>
    </member>
    <member name="F:Gemstone.Diagnostics.PublisherTypeDefinition.AssemblyName">
      <summary>
            The <see cref="T:System.Reflection.Assembly" /> associated with <see cref="T:Gemstone.Diagnostics.LogPublisher" /> that generated the message.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.PublisherTypeDefinition.AssemblyVersion">
      <summary>
            Gets the version number of the <see cref="T:System.Reflection.Assembly" /> that this <see cref="T:Gemstone.Diagnostics.LogPublisher" />'s type 
            belongs to.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.Equals(Gemstone.Diagnostics.PublisherTypeDefinition)">
      <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
      <param name="obj">An object to compare with this object.</param>
      <returns>
            true if the current object is equal to the <paramref name="obj" /> parameter; otherwise, false.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.Equals(System.Object)">
      <summary>
            Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
            </summary>
      <param name="obj">The object to compare with the current object. </param>
      <returns>
            true if the specified object  is equal to the current object; otherwise, false.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.GetHashCode">
      <summary>
            Serves as a hash function for a particular type. 
            </summary>
      <returns>
            A hash code for the current <see cref="T:System.Object" />.
            </returns>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.Save(System.IO.Stream)">
      <summary>
            Writes the log data to the stream
            </summary>
      <param name="stream"></param>
    </member>
    <member name="M:Gemstone.Diagnostics.PublisherTypeDefinition.ToString">
      <summary>
            Returns a string that represents the current object.
            </summary>
      <returns>
            A string that represents the current object.
            </returns>
    </member>
    <member name="F:Gemstone.Diagnostics.PublisherTypeDefinition.TypeName">
      <summary>
            The <see cref="T:System.Type" /> associated with <see cref="T:Gemstone.Diagnostics.LogPublisher" /> that generated the message.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.SystemPerformanceMonitor">
      <summary>
            Represents a system performance monitor for system level performance statistics, e.g.,
            CPU utilization and available memory.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.SystemPerformanceMonitor.#ctor(System.Double)">
      <summary>
            Creates a new <see cref="T:Gemstone.Diagnostics.SystemPerformanceMonitor" />.
            </summary>
      <param name="samplingInterval">
            Interval, in milliseconds, at which the <see cref="P:Gemstone.Diagnostics.PerformanceMonitorBase.Counters" />
            are to be sampled.
            </param>
      <remarks>
            It is recommended to use the <see cref="P:Gemstone.Diagnostics.SystemPerformanceMonitor.Default" /> instance of this class
            instead of creating a new instance where applicable.
            </remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.SystemPerformanceMonitor.AvailableMemory">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the remaining available memory of the system in GB.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.SystemPerformanceMonitor.CPUUsage">
      <summary>
            Gets the <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> that monitors the processor utilization of the system.
            </summary>
      <remarks>This <see cref="T:Gemstone.Diagnostics.PerformanceCounter" /> is added by default.</remarks>
    </member>
    <member name="P:Gemstone.Diagnostics.SystemPerformanceMonitor.Default">
      <summary>
            Gets default reference of <see cref="T:Gemstone.Diagnostics.SystemPerformanceMonitor" />.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.ThreadPoolTrace">
      <summary>
            Executes a trace on the <see cref="T:System.Threading.ThreadPool" /> for all callbacks currently queued.
            This will not include work items that have a time delayed callback.
            </summary>
      <remarks>
            This class heavily relies on reflection to get the ThreadPool queue.
            Therefore it is very unlikely to work in MONO and can break 
            if Microsoft changes any of the member names or how the ThreadPool 
            works.
            
            In this case <see cref="P:Gemstone.Diagnostics.ThreadPoolTrace.WorksInThisRuntime" /> will be set to false
            and <see cref="M:Gemstone.Diagnostics.ThreadPoolTrace.GetTrace(System.Text.StringBuilder)" /> will return "Not Supported"
            
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.ThreadPoolTrace.GetTrace(System.Text.StringBuilder)">
      <summary>
            Traces all queued items on the ThreadPool.
            </summary>
      <param name="sb"></param>
    </member>
    <member name="P:Gemstone.Diagnostics.ThreadPoolTrace.WorksInThisRuntime">
      <summary>
            Indicates that this trace works in the runtime version of .NET.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.TimerTrace">
      <summary>
            Executes a trace on the <see cref="T:System.Threading.Timer" /> for all queued timers.
            </summary>
      <remarks>
            This class heavily relies on reflection to get the Timer queue.
            Therefore it is very unlikely to work in MONO and can break 
            if Microsoft changes any of the member names or how the Timer 
            works.
            
            In this case <see cref="P:Gemstone.Diagnostics.TimerTrace.WorksInThisRuntime" /> will be set to false
            and <see cref="M:Gemstone.Diagnostics.TimerTrace.GetTrace(System.Text.StringBuilder)" /> will return "Not Supported"
            
            </remarks>
    </member>
    <member name="M:Gemstone.Diagnostics.TimerTrace.GetTrace(System.Text.StringBuilder)">
      <summary>
            Gets all of the callbacks for all timers.
            </summary>
      <param name="sb"></param>
    </member>
    <member name="P:Gemstone.Diagnostics.TimerTrace.WorksInThisRuntime">
      <summary>
            Indicates that this trace works in the runtime version of .NET.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.VerboseLevel">
      <summary>
            General Verbose Levels exposed to the user for application logging.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.VerboseLevel.None">
      <summary>
            None
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.VerboseLevel.Low">
      <summary>
            Component=Error, Framework=Error, Application=Warning
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.VerboseLevel.Medium">
      <summary>
            Component=Warning, Framework=Warning, Application=Info
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.VerboseLevel.High">
      <summary>
            Component=Info, Framework=Info, Application=Debug
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.VerboseLevel.Ultra">
      <summary>
            Component=Debug, Framework=Debug, Application=Debug
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.VerboseLevel.All">
      <summary>
            Component=Debug, Framework=Debug, Application=Debug, Include Suppressed Logs.
            </summary>
    </member>
    <member name="T:Gemstone.Diagnostics.Utilities.LogFileCompactor">
      <summary>
            A method to read all of the logs in a single file.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogFileCompactor.Compact(System.Collections.Generic.ICollection{System.String},System.String)">
      <summary>
            Reads all log messages from the supplied file.
            </summary>
      <param name="inputFileNames">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>inputFileNames</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileCompactor.Compact(System.Collections.Generic.ICollection{System.String},System.String)</parameter>
          </include>
        </markup>
      </param>
      <param name="outputFileName">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>outputFileName</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileCompactor.Compact(System.Collections.Generic.ICollection{System.String},System.String)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="T:Gemstone.Diagnostics.Utilities.LogFileReader">
      <summary>
            A method to read all of the logs in a single file.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogFileReader.Read(System.String)">
      <summary>
            Reads all log messages from the supplied file.
            </summary>
      <param name="logFileName">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>logFileName</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileReader.Read(System.String)</parameter>
          </include>
        </markup>
      </param>
      <returns>
        <markup>
          <include item="SMCMissingTag">
            <parameter>returns</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileReader.Read(System.String)</parameter>
          </include>
        </markup>
      </returns>
    </member>
    <member name="T:Gemstone.Diagnostics.Utilities.LogFileWriter">
      <summary>
            A log subscriber that will log messages to a file.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogFileWriter.#ctor(System.String)">
      <summary>
            Creates a LogFileWriter that initially queues message
            </summary>
      <param name="logFileName">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>logFileName</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileWriter.#ctor(System.String)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogFileWriter.Dispose">
      <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
    </member>
    <member name="F:Gemstone.Diagnostics.Utilities.LogFileWriter.FileName">
      <summary>
            The file name
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogFileWriter.Flush">
      <summary>
            Flushes the stream to the disk.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.Utilities.LogFileWriter.LogCount">
      <summary>
            The number of logs that have been written to this file.
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.Utilities.LogFileWriter.LogSize">
      <summary>
            The current size of the log file.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogFileWriter.Write(Gemstone.Diagnostics.LogMessage,System.Boolean)">
      <summary>
            Writes the specified log to the file
            </summary>
      <param name="log">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>log</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileWriter.Write(Gemstone.Diagnostics.LogMessage,System.Boolean)</parameter>
          </include>
        </markup>
      </param>
      <param name="autoFlush">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>autoFlush</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogFileWriter.Write(Gemstone.Diagnostics.LogMessage,System.Boolean)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="T:Gemstone.Diagnostics.Utilities.LogSubscriptionConsole">
      <summary>
            Creates a <see cref="T:Gemstone.Diagnostics.LogSubscriber" /> that will write messages to the <see cref="N:Gemstone.Console" /></summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogSubscriptionConsole.#ctor">
      <summary>
            Creates a LogFileWriter that initially queues message
            </summary>
    </member>
    <member name="P:Gemstone.Diagnostics.Utilities.LogSubscriptionConsole.Verbose">
      <summary>
            Gets or sets verbosity level for this <see cref="T:Gemstone.Diagnostics.Utilities.LogSubscriptionConsole" />.
            To disable the console from receiving messages, set to <see cref="F:Gemstone.Diagnostics.VerboseLevel.None" /></summary>
    </member>
    <member name="T:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter">
      <summary>
            A log subscription that will write messages to a file
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.#ctor(System.Int32)">
      <summary>
            Creates a LogFileWriter that initially queues message
            </summary>
      <param name="messageLimit">the number of messages to maintain</param>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="E:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.NewFileComplete">
      <summary>
            When a new file has been completed.
            </summary>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetLoggingFileCount(System.Int32)">
      <summary>
            Sets the maximum number of log files before a new one will delete the oldest one.
            </summary>
      <param name="maxFileCount">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>maxFileCount</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetLoggingFileCount(System.Int32)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetPath(System.String)">
      <summary>
            Sets the path of the log files.
            </summary>
      <param name="logDirectory">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>logDirectory</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetPath(System.String)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetPath(System.String,Gemstone.Diagnostics.VerboseLevel)">
      <summary>
            Sets log file writer path and optionally its verbosity level.
            </summary>
      <param name="logDirectory">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>logDirectory</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetPath(System.String,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
      <param name="level">
        <markup>
          <include item="SMCMissingParamTag">
            <parameter>param</parameter>
            <parameter>level</parameter>
            <parameter>M:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.SetPath(System.String,Gemstone.Diagnostics.VerboseLevel)</parameter>
          </include>
        </markup>
      </param>
    </member>
    <member name="P:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter.Verbose">
      <summary>
            Gets or sets verbosity level for this <see cref="T:Gemstone.Diagnostics.Utilities.LogSubscriptionFileWriter" />.
            </summary>
    </member>
  </members>
</doc>