public void Add(DbgEntityConfig aConfiguration) { lock ( iConfigurations ) { iConfigurations.Add(aConfiguration); } }
public DbgEntityConfig ConfigById(DbgEntityConfigIdentifier aId) { DbgEntityConfig ret = null; // lock (iConfigurations) { foreach (DbgEntityConfig cfg in iConfigurations) { if (cfg.Contains(aId)) { ret = cfg; break; } } } // return(ret); }
public void SwitchConfigurationSynchronously(DbgEntityConfigIdentifier aId) { // Try to find a config that matches the specified value DbgEntityConfig config = ConfigById(aId); if (config == null) { // Unload any old data and return iEngine.Clear(); iEngine.Trace("WARNING: DbgEntityConfigManager could not load config id: " + aId.ToString()); } else { if (config == iEngine.CurrentConfiguration) { // Nothing to do } else { // Unload any old data iEngine.Clear(); // Prepare list of files List <string> files = new List <string>(); if (config.SymbolDataNeeded) { foreach (DbgEntityConfig.CfgSet set in config) { foreach (DbgEntityConfig.CfgFile file in set) { files.Add(file.FileNameAndPath); } } } iEngine.AddRange(files); iEngine.Prime(TSynchronicity.ESynchronous); } } }