TeamCity.MSBuild.Logger/ILoggerContext.cs (35 lines of code) (raw):

namespace TeamCity.MSBuild.Logger { using System; using System.Collections.Generic; using JetBrains.Annotations; using Microsoft.Build.Framework; internal interface ILoggerContext { DateTime BuildStarted { get; set; } int CurrentIndentLevel { get; } IDictionary<BuildEventContext, IList<BuildMessageEventArgs>> DeferredMessages { [NotNull] get; } int ErrorCount { get; set; } IList<BuildErrorEventArgs> ErrorList { [CanBeNull] get; } bool HasBuildStarted { get; set; } [CanBeNull] BuildEventContext LastDisplayedBuildEventContext { get; set; } ProjectFullKey LastProjectFullKey { get; set; } int NumberOfProcessors { get; } Parameters Parameters { [NotNull] get; } int PrefixWidth { get; set; } bool SkipProjectStartedText { get; } IDictionary<string, IPerformanceCounter> ProjectPerformanceCounters { [NotNull] get; } IDictionary<string, IPerformanceCounter> TargetPerformanceCounters { [NotNull] get; } IDictionary<string, IPerformanceCounter> TaskPerformanceCounters { [NotNull] get; } LoggerVerbosity Verbosity { get; } int WarningCount { get; set; } IList<BuildWarningEventArgs> WarningList { [CanBeNull] get; } [NotNull] ProjectFullKey GetFullProjectKey([CanBeNull] BuildEventContext e); void Initialize( int numberOfProcessors, bool skipProjectStartedText, [NotNull] Parameters parameters); bool IsVerbosityAtLeast(LoggerVerbosity checkVerbosity); void ResetConsoleLoggerState(); } }