public Params(Params other) { // copy values from other debug = other.debug; verbose = other.verbose; ignoreVParams = other.ignoreVParams; stopLevel = other.stopLevel; Species = other.Species; WoodType = other.WoodType; Seed = other.Seed; Smooth = other.Smooth; // create paramDB paramDB = new Hashtable(); levelParams = new LevelParams[4]; for (int l = 0; l < 4; l++) { levelParams[l] = new LevelParams(l, paramDB); } registerParams(); // copy param values for (Enumeration e = paramDB.elements(); e.hasMoreElements(); ) { AbstractParam p = ((AbstractParam) e.nextElement()); try { AbstractParam otherParam = other.getParam(p.name); if (!otherParam.empty()) { p.setValue(otherParam.getValue()); } // else use default value } catch (ParamError err) { System.err.println("Error copying params: " + err.getMessage()); } } }
public TreeMap getParamGroup(int level, String group) { TreeMap result = new TreeMap(); for (Enumeration e = paramDB.elements(); e.hasMoreElements(); ) { AbstractParam p = (AbstractParam) e.nextElement(); if (p.getLevel() == level && p.getGroup().equals(group)) { result.put(new Integer(p.getOrder()), p); } } return result; }
public void setParam(String name, String value) throws ParamError { AbstractParam p = (AbstractParam) paramDB.get(name); if (p != null) { p.setValue(value); if (debug) { System.err.println("Params.setParam(): set " + name + " to " + value); } } else { throw new ParamError("Unknown parameter " + name + "!"); } }
private String siiToString(SpectrumIdentificationItem sii) { String siiString = ""; siiString = "\"" + sii.getId() + "\"" + sep + sii.getRank() + sep + sii.isPassThreshold() + sep + sii.getCalculatedMassToCharge() + sep + sii.getExperimentalMassToCharge() + sep + sii.getChargeState(); Peptide pep = peptideIdHashMap.get(sii.getPeptideRef()); // get Peptide via the hash for this object siiString += sep + "\"" + pep.getPeptideSequence() + "\""; // Handle Mods siiString += sep; String modString = ""; if (pep.getModification() != null) { int i = 0; for (Modification mod : pep.getModification()) { if (i > 0) { modString += ";"; // Add an extra separator between mods } modString += modToString(mod); i++; } } if (pep.getSubstitutionModification() != null) { int i = 0; for (SubstitutionModification subMod : pep.getSubstitutionModification()) { if (i > 0 || !modString.equals("")) { modString += ";"; // Add an extra separator between mods } modString += subModToString(subMod); i++; } } siiString += modString; Map<String, String> mapNameToValue = new HashMap<>(); for (AbstractParam param : sii.getParamGroup()) { mapNameToValue.put(param.getName(), param.getValue()); // System.out.println("test1" + param.getName() + "-> " + param.getValue()); } // Handle scores for (int i = 0; i < columnToScoreMap.size(); i++) { String score = columnToScoreMap.get(i); // System.out.println("test2" + score); if (mapNameToValue.containsKey(score)) { String scoreValue = mapNameToValue.get(score); // System.out.println("test3" + scoreValue); siiString += sep + scoreValue; } else { siiString += sep; } } // Handle all protein maps siiString += sep + "\""; List<PeptideEvidenceRef> peptideEvidenceRefList = sii.getPeptideEvidenceRef(); Boolean isDecoy = false; for (int i = 0; i < peptideEvidenceRefList.size(); i++) { PeptideEvidenceRef peptideEvidenceRef = peptideEvidenceRefList.get(i); PeptideEvidence peptideEvidence = peptideEvidenceIdHashMap.get(peptideEvidenceRef.getPeptideEvidenceRef()); DBSequence dbSeq = dbSequenceIdHashMap.get(peptideEvidence.getDBSequenceRef()); if (i > 0) { siiString += ";"; // Add an extra separator between mods } siiString += dbSeq.getAccession() + "_" + peptideEvidence.getStart() + "_" + peptideEvidence.getEnd() + "_" + peptideEvidence.getPre() + "_" + peptideEvidence.getPost(); if (peptideEvidence.isIsDecoy()) { isDecoy = true; } } siiString += "\""; siiString += sep + isDecoy; return siiString; }