source: tags/arb-6.0/CONVERTALN/rdp_info.cxx

Last change on this file was 7046, checked in by westram, 13 years ago
File size: 2.3 KB
Line 
1// =============================================================== //
2//                                                                 //
3//   File      : rdp_info.cxx                                      //
4//   Purpose   :                                                   //
5//                                                                 //
6// =============================================================== //
7
8#include "rdp_info.h"
9#include "defs.h"
10#include "reader.h"
11
12bool parse_RDP_comment(RDP_comments& comments, RDP_comment_parser one_comment_entry, const char *key, int index, Reader& reader) {
13    OrgInfo& orginf = comments.orginf;
14    SeqInfo& seqinf = comments.seqinf;
15
16    if      (str_equal(key, "Source of strain:"))            one_comment_entry(orginf.source,   index, reader);
17    else if (str_equal(key, "Culture collection:"))          one_comment_entry(orginf.cultcoll, index, reader);
18    else if (str_equal(key, "Former name:"))                 one_comment_entry(orginf.formname, index, reader);
19    else if (str_equal(key, "Alternate name:"))              one_comment_entry(orginf.nickname, index, reader);
20    else if (str_equal(key, "Common name:"))                 one_comment_entry(orginf.commname, index, reader);
21    else if (str_equal(key, "Host organism:"))               one_comment_entry(orginf.hostorg,  index, reader);
22    else if (str_equal(key, "RDP ID:"))                      one_comment_entry(seqinf.RDPid,    index, reader);
23    else if (str_equal(key, "Corresponding GenBank entry:")) one_comment_entry(seqinf.gbkentry, index, reader);
24    else if (str_equal(key, "Sequencing methods:"))          one_comment_entry(seqinf.methods,  index, reader);
25    else if (str_equal(key, "5' end complete:")) {
26        char flag[TOKENSIZE];
27        scan_token_or_die(flag, reader, index);
28        if (flag[0] == 'Y')  seqinf.comp5 = 'y';
29        else                 seqinf.comp5 = 'n';
30        ++reader;
31    }
32    else if (str_equal(key, "3' end complete:")) {
33        char flag[TOKENSIZE];
34        scan_token_or_die(flag, reader, index);
35        if (flag[0] == 'Y')  seqinf.comp3 = 'y';
36        else                 seqinf.comp3 = 'n';
37        ++reader;
38    }
39    else if (str_equal(key, "Sequence information ")) ++reader;
40    else if (str_equal(key, "Organism information")) ++reader;
41    else {
42        return false;
43    }
44    return true;
45}
46
47
48
49
Note: See TracBrowser for help on using the repository browser.