Class Specialization
External String
String that is stored in external memory.

Container

String

External String

String<TValue, External<> >
String<TValue, External<TConfig> >
Include Headers
seqan/file.h
Parameters

TValue | The value type, that is the type of the items/characters stored in the string. Remarks: Use Value to get the value type for a given class.
TConfig | A structure to configure the external string. Types: ExternalConfig, ExternalConfigLarge, ExternalConfigSize Default: ExternalConfig

Remarks
The External String enables to access sequences larger than the available internal memory (RAM) by using external memory (e.g. Hard disk, Network storage, ...) via a File object. Sequences of nearly arbitrary size can be accessed even larger than the logically addressable memory, i.e. they can in particular contain more than 2^32 elements on a 32bit system (see Tag.ExternalConfigLarge). See the constructor for more details.
This String also supports fast appending and removing of values at the end (see Block String, appendValue)
The External String implements a LRU mechanism to swap out pages. The External String's Iterator detects a forward or backward iteration and asynchronously prefetches pages that certainly will be accessed and automatically swaps out pages that certainly won't be accessed any more in the iteration process.
The String is implemented like a virtual memory manager. It divides its character sequence into pages of a fixed length (e.g. 1MB) and maintains a page table with information for each page (e.g. resides in memory or was swapped out, is dirty and needs to be saved, ...). Besides the page table the String also contains a size-limited list of page frames. A page frame is reserved internal memory for a page. When accessing values of a page that is stored in external memory, the page is loaded to a page frame first. In case that there is no page frame free, another page is swapped out before to free a page frame.
Specialization of
String
Implements
Container
Metafunctions

DefaultOverflowExplicit | The default overflow strategy for explicit resize. (String)
DefaultOverflowImplicit | The default overflow strategy for implicit resize. (String)
Infix | Infix sequence type. (String)
IsSequence | Determines whether a container stores its elements in sequential order. (String)
Iterator | Type of iterator objects that are used to traverse the container. (String)
Motif | The string type of the finder. (String)
Position | Type of an object that represents a position in a container. (String)
Prefix | Prefix sequence type. (String)
SAValue | The default alphabet type of a suffix array, i.e. the type to store a position of a string or string set. (String)
Spec | The spec of a class. (String)
Suffix | Suffix sequence type. (String)

Member Functions

String | Constructor

Functions

append | Concatenate two containers. (String)
append | Concatenate two containers. (String)
appendSeqs | Appends all sequences stored in files of directory to a StringSet. (String)
assign | Assigns one object to another object. (String)
assign | Assigns one object to another object. (String)
assignCroppedSeqId | Extracts the sequence id up to the first whitespace of a sequence file fragment. (String)
assignQual | Extracts the quality values of a sequence file fragment. (String)
assignQualId | Extracts the quality value id of a sequence file fragment. (String)
assignSeq | Extracts the sequence part of a sequence file fragment. (String)
assignSeq | Extracts the sequence part of a sequence file fragment. (String)
assignSeqId | Extracts the sequence id of a sequence file fragment. (String)
assignValue | Assigns value to item. (Container)
atNil | Tests whether iterator is at nil position. (String)
back | The last item in container. (Container)
begin | The begin of a container. (String)
begin | The begin of a container. (String)
begin | The begin of a container. (String)
beginPosition | Begin position of object in host. (String)
beginPosition | Begin position of object in host. (String)
canParseString | Test whether an automaton can parse a string completely. (String)
capacity | The maximal length. (String)
clear | Resets an object. (String)
close | Closes a file.
collectLeaves | Returns all leaves underneath a given vertex. (String)
complement | Complement a sequence or a StringSet in-place. (String)
createIntervalTree | Create an interval tree. (String)
createOracle | Creates a factor oracle. (String)
createOracleOnReverse | Creates a factor oracle for the reversed string. (String)
createSuffixTrie | Creates a trie of all suffixes of a text. (String)
createTrie | Creates a trie. (String)
createTrieOnReverse | Creates a trie for all reversed keywords. (String)
determineConsensusSeq | Determines the consensus pattern of a given profile. (String)
empty | Test a container for being empty. (String)
end | The end of a container. (String)
end | The end of a container. (String)
end | The end of a container. (String)
endPosition | End position of object in host. (String)
endPosition | End position of object in host. (String)
erase | Erases a part of a container (String)
eraseBack | Deletes the last item of a container and reduces its size by 1. The container must have a size greater than or equal to 1. (String)
extendSeed | Extends a seed. (String)
extendSeed | Extends a seed. (String)
extendSeeds | Extension of seeds. (String)
extendSeeds | Extension of seeds. (String)
extendSeedScore | Extends a seed and increases the score. (String)
extendSeedScore | Extends a seed and increases the score. (String)
extendSeedsScore | Extension of seeds with score calculation. (String)
extendSeedsScore | Extension of seeds with score calculation. (String)
findIntervalsExcludeTouching | :Find all intervals that contain the query point, exclude intervals that touch the query, i.e. where the query point equals the start or end point. (String)
flush | Waits for all open requests to complete.
front | The first item in container. (Container)
getAlignment | Constructs a alignment from a ChainedSeed. (String)
getAlignment | Constructs a alignment from a ChainedSeed. (String)
getDistanceMatrix | Computes a pairwise distance matrix from an alignment graph. (String)
getSuccessor | Gets the successor for a given vertex and an edge label. For an automaton a single character is required whereas for a word graph getSuccessor takes a string. (String)
getValue | Access to the value. (Container)
goDown | Iterates down one edge or a path in a tree. (String)
goNil | Moves iterator to nil position. (String)
heaviestIncreasingSubsequence | Computes the heaviest increasing subsequence. (String)
id | A value that identifies the underlying sequence. (String)
infix | Creates infix object. (String)
infixWithLength | Creates infix object. (String)
integrateAlign | Integrates an alignment into another by copying the gaps. (String)
iter | Iterator to item at given position. (String)
length | The number of items/characters. (String)
length | The number of items/characters. (String)
length | The number of items/characters. (String)
longestCommonSubsequence | Computes the longest common subsequence. (String)
longestCommonSubsequence | Computes the longest common subsequence. (String)
longestIncreasingSubsequence | Computes the longest increasing subsequence. (String)
moveValue | Assigns value to item. (Container)
moveValue | Assigns value to item. (Container)
open | Opens a file.
openTemp | Opens a temporary file.
parseString | Parses a string one character at a time and moves accordingly in the automaton. (String)
position | Position of an iterator. (Container)
prefix | Creates prefix object. (String)
replace | Replaces a part of a container with another container. (String)
replace | Replaces a part of a container with another container. (String)
reserve | Increases the capacity. (String)
resize | Resizes a container. If the new length exceeds the old length the new elements are filled with copies of value. (String)
resize | Resizes a container. If the new length exceeds the old length the new elements are filled with copies of value. (String)
resizeSpace | Makes free space in container (String)
resizeSpace | Makes free space in container (String)
reverseComplement | Reverse and complement a sequence or a StringSet in-place. (String)
scoreSeed | Calculates the score of a seed. (String)
scoreSeed | Calculates the score of a seed. (String)
setHaystack | Sets the haystack of a Finder object. (String)
setHost | Sets the host of an object. (String)
setNeedle | Sets the needle of a Pattern object and optionally induces preprocessing. (String)
shapeToString | Converts a given shape into a sequence of '1' (relevant position) and '0' (irrelevant position). (String)
shareResources | Determines whether two sequences share the same resource. (String)
slowNjTree | Computes a guide tree from a distance matrix. (String)
stringSetLimits | Retrieves a string of delimiter positions of a StringSet which is needed for local<->global position conversions. (String)
stringToShape | Takes a shape given as a string of '1' (relevant position) and '0' (irrelevant position) and converts it into a Shape object. (String)
suffix | Creates suffix object. (String)
swap | Swaps the contents of two values. (String)
swap | Swaps the contents of two values. (String)
toCString | Access sequence as c-style string. (String)
toLower | Convert characters in sequence or StringSet to lower case in-place. (String)
topologicalSort | Performs a topological sort on a directed acyclic graph (DAG). (String)
toUpper | Convert characters in sequence or StringSet to lower case in-place. (String)
upgmaTree | Computes a guide tree from a distance matrix. (String)
value | Reference to the value. (String)

Example Programs
ModView, ModReverse, Nested Modifiers
SeqAn - Sequence Analysis Library - www.seqan.de

Page built @2012/03/14 16:34:51