private static final int getTotalGroupsSizeParallel(ArrayList<LinkedDimGroup> groups,
            int sType, boolean countSpanning) {
        int size =
                sType == LayoutUtil.MAX ? LayoutUtil.INF : 0;
        for (int i = 0, iSz = groups.size(); i < iSz;
                i++) {
            LinkedDimGroup group = groups.get(i);
            if (countSpanning || group.span == 1) {
                int grpSize = group.getMinPrefMax()[sType];
                if (grpSize >= LayoutUtil.INF) {
                    return LayoutUtil.INF;
                }
                if (sType == LayoutUtil.MAX ? grpSize < size : grpSize > size) {
                    size = grpSize;
                }
            }
        }
        return constrainSize(size);
    }