This class serves for reading in and writing FASTA files. More...
#include <OpenMS/FORMAT/FASTAFile.h>
Classes | |
struct | FASTAEntry |
FASTA entry type (identifier, description and sequence) More... | |
Public Member Functions | |
FASTAFile () | |
Default constructor. More... | |
virtual | ~FASTAFile () |
Destructor. More... | |
void | readStart (const String &filename) |
Prepares a FASTA file given by 'filename' for streamed reading using readNext(). More... | |
bool | readNext (FASTAEntry &protein) |
Prepares a FASTA file given by 'filename' for streamed reading using readNext(). More... | |
void | writeStart (const String &filename) |
Prepares a FASTA file given by 'filename' for streamed writing using writeNext(). More... | |
void | writeNext (const FASTAEntry &protein) |
Stores the data given by protein . Call writeStart() once before calling writeNext(). More... | |
void | writeEnd () |
Closes the file (flush). Called implicitly when FASTAFile object does out of scope. More... | |
Static Public Member Functions | |
static void | load (const String &filename, std::vector< FASTAEntry > &data) |
loads a FASTA file given by 'filename' and stores the information in 'data' More... | |
static void | store (const String &filename, const std::vector< FASTAEntry > &data) |
stores the data given by 'data' at the file 'filename' More... | |
Protected Attributes | |
std::fstream | infile_ |
std::ofstream | outfile_ |
std::unique_ptr< void, std::function< void(void *) > > | reader_ |
Size | entries_read_ |
This class serves for reading in and writing FASTA files.
You can use aggregate methods load() and store() to read/write a set of protein sequences at the cost of memory.
Or use single read/write of protein sequences using readStart(), readNext() and writeStart(), writeNext(), writeEnd() for more memory efficiency. Reading from one and writing to another FASTA file can be handled by one single FASTAFile instance.
FASTAFile | ( | ) |
Default constructor.
|
virtual |
Destructor.
|
static |
loads a FASTA file given by 'filename' and stores the information in 'data'
This uses more RAM than readStart() and readNext().
Exception::FileNotFound | is thrown if the file does not exists. |
Exception::ParseError | is thrown if the file does not suit to the standard. |
Referenced by TOPPOpenPepXLLF::main_(), SimpleSearchEngine::main_(), TOPPOpenPepXL::main_(), RNPxlSearch::main_(), and TOPPMetaProSIP::main_().
bool readNext | ( | FASTAEntry & | protein | ) |
Prepares a FASTA file given by 'filename' for streamed reading using readNext().
If you want to read all entries in one go, use load().
Exception::FileNotFound | is thrown if the file does not exists. |
Exception::ParseError | is thrown if the file does not suit to the standard. |
void readStart | ( | const String & | filename | ) |
Prepares a FASTA file given by 'filename' for streamed reading using readNext().
Exception::FileNotFound | is thrown if the file does not exists. |
Exception::ParseError | is thrown if the file does not suit to the standard. |
|
static |
stores the data given by 'data' at the file 'filename'
This uses more RAM than writeStart() and writeNext().
Exception::UnableToCreateFile | is thrown if the process is not able to write the file. |
void writeEnd | ( | ) |
Closes the file (flush). Called implicitly when FASTAFile object does out of scope.
void writeNext | ( | const FASTAEntry & | protein | ) |
Stores the data given by protein
. Call writeStart() once before calling writeNext().
Call writeEnd() when done to close the file!
Exception::UnableToCreateFile | is thrown if the process is not able to write the file. |
void writeStart | ( | const String & | filename | ) |
Prepares a FASTA file given by 'filename' for streamed writing using writeNext().
Exception::UnableToCreateFile | is thrown if the process is not able to write to the file (disk full?). |
|
protected |
|
protected |
|
protected |
|
protected |
OpenMS / TOPP release 2.3.0 | Documentation generated on Tue Jan 9 2018 18:22:08 using doxygen 1.8.13 |