protected void ScanSession(SessionForm selectedSession, out CIStringCollection usedItems, out CIStringCollection usedExperiments) { DataTable itemsDataTable, experimentsDataTable; CIStringCollection itemsCollection, experimentsCollection; //Get all items from the selected session. OnStatusChange("Retrieving items from session"); itemsDataTable = selectedSession.GetAllItems(); OnStatusChange("Storing session items in memory"); itemsCollection = new CIStringCollection(); for (int i = 0; i < itemsDataTable.Rows.Count; i++) { itemsCollection.Add(itemsDataTable.Rows[i][1].ToString()); if (i % 1000 == 0) { OnStatusChange("Storing session items in memory (" + i.ToString() + ")"); } } //Get all experiments from the selected session. OnStatusChange("Retrieving experiments from session"); experimentsDataTable = selectedSession.GetAllExperiments(); OnStatusChange("Storing session experiments in memory"); experimentsCollection = new CIStringCollection(); for (int i = 0; i < experimentsDataTable.Rows.Count; i++) { experimentsCollection.Add(experimentsDataTable.Rows[i][1].ToString()); if (i % 1000 == 0) { OnStatusChange("Storing session experiments in memory (" + i.ToString() + ")"); } } //Set out parameters. usedItems = itemsCollection; usedExperiments = experimentsCollection; }