Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BigString Class Reference

concatenates Proteins given as FASTAEntry to one big string separated by a unique character (by default $) More...

#include <OpenMS/DATASTRUCTURES/BigString.h>

Public Types

typedef std::pair< String, StringFASTAEntry
 

Public Member Functions

 BigString ()
 constructor More...
 
 BigString (const BigString &bs)
 copy constructor More...
 
virtual ~BigString ()
 destructor More...
 
void add (FASTAEntry const &new_entry)
 add new string to bigString More...
 
void setSeparator (const char sep)
 setter for separator character by default $ More...
 
char getSeparator ()
 getter for separator character More...
 
Size size ()
 returns the number of strings More...
 
Size length ()
 length of bigString More...
 
void getPeptide (FASTAEntry &entry, Size start, Size length)
 getPeptide from start position with given length this includes FASTAHeader More...
 
const StringgetBigString () const
 returns bigString More...
 

Protected Member Functions

Size getIndex_ (Size index, Size start, Size end)
 private function to implement binary search More...
 
Size getIndex_ (Size index)
 retrieves index of inserted protein by bigStringPosition More...
 

Protected Attributes

String big_string_
 concatenated String More...
 
char separator_
 separator sign More...
 
Size count_
 number of Strings added to big_string More...
 
Size len_
 length of the big_string More...
 
std::vector< Sizesep_indices_
 indices of separators More...
 
std::vector< StringFASTA_header_
 vector with headers of FASTAEntry More...
 

Detailed Description

concatenates Proteins given as FASTAEntry to one big string separated by a unique character (by default $)

Concatenates the strings given as FASTAEntry separating them with a unique character and storing the headers of FASTAEntry as well as the position of separator characters. So a substring can be accessed easily and the corresponding header can be found fast by using binary search.

Member Typedef Documentation

typedef std::pair<String, String> FASTAEntry

Constructor & Destructor Documentation

BigString ( )

constructor

BigString ( const BigString bs)

copy constructor

virtual ~BigString ( )
virtual

destructor

Member Function Documentation

void add ( FASTAEntry const &  new_entry)

add new string to bigString

Parameters
new_entryFASTAEntry to be added to big_string
const String& getBigString ( ) const

returns bigString

Returns
const reference to bigString
Size getIndex_ ( Size  index,
Size  start,
Size  end 
)
protected

private function to implement binary search

Parameters
index
startstart index
endend index
Returns
int with index
Size getIndex_ ( Size  index)
protected

retrieves index of inserted protein by bigStringPosition

Parameters
index
Returns
int with index
void getPeptide ( FASTAEntry entry,
Size  start,
Size  length 
)

getPeptide from start position with given length this includes FASTAHeader

Parameters
entrycontains the entry of the given range after calling
startstart index
lengthlength of desired substring
Returns
FASTAEntry describing the protein
Exceptions
InvalidValueif a peptide is part of two different fasta entrys
char getSeparator ( )

getter for separator character

Returns
separator character
Size length ( )

length of bigString

Returns
int with length of the created bigString
void setSeparator ( const char  sep)

setter for separator character by default $

Parameters
sepseparator character
Size size ( )

returns the number of strings

Returns
int with number of strings

Member Data Documentation

String big_string_
protected

concatenated String

Size count_
protected

number of Strings added to big_string

std::vector<String> FASTA_header_
protected

vector with headers of FASTAEntry

Size len_
protected

length of the big_string

std::vector<Size> sep_indices_
protected

indices of separators

char separator_
protected

separator sign


OpenMS / TOPP release 2.0.0 Documentation generated on Fri May 29 2015 17:20:35 using doxygen 1.8.9.1