Read in the taxonomy file.
/* ############################################################################## # file: config_taxonomy.cpp # # 'msparser' toolkit example code # ############################################################################## # COPYRIGHT NOTICE # # Copyright 1998-2005 Matrix Science Limited All Rights Reserved. # # # ############################################################################## # $Source: parser/examples/test_cxx/config_taxonomy.cpp $ # # $Author: villek@matrixscience.com $ # # $Date: 2018-07-30 16:23:53 +0100 $ # # $Revision: 1b450440f9c97e1e41d0fc6016a27d68951d4532 | MSPARSER_REL_2_8_1-0-gea32989045 $ # # $NoKeywords:: $ # ############################################################################## */ #include "msparser.hpp" #include <iostream> // All the classes are part of the matrix_science namespace using namespace matrix_science; int main(int argc, char * argv[]) { if ( argc < 2 ) { std::cout << "The location of taxonomy file has to be specified as a parameter" << std::endl; std::cout << "The location should either be the full path to the taxonomy file" << std::endl; std::cout << "or a URL to a Mascot server - e.g. http://mascot-server/mascot/cgi" << std::endl; return 1; } // A sessionID can optionally be passed as the second parameter // This will only be required if the 'file' is a URL ms_connection_settings cs; if (argc > 2) { cs.setSessionID(argv[2]); } ms_taxonomyfile file(argv[1], &cs); if (!file.isValid()) { std::cout << "There are errors. Cannot continue. The last error description:" << std::endl; std::cout << file.getLastErrorString() << std::endl; return 1; } int n = file.getNumberOfEntries(); std::cout << "There are " << n << " taxonomy choice entries configured:" << std::endl; // now get'em all! int i = 0; for(i=0; i < n; i++) { std::cout << file.getEntryByNumber(i)->getTitle() << std::endl; std::cout << "Include: "; int j; for(j=0; j < file.getEntryByNumber(i)->getNumberOfIncludeTaxonomies(); j++) { if ( j > 0 ) std::cout << ","; std::cout << file.getEntryByNumber(i)->getIncludeTaxonomy(j); } std::cout << std::endl; std::cout << "Exclude: "; for(j=0; j < file.getEntryByNumber(i)->getNumberOfExcludeTaxonomies(); j++) { if ( j > 0 ) std::cout << ","; std::cout << file.getEntryByNumber(i)->getExcludeTaxonomy(j); } std::cout << std::endl; } return 0; } /* will give the output, for instance: # config_taxonomy ../config/taxonomy There are 64 taxonomy choice entries configured: All entries Include: 1 Exclude: 0 . . Archaea (Archaeobacteria) Include: 2157 Exclude: . . Eukaryota (eucaryotes) Include: 2759 Exclude: . . . . Alveolata (alveolates) Include: 33630 Exclude: . . . . . . Plasmodium falciparum (malaria parasite) Include: 5833 Exclude: . . . . . . Other Alveolata Include: 33630 Exclude: 5833 ... */
Copyright © 2022 Matrix Science Ltd. All Rights Reserved. Generated on Thu Mar 31 2022 01:12:29 |