/// <summary>
 /// Creates an instance of MilitaryWriter using the given GCSV headers.
 /// </summary>
 /// <param name="headers">The GCSVHeaders to be used</param>
 public MilitaryWriter(Dictionary <string, IGCSVHeader> headers)
 {
     m_headers = headers;
     m_mode    = MilitaryWriterMode.Default;
 }
 /// <summary>
 /// Creates an instance of MilitaryWriter using the given GCSV headers and mode.
 /// </summary>
 /// <param name="headers">The GCSVHeaders to be used</param>
 public MilitaryWriter(Dictionary <string, IGCSVHeader> headers, MilitaryWriterMode mode, Action <MilitaryGroup> hook = null)
 {
     m_headers = headers;
     m_mode    = mode;
     m_hook    = hook;
 }
 /// <summary>
 /// Creates an instance of the MilitaryXmlWriter class using the specified file and GCSV headers.
 /// </summary>
 /// <param name="path">The filename to write to.</param>
 /// <param name="headers">The GCSV headers to use for writing data elements</param>
 public MilitaryXmlWriter(string path, Dictionary <string, IGCSVHeader> headers, MilitaryWriterMode mode) : base(path, Encoding.UTF8)
 {
     m_headers     = headers;
     m_usedHeaders = new Dictionary <string, IGCSVHeader>();
     Mode          = mode;
 }