#region << Using Directives >>
using System;
#endregion

namespace Volpe.Cafe.EspressoUI.ModelCharts
{
    /// <summary>
    /// Defines compliance metrics for which to calculate the modeling statistics when populating a <see cref="ComplianceStatistics"/> object.
    /// </summary>
    [Serializable]
    [Flags]
    enum ComplianceMetrics
    {
        /// <summary>Specifies that model statistics for fuel economy metrics should be calculated.
        ///   This includes the CAFE standard, CAFE rating (compliance and 2-cycle), and CAFE shortfall.</summary>
        CAFEValues = 1,
        /// <summary>Specifies that model statistics for CO-2 metrics should be calculated.
        ///     This includes the CO-2 standard, CO-2 rating, and CO-2 shortfall.</summary>
        CO2Values = 2,
        /// <summary>Specifies that model statistics for compliance related costs should be calculated.
        ///     This includes the technology costs, fines (if any), etc., specified in millions of dollars.</summary>
        ComplianceCosts = 4,
        /// <summary>Specifies that model statistics for effects related costs and benefits should be calculated.
        ///     This includes the fuel savings, CO-2 savings, etc., specified in millions of dollars.</summary>
        EffectsCosts = 8,

        /// <summary>Specifies that model statistics for all compliance metrics should be calculated.</summary>
        All = CAFEValues | CO2Values | ComplianceCosts | EffectsCosts
    }
}
