public void Combine(LeagueHashSourceCollection other) { foreach (var kvp in other._content) { foreach (var entry in kvp.Value) { AddSource(kvp.Key, entry); } } }
public LeagueHashCollection(LeagueHashSourceCollection hashSources) { _hashes = new Dictionary <uint, Dictionary <string, HashSet <string> > >(); foreach (var kvp in hashSources.Content) { foreach (var name in kvp.Value) { AddFromSource(kvp.Key, name); } } }
public LeagueHashSourceCollection GetResult() { if (_result != null) { return(_result); } _result = new LeagueHashSourceCollection(); foreach (var worker in _workers) { _result.Combine(worker.GetResult()); } return(_result); }
private void Work() { _finished = false; _result = new LeagueHashSourceCollection(); Progress = 0; var end = _start + _count; for (var i = _start; i < end && i < _sources.Length; i++) { for (var j = 0; j < _sources.Length; j++) { var hash = LeagueLib.Hashes.HashFunctions.GetInibinHash(_sources[i], _sources[j]); if (_hashes.Contains(hash)) { _result.AddSource(_sources[i], _sources[j]); } Progress++; } } _finished = true; }