Changeset 561 for trunk/sources/HeuristicLab.CEDMA.Core/AgentList.cs
- Timestamp:
- 09/13/08 13:36:57 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.CEDMA.Core/AgentList.cs
r510 r561 40 40 set { 41 41 database = value; 42 ReloadList(); 43 FireChanged(); 42 Action reload = ReloadList; 43 lock(agentList) { 44 agentList.Clear(); 45 } 46 reload.BeginInvoke(null, null); 44 47 } 45 48 } 46 49 47 50 private void ReloadList() { 48 agentList.Clear();49 51 foreach(AgentEntry a in database.GetAgents()) { 50 52 Agent newAgent = new Agent(Database, a.Id); 51 53 newAgent.Name = a.Name; 52 54 newAgent.Status = a.Status; 53 agentList.Add(newAgent); 55 lock(agentList) { 56 agentList.Add(newAgent); 57 } 58 FireChanged(); 54 59 } 55 60 } … … 67 72 long id = database.InsertAgent(null, agent.Name, PersistenceManager.SaveToGZip(agent.OperatorGraph)); 68 73 agent.Id = id; 69 agentList.Add(agent); 74 lock(agentList) { 75 agentList.Add(agent); 76 } 70 77 FireChanged(); 71 78 } 72 79 73 80 public IEnumerator<IAgent> GetEnumerator() { 74 ReloadList(); 75 return agentList.GetEnumerator(); 81 List<IAgent> agents = new List<IAgent>(); 82 lock(agentList) { 83 agents.AddRange(agentList); 84 } 85 return agents.GetEnumerator(); 76 86 } 77 87
Note: See TracChangeset
for help on using the changeset viewer.