using System;
using System.IO;
using Volpe.Cafe.IO.CSV;

namespace Volpe.Cafe.Reporting
{
    /// <summary>
    /// Provides the class that supports reading of the various modeling report files.
    /// </summary>
    [Serializable]
    public class ReportFileReader : CsvReader
    {
        /// <summary>
        /// Initializes a new instance of the <see cref="ReportFileReader"/> class for the specified file.
        /// </summary>
        /// <param name="path">The complete file path to read.</param>
        /// <inheritdoc cref="StreamReader(string)" path="/exception"/>
        public ReportFileReader(string path) : base(path)
        {
            base.SkipBlankLines = false;
        }

        /// <summary>
        /// Gets or sets whether to skip blank lines when reading the report file. The default value is <c>false</c>.
        /// </summary>
        /// <inheritdoc cref="IO.DSV.DsvReader.SkipBlankLines" path="/remarks"/>
        public new bool SkipBlankLines {
            get => base.SkipBlankLines;
            set => base.SkipBlankLines = value;
        }

    }
}
