29 lines
1.1 KiB
Java
29 lines
1.1 KiB
Java
package _VisualDVM.ProjectData.GCOV;
|
||
import javafx.util.Pair;
|
||
|
||
import java.util.LinkedHashMap;
|
||
public class GCOV_info {
|
||
public long max;
|
||
public LinkedHashMap<Integer, Pair<Long, Integer>> line_info = new LinkedHashMap<>();
|
||
//номер строки / число ее выполнений / масштаб
|
||
public void clear() {
|
||
max = 0;
|
||
line_info.clear();
|
||
}
|
||
public void add_line(int num, long count) {
|
||
line_info.put(num, new Pair<>(count, 0));
|
||
if (max < count) max = count;
|
||
}
|
||
//пределим минимум и максимум. оба должны быть >0. + определим интервал
|
||
public void setup() {
|
||
//определям процент по отношению к максимуму
|
||
for (int i : line_info.keySet()) {
|
||
Pair<Long, Integer> p = line_info.get(i);
|
||
int proportion = (max > 0) ? ((int) (((double) p.getKey() / max) * 100)) : 0;
|
||
if (proportion < 1) proportion = 1;
|
||
line_info.replace(i, new Pair<>(p.getKey(), proportion));
|
||
}
|
||
}
|
||
}
|
||
|