class LoadingProcedures {

    public static String addSynapseToRoiInfoWithHP(String roiInfoString, String roi, String synapseType, Double synapseConfidence, Double preHPThreshold, Double postHPThreshold) {
        RoiInfoWithHighPrecisionCounts roiInfo = getRoiInfoHPFromString(roiInfoString);

        if (synapseType.equals(PRE) && synapseConfidence != null && synapseConfidence > preHPThreshold) {
            roiInfo.incrementPreForRoi(roi);
            roiInfo.incrementPreHPForRoi(roi);
        } else if (synapseType.equals(PRE)) {
            roiInfo.incrementPreForRoi(roi);
        } else if (synapseType.equals(POST) && synapseConfidence != null && synapseConfidence > postHPThreshold) {
            roiInfo.incrementPostForRoi(roi);
            roiInfo.incrementPostHPForRoi(roi);
        } else if (synapseType.equals(POST)) {
            roiInfo.incrementPostForRoi(roi);
        }

        return roiInfo.getAsJsonString();

    }

}