package edu.isi.karma.rep.hierarchicalheadings; import java.util.HashMap; public class ColspanMap { final private HashMap<HHTNode, Span> spanMap = new HashMap<HHTNode, Span>(); public HashMap<HHTNode, Span> getSpanMap() { return spanMap; } public ColspanMap(HHTree tree) { for (HHTNode root : tree.getRootNodes()) { populateColSpan(root); } } private void populateColSpan(HHTNode node) { Span span = new Span(node.getStartCol(), node.getEndCol()); spanMap.put(node, span); if (!node.isLeaf()) { for (HHTNode child : node.getChildren()) populateColSpan(child); } } public Span getSpan(HHTNode node) { return spanMap.get(node); } @Override public String toString() { StringBuilder str = new StringBuilder(); str.append("Colspan Map: \n"); for (HHTNode node : spanMap.keySet()) { str.append("Node: " + node.gettNode().getId() + ", " + spanMap.get(node) + "\n"); } return str.toString(); } }