/// /// Copyright (c) 2013-2016 Sensus Metering Systems /// using System; using System.Collections.Generic; using System.IO; using System.Xml.Serialization; using TBF.BenchControl.Generic; namespace TBF.BenchControl.Output.FileWriters.Basic { public enum YearFolders { None, TwoDigit, FourDigit, Count } public enum MonthFolders { None, Digit, TwoDigit, Name, Count } public enum DayFolders { None, Digit, TwoDigit, Count } public enum Separator { None, Space, Tabulator, Comma, Semicolon, Count } public class WriterCfg : ComponentCfgBase, Generic.IComponentCfg { public IComponentCfgCtrl GetControl() { return new WriterCfgCtrl(); } public string DestinationPath; /// Directory path into which the results will be saved public string DestinationPath2; /// Directory path into which the 2nd copy of results will be saved public YearFolders YearFolders; public MonthFolders MonthFolders; public DayFolders DayFolders; public string FileNameFormat; public Separator Separator; public bool SaveGoodOnly; public string[] SelectedItems; /// Private parameterless constructor invoked by all other (public) constructors WriterCfg() { Name = "FileWriter"; ParentName = string.Empty; DestinationPath = Program.HomeDir + "Results\\"; DestinationPath2 = string.Empty; YearFolders = YearFolders.FourDigit; MonthFolders = MonthFolders.Digit; DayFolders = DayFolders.Digit; FileNameFormat = "{0:yyyyMMdd}"; Separator = Separator.None; SaveGoodOnly = false; } public WriterCfg(IComponentFactory factory) : this() { this.Factory = factory; } public string ToString(int i) { return string.Format("Name={0}, Path={1}, Y={2}, M={3}, D={4}, FNameFmt={5}, Separator={6}, GoodOnly={7}", Name, DestinationPath, YearFolders, MonthFolders, DayFolders, FileNameFormat, Separator, SaveGoodOnly); } } }