public Drive DriveForPart(String name, Part part, double dataCapacity, int sampleCapacity) { var partId = Lib.GetPartId(part); if (!drives.ContainsKey(partId)) { drives.Add(partId, new Drive(name, dataCapacity, sampleCapacity)); } return(drives[partId]); }