blob: 6d2a098170dfee87461ed7467be25a6bfcf6b121 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#include "network_set.h"
void NetworkSet::Clear() {
network_by_item_.clear();
}
void NetworkSet::AddLink(int id1, int id2) {
if (id2 > id1) {
// Make sure id1 < id2
std::swap(id1, id2);
}
if (!network_by_item_.count(id1)) {
network_by_item_[id1] = {};
}
if (!network_by_item_.count(id2)) {
network_by_item_[id2] = {};
}
network_by_item_[id1].insert({id1, id2});
network_by_item_[id2].insert({id1, id2});
}
bool NetworkSet::IsItemInNetwork(int id) const {
return network_by_item_.count(id);
}
const std::set<std::pair<int, int>>& NetworkSet::GetNetworkGraph(int id) const {
return network_by_item_.at(id);
}
|