#include <gnGBKSource.h>
Inheritance diagram for gnGBKSource:
Public Member Functions | |
gnGBKSource () | |
Empty Constructor, does nothing. | |
gnGBKSource (const gnGBKSource &s) | |
Clone Constructor copies the specified gnGBKSource. | |
~gnGBKSource () | |
Destructor, frees memory. | |
gnGBKSource * | Clone () const |
Returns an exact copy of this class. | |
uint32 | GetContigListLength () const |
Get the number of sequence contigs in this source. | |
boolean | HasContig (const string &name) const |
Looks for a contig by name. | |
uint32 | GetContigID (const string &name) const |
Get a contig index by name. | |
string | GetContigName (const uint32 i) const |
Get the name of the specified contig. | |
gnSeqI | GetContigSeqLength (const uint32 i) const |
Get the total number of base pairs in the specified contig. | |
boolean | SeqRead (const gnSeqI start, char *buf, uint32 &bufLen, const uint32 contigI=ALL_CONTIGS) |
Gets sequence data from this source. | |
gnGenomeSpec * | GetSpec () const |
Get the annotated sequence data as a gnGenomeSpec. | |
gnFileContig * | GetFileContig (const uint32 contigI) const |
Returns a pointer to the file contig corresponding to contigI or null if none exists. | |
virtual void | Open (string openString) |
Opens the source given in "openString" for reading. | |
virtual void | Open () |
Opens this source for reading. | |
virtual void | Close () |
Closes the file or connection this source is reading from. | |
virtual string | GetOpenString () const |
Get the location of the source that is being used. | |
virtual const gnFilter * | GetFilter () const |
Get the filter currently being used to filter unwanted characters out of read sequences. | |
virtual void | SetFilter (gnFilter *filter) |
Set the filter that will be used to filter unwanted characters out of the sequence data. | |
virtual boolean | Read (const uint64 pos, char *buf, uint32 &bufLen) |
Gets raw input from this source. | |
Static Public Member Functions | |
boolean | Write (gnSequence &seq, const string &filename) |
Writes the specified gnSequence to a .GBK file named "filename". | |
boolean | Write (gnBaseSource *source, const string &filename) |
Writes the specified source to a .GBK file named "filename". | |
Protected Member Functions | |
void | DetermineNewlineType () |
Protected Attributes | |
string | m_openString |
ifstream | m_ifstream |
const gnFilter * | m_pFilter |
gnNewlineType | m_newlineType |
uint32 | m_newlineSize |
Private Member Functions | |
boolean | SeqSeek (const gnSeqI start, const uint32 &contigI, uint64 &startPos, uint64 &readableBytes) |
boolean | SeqStartPos (const gnSeqI start, gnFileContig &contig, uint64 &startPos, uint64 &readableBytes) |
boolean | ParseStream (istream &fin) |
Static Private Member Functions | |
string & | Filler (uint32 length) |
void | FormatString (string &data, uint32 offset, uint32 width) |
void | WriteHeader (gnMultiSpec *spec, const string &hdr, ofstream &m_ofstream) |
Private Attributes | |
gnGenomeSpec * | m_spec |
vector< gnFileContig * > | m_contigList |
This class reads and writes the GenBank file format. gnGBKSource is used by gnSourceFactory to read files and should only be used directly when writing out files in GBK file format by calling gnGBKSource::Write( mySpec, "C:\mySeqFile.gbk");
Definition at line 50 of file gnGBKSource.h.
|
Empty Constructor, does nothing.
Definition at line 23 of file gnGBKSource.cpp. References DebugMsg(), gnFilter::fullDNASeqFilter(), gnFileSource::m_openString, and gnFileSource::m_pFilter. Referenced by Clone(). |
|
Clone Constructor copies the specified gnGBKSource.
Definition at line 31 of file gnGBKSource.cpp. References m_contigList. |
|
Destructor, frees memory.
Definition at line 39 of file gnGBKSource.cpp. References m_contigList, and gnFileSource::m_ifstream. |
|
Returns an exact copy of this class.
Implements gnFileSource. Definition at line 110 of file gnGBKSource.h. References gnGBKSource(). |
|
Closes the file or connection this source is reading from.
Implements gnBaseSource. Definition at line 56 of file gnFileSource.cpp. References IOStreamFailed(), gnFileSource::m_ifstream, and Throw_gnEx. |
|
Definition at line 74 of file gnFileSource.cpp. References gnNewlineMac, gnNewlineUnix, gnNewlineWindows, gnFileSource::m_ifstream, gnFileSource::m_newlineSize, and gnFileSource::m_newlineType. Referenced by ParseStream(), and gnFASSource::ParseStream(). |
|
|
|
Definition at line 252 of file gnGBKSource.cpp. References uint32. |
|
Get a contig index by name. If the source does not contain a contig by the specified name GetContigID returns UINT32_MAX.
Implements gnBaseSource. Definition at line 59 of file gnGBKSource.cpp. References m_contigList, and uint32. |
|
Get the number of sequence contigs in this source.
Implements gnBaseSource. Definition at line 116 of file gnGBKSource.h. References m_contigList, and uint32. |
|
Get the name of the specified contig. Returns an empty string if the specified contig is out of range.
Implements gnBaseSource. Definition at line 68 of file gnGBKSource.cpp. References m_contigList. |
|
Get the total number of base pairs in the specified contig.
Implements gnBaseSource. Definition at line 76 of file gnGBKSource.cpp. References gnMultiSpec::GetLength(), gnSeqI, GNSEQI_ERROR, m_contigList, and m_spec. |
|
Returns a pointer to the file contig corresponding to contigI or null if none exists.
Implements gnFileSource. Definition at line 545 of file gnGBKSource.cpp. References m_contigList. |
|
Get the filter currently being used to filter unwanted characters out of read sequences.
Implements gnBaseSource. Definition at line 68 of file gnFileSource.h. References gnFileSource::m_pFilter. |
|
Get the location of the source that is being used.
Implements gnBaseSource. Definition at line 62 of file gnFileSource.h. References gnFileSource::m_openString. |
|
Get the annotated sequence data as a gnGenomeSpec. GetSpec returns a gnGenomeSpec which contains the sequence, header, and feature data contained by this source.
Implements gnBaseSource. Definition at line 126 of file gnGBKSource.h. References gnGenomeSpec::Clone(), and m_spec. |
|
Looks for a contig by name. Returns true if it finds the contig, otherwise false.
Implements gnBaseSource. Definition at line 50 of file gnGBKSource.cpp. References m_contigList, and uint32. |
|
Opens this source for reading.
Implements gnBaseSource. Definition at line 48 of file gnFileSource.cpp. References FileNotOpened(), gnFileSource::m_ifstream, gnFileSource::m_openString, and Throw_gnEx. |
|
Opens the source given in "openString" for reading.
Implements gnBaseSource. Definition at line 29 of file gnFileSource.cpp. References FileNotOpened(), gnFileSource::m_ifstream, gnFileSource::m_openString, gnFileSource::ParseStream(), and Throw_gnEx. |
|
|
Gets raw input from this source. Read will attempt to read "bufLen" bytes starting at "pos" directly from the source. It stores the data in "buf", and returns the actual number of bytes read in bufLen. Read will return false if a serious error occurs.
Implements gnBaseSource. Definition at line 63 of file gnFileSource.cpp. References gnFileSource::m_ifstream. Referenced by gnRAWSource::SeqRead(). |
|
Gets sequence data from this source. SeqRead will attempt to read "bufLen" base pairs starting at "start", an offset into the sequence. Reading inside a specific contig can be accomplished by supplying the "contigI" parameter with a valid contig index. SeqRead stores the sequence data in "buf" and returns the actual number of bases read in "bufLen". SeqRead will return false if a serious error occurs.
Implements gnBaseSource. Definition at line 87 of file gnGBKSource.cpp. References Array< T >::data, gnSeqC, gnSeqI, gnFilter::IsValid(), m_contigList, gnFileSource::m_ifstream, gnFileSource::m_pFilter, SeqSeek(), uint32, and uint64. |
|
Definition at line 170 of file gnGBKSource.cpp. References gnSeqI, m_contigList, SeqStartPos(), and uint64. Referenced by SeqRead(). |
|
Definition at line 197 of file gnGBKSource.cpp. References Array< T >::data, ErrorMsg(), gnFileContig::GetSectStartEnd(), gnFileContig::HasRepeatSeqGap(), gnFilter::IsValid(), gnFileSource::m_ifstream, gnFileSource::m_newlineSize, gnFileSource::m_pFilter, uint32, and uint64. Referenced by SeqSeek(). |
|
Set the filter that will be used to filter unwanted characters out of the sequence data.
Implements gnBaseSource. Definition at line 74 of file gnFileSource.h. References gnFileSource::m_pFilter, NullPointer(), and Throw_gnEx. |
|
Writes the specified source to a .GBK file named "filename".
Definition at line 121 of file gnGBKSource.h. References gnBaseSource::GetSpec(), and Write(). |
|
|
Definition at line 293 of file gnGBKSource.cpp. References gnBaseHeader::GetHeader(), gnMultiSpec::GetHeader(), and uint32. Referenced by Write(). |
|
Definition at line 106 of file gnGBKSource.h. Referenced by GetContigID(), GetContigListLength(), GetContigName(), GetContigSeqLength(), GetFileContig(), gnGBKSource(), HasContig(), ParseStream(), SeqRead(), SeqSeek(), and ~gnGBKSource(). |
|
Definition at line 53 of file gnFileSource.h. Referenced by gnFileSource::Close(), gnFileSource::DetermineNewlineType(), gnFileSource::gnFileSource(), gnFileSource::Open(), gnSEQSource::ParseStream(), gnRAWSource::ParseStream(), ParseStream(), gnFASSource::ParseStream(), gnFileSource::Read(), gnSEQSource::SeqRead(), SeqRead(), gnFASSource::SeqRead(), gnSEQSource::SeqStartPos(), SeqStartPos(), gnFASSource::SeqStartPos(), gnABISource::~gnABISource(), gnDNXSource::~gnDNXSource(), gnFASSource::~gnFASSource(), ~gnGBKSource(), gnRAWSource::~gnRAWSource(), and gnSEQSource::~gnSEQSource(). |
|
Definition at line 56 of file gnFileSource.h. Referenced by gnFileSource::DetermineNewlineType(), gnFileSource::gnFileSource(), ParseStream(), gnFASSource::ParseStream(), and SeqStartPos(). |
|
Definition at line 55 of file gnFileSource.h. Referenced by gnFileSource::DetermineNewlineType(), and gnFileSource::gnFileSource(). |
|
Definition at line 52 of file gnFileSource.h. Referenced by gnFileSource::GetOpenString(), gnABISource::gnABISource(), gnFASSource::gnFASSource(), gnFileSource::gnFileSource(), gnGBKSource(), gnRAWSource::gnRAWSource(), gnSEQSource::gnSEQSource(), and gnFileSource::Open(). |
|
Definition at line 54 of file gnFileSource.h. Referenced by gnFileSource::GetFilter(), gnABISource::gnABISource(), gnDNXSource::gnDNXSource(), gnFASSource::gnFASSource(), gnFileSource::gnFileSource(), gnGBKSource(), gnSEQSource::gnSEQSource(), gnSEQSource::ParseStream(), gnRAWSource::ParseStream(), ParseStream(), gnFASSource::ParseStream(), gnSEQSource::SeqRead(), SeqRead(), gnFASSource::SeqRead(), gnSEQSource::SeqStartPos(), SeqStartPos(), gnFASSource::SeqStartPos(), and gnFileSource::SetFilter(). |
|
Definition at line 105 of file gnGBKSource.h. Referenced by GetContigSeqLength(), GetSpec(), and ParseStream(). |