/* Method to set an a priori position of receiver using Bancroft's * method. Intended to be used with GNSS data structures. * * @param time DayTime object for this epoch * @param data satTypeValueMap data structure holding * the data. * * @return * 0 if OK * -1 if problems arose */ int ModeledPR::Prepare( const DayTime& time, const satTypeValueMap& data ) { int i; std::vector<SatID> vSat; std::vector<double> vPR; Vector<SatID> Satellite( data.getVectorOfSatID() ); Vector<double> Pseudorange( data.getVectorOfTypeID( getDefaultObservable() ) ); // Convert from gpstk::Vector to std::vector for (i = 0; i < (int)Satellite.size(); i++) { vSat.push_back(Satellite[i]); } for (i = 0; i < (int)Pseudorange.size(); i++) { vPR.push_back(Pseudorange[i]); } return Prepare(time, vSat, vPR, (*(getDefaultEphemeris())) ); } // End of method 'ModeledPR::Prepare()'
void FragmentTree::processFragment(const CleavageCollection& cc, MassLossWindow mlw) { FragmentPtr fg(new Fragment(glycan_seq)); fg->updateCleavage(cc); //std::string final_type = fg->getCleavageType(); // Modify the MassLossWindow based on the possibility of modification sites. std::set<std::string> mod_types = glycan_seq->getModificationTypes(); for(std::set<std::string>::iterator iter = mod_types.begin(); iter != mod_types.end(); iter++) { int num = (int)fg->getModificationSiteNum(*iter, 1); Composition temp_compo; if(*iter == "SO3") { temp_compo.add("SO3"); int upper_num = glycan_seq->getModificationConstraint("SO3"); if(num > upper_num) num = upper_num; } else if(*iter == "Ac") { temp_compo.add("CH2CO"); int upper_num = glycan_seq->getModificationConstraint("Ac"); if(num > upper_num) num = upper_num; } if(num != 0) mlw.push_back(MassLoss(temp_compo, 0, -1 * num)); } this->processFragment(fg, mlw, 0, Satellite()); }