MSBuildCodeMetrics.Core NamespaceMSBuildCodeMetrics
This namespace is the core MSBuildCodeMetrics classes. All other assemblies depends on this one. Most of the classes are abstract and don't provide any concrete implementation for the metrics.
Classes

  ClassDescription
Public classCodeMetricsRunner
This class is responsible for running all metrics computations.
Public classComputeMetricsParameter
This class represents the input parameters for each metric computation. Since each metric can have it's own files, this is the way the input parameters are passed in the moment of the metrics computation.
Public classComputeMetricsParameterList
This class is just a builder for List<ComputeMetricsParameter>. Syntax sugar.
Public classFileStreamFactory
This class is a File Stream implementation for FileStreamFactory. It is the default implementation for the providers.
Public classListExtensions
This is a builder for generic List<T>. Syntax sugar.
Public classMetric
This class is used as parameter in the reports. Each Metric has the input information needed to generate the reports.
Public classMetricList
This class is just a builder for List<Metric>. Syntax sugar.
Public classProviderMeasure
This class represents one measure generated by one code metrics provider.
Public classRangeList
This class is just a Builder for List<int>. Syntax sugar.
Public classRunnerMeasure
This class represent one measure from the Runner perspective. It also includes the provider for each metric.
Interfaces

  InterfaceDescription
Public interfaceICodeMetricsProvider
This is the most important interface for MSBuildCodeMetrics. Each new provider must implement this interface. There's also the ISingleFileCodeMetricsProvider and IMultiFileCodeMetricsProvider that extends this interface behavior.
Public interfaceIFileStreamFactory
This interface is used for dependency inversion. It helps the testability of the task.
Public interfaceILoggableCodeMetricsProvider
This interface must be implemented for each provider that needs to log its activity.
Public interfaceILogger
This interface is used to allow providers to log its activity.
Public interfaceIMetadataHandler
This interface should be implemented for providers that needs metadata.
Public interfaceIMultiFileCodeMetricsProvider
This interface should be implemented for providers that needs to compute metrics for a set o files.
Public interfaceISingleFileCodeMetricsProvider
This interface must be implemented for providers that need to compute metric for each file perspective.