20#ifndef MS_MASCOTRESUNIGENE_HPP
21#define MS_MASCOTRESUNIGENE_HPP
31namespace matrix_science {
53 const std::string & title,
54 const std::string & gene,
55 const std::string & cytoBand,
56 const std::string & locusLink,
57 const std::string & express,
58 const long chromosome,
59 const int numAccessions,
60 const OFFSET64_T fileOffset);
77 std::string
getID()
const {
return id_; }
83 std::string
getTitle()
const {
return title_; }
89 std::string
getGene()
const {
return gene_; }
134 bool getString(
const char * buf,
const char *
id,
135 const int idLen, std::string &res);
138 bool getLong(
const char * buf,
const char *
id,
139 const int idLen,
long &res);
142 bool getAccessions(
const char * buf,
const char *
id,
const int idLen,
143 std::string & giNumber, std::string & accession);
147 std::string cytoBand_;
148 std::string locuslink_;
149 std::string express_;
152 OFFSET64_T fileOffset_;
176 const int index) = 0;
186 const std::string & accession);
190 std::vector<ms_unigene_entry *> entries_;
191 std::string filename_;
193 typedef std::multimap<std::string, const ms_unigene_entry *> unigenesForAcc;
194 unigenesForAcc accessionToUnigene_;
199 class MS_MASCOTRESFILE_API ms_unigene_dat :
public ms_unigene
207 virtual ~ms_unigene_dat();
213 virtual std::string getUnigeneForAccession(
const std::string accession,
219 ms_unigene_dat(
const ms_unigene_dat & rhs);
220 ms_unigene_dat & operator=(
const ms_unigene_dat & rhs);
Class for parsing and reading files in dat28 format.
Definition: ms_mascotresfile_dat.hpp:121
Abstract base class of ms_mascotresfile_dat and ms_mascotresfile_msr.
Definition: ms_mascotresfilebase.hpp:72
Wrapper for the public domain tinycdb package http://www.corpit.ru/mjt/tinycdb.html by Michael Tokare...
Definition: ms_tinycdb.hpp:124
This class encapsulates a single entry from a unigene file.
Definition: ms_unigene.hpp:46
int getNumAccessions() const
Return the number of accessions (gi numbers or EMBL accessions) that comprise this entry.
Definition: ms_unigene.hpp:71
std::string getLocusLink() const
Return the LocusLink - e.g. 125.
Definition: ms_unigene.hpp:102
std::string getCytoBand() const
Return the CYTOBAND - e.g. 4q21-q23.
Definition: ms_unigene.hpp:95
long getChromosome() const
Return the chromosome that contains the unignene entry.
Definition: ms_unigene.hpp:117
std::string getID() const
Return the 'ID' of this entry - e.g. Hs.4.
Definition: ms_unigene.hpp:77
std::string getTitle() const
Return the 'title' of this entry - e.g. "alcohol dehydrogenase...".
Definition: ms_unigene.hpp:83
std::string getExpress() const
Return the EXPRESS entry. Can be very long - 5000 bytes.
Definition: ms_unigene.hpp:111
std::string getGene() const
Return the gene name for this entry - e.g. "ADH1B".
Definition: ms_unigene.hpp:89
OFFSET64_T getFileOffset() const
Return the offset into the unigene data file for this entry.
Definition: ms_unigene.hpp:124
This class encapsulates a complete unigene file.
Definition: ms_unigene.hpp:162
virtual const ms_unigene_entry * findEntry(const char *id)=0
Given an accession, return a pointer to the relevant unigene entry.
virtual std::string getUnigeneForAccession(const std::string accession, const int index)=0
Return the Unigene 'accession' (ID) for a given EST accession.