38 std::vector <std::vector<unsigned short> >
getOverlapMatrix(
unsigned allowedOverlaps = 0)
43 for (
unsigned short ii = 0; ii < tracks.size(); ii++) {
44 for (
unsigned short jj = ii + 1; jj < tracks.size(); jj++) {
55 if (allowedOverlaps) {
56 std::vector <unsigned short> overlapChache;
59 std::sort(overlapTracks.begin(), overlapTracks.end());
61 auto endIter = overlapTracks.end();
62 auto cacheIter = overlapTracks.begin();
63 for (
auto iter = overlapTracks.begin(); iter != endIter; iter++) {
64 if (*iter != *cacheIter) {
66 }
else if (iter - cacheIter == allowedOverlaps) {
67 overlapChache.push_back(*iter);
70 overlapTracks = overlapChache;
71 overlapChache.clear();
80 std::sort(overlapTracks.begin(), overlapTracks.end());
81 overlapTracks.erase(std::unique(overlapTracks.begin(), overlapTracks.end()), overlapTracks.end());