public void Load()
        {
            if (MyAPIGateway.Utilities.FileExistsInLocalStorage(_settingsFileName, typeof(ScanSettings)))
            {
                string xmlText;
                using (TextReader reader = MyAPIGateway.Utilities.ReadFileInLocalStorage(_settingsFileName, typeof(ScanSettings)))
                {
                    xmlText = reader.ReadToEnd();
                    reader.Close();
                }
                if (string.IsNullOrWhiteSpace(xmlText))
                {
                    return;
                }

                try
                {
                    Config = MyAPIGateway.Utilities.SerializeFromXML <ScanSettingsStruct>(xmlText);
                    if (Config.IgnoreEntityId == null)
                    {
                        Config.IgnoreEntityId = new List <long>();
                    }
                    if (Config.TrackEntites == null)
                    {
                        Config.TrackEntites = new List <TrackEntity>();
                    }
                }
                catch (Exception ex)
                {
                    VRage.Utils.MyLog.Default.WriteLine($"#### ShipScan LoadData from file '{_settingsFileName}' failed: {ex}");
                }
            }
        }
 public ScanSettings()
 {
     Config = new ScanSettingsStruct()
     {
         //init default values
         IgnoreJunk       = false,
         IgnoreTiny       = false,
         IgnoreSmall      = false,
         IgnoreLarge      = false,
         IgnoreHuge       = false,
         IgnoreEnormous   = false,
         IgnoreRidiculous = false,
         IgnoreEntityId   = new List <long>(),
         TrackEntites     = new List <TrackEntity>()
     };
     _settingsFileName = $"ScanSettings_{Path.GetFileNameWithoutExtension(MyAPIGateway.Session.CurrentPath)}.cfg";
 }