TextWriter& operator()(const UserParam& userParam) { os_ << indent_ << "userParam: " << userParam.name; if (!userParam.value.empty()) os_ << ", " << userParam.value; if (!userParam.type.empty()) os_ << ", " << userParam.type; if (userParam.units != CVID_Unknown) os_ << ", " << cvTermInfo(userParam.units).name; os_ << std::endl; return *this; }
TextWriter& operator()(const CVParam& cvParam) { os_ << indent_ << "cvParam: " << cvTermInfo(cvParam.cvid).name; if (!cvParam.value.empty()) os_ << ", " << cvParam.value; if (cvParam.units != CVID_Unknown) os_ << ", " << cvParam.unitsName(); os_ << std::endl; return *this; }
ostream& operator<<(ostream& os, const CVMap& cm) { string id = typeid(cm).name(); os << cm.getTag() << "\t" << cm.keyword << "\t" << cvTermInfo(cm.cvid).id << "\t" << cm.path << "\n"; return os; }
InstrumentInfo(const MSData& msd) { if (!msd.instrumentConfigurationPtrs.empty() && msd.instrumentConfigurationPtrs[0]->hasCVParamChild(MS_instrument_model)) { CVTermInfo model = cvTermInfo(msd.instrumentConfigurationPtrs[0]->cvParamChild(MS_instrument_model).cvid); CVTermInfo vendor = model; while (!vendor.parentsIsA.empty() && find(vendor.parentsIsA.begin(), vendor.parentsIsA.end(), MS_instrument_model) == vendor.parentsIsA.end()) vendor = cvTermInfo(vendor.parentsIsA[0]); vendorName = vendor.shortName(); bal::replace_all(vendorName, " instrument model", ""); if (vendor.cvid != model.cvid) modelName = model.shortName(); serialNumber = msd.instrumentConfigurationPtrs[0]->cvParam(MS_instrument_serial_number).value; } if (vendorName.empty()) vendorName = "unknown"; if (modelName.empty()) modelName = "unknown"; if (serialNumber.empty()) serialNumber = "unknown"; }
const std::string& getCleavageAgentRegex(CVID agentCvid) const { if (!pwiz::cv::cvIsA(agentCvid, MS_cleavage_agent_name)) throw invalid_argument("[getCleavageAgentRegex] CVID is not a cleavage agent."); map<CVID, const CVTermInfo*>::const_iterator regexTermItr = cleavageAgentToRegexMap_.find(agentCvid); if (regexTermItr == cleavageAgentToRegexMap_.end()) throw runtime_error("[getCleavageAgentRegex] No regex relation for cleavage agent " + cvTermInfo(agentCvid).name); return regexTermItr->second->name; }