\section{sequencedb}
\label{module_sequencedb}
This module contains the following objects

\begin{itemize}
\item \ref{object_SequenceDB} SequenceDB

\item \ref{object_FileSource} FileSource

\item This module also contains some factory methods
\end{itemize}
\subsection{sequencedb factory methods}
\subsubsection{single_fasta_SequenceDB}
\begin{description}
\item[External C] {\tt Wise2_single_fasta_SequenceDB (filename)}
\item[Perl] {\tt &Wise2::single_fasta_SequenceDB (filename)}

\end{description}
Arguments
\begin{description}
\item[filename] [UNKN ] name of fastadb [char *]
\item[returns] [UNKN ] Undocumented return value [SequenceDB *]
\end{description}
pre-packed single fasta file db






\subsection{Object SequenceDB}

\label{object_SequenceDB}

The SequenceDB object has the following fields. To see how to access them refer to \ref{accessing_fields}
\begin{description}
\item{name} Type [char * : Scalar] No documentation

\item{fs} Type [FileSource ** : List] No documentation

\item{current_source} Type [int : Scalar] No documentation

\item{current_file} Type [FILE * : Scalar] No documentation

\item{sequence_no} Type [int : Scalar] No documentation

\item{byte_position} Type [int : Scalar] No documentation

\item{has_warned_single} Type [int : Scalar] No documentation

\item{seq_start} Type [int : Scalar] No documentation

\item{seq_end} Type [int : Scalar] No documentation

\end{description}
This is the basic Sequence database
wrapper - it handles all the formats
and the on-the-fly indexing.


Generally it wont be directly used by
an algorithm, which will be using something
specific to the sequence type produce complex 
sequence type objects: ie you will be using
proteindb or cdnadb which internally
will be using this object




Member functions of SequenceDB

\subsubsection{close_SequenceDB}

\begin{description}
\item[External C] {\tt Wise2_close_SequenceDB (last,sdb)}
\item[Perl] {\tt &Wise2::SequenceDB::close_SequenceDB (last,sdb)}

\item[Perl-OOP call] {\tt $obj->close_SequenceDB(sdb)}

\end{description}
Arguments
\begin{description}
\item[last] [WRITE] Sequence object to be freed  [Sequence *]
\item[sdb] [READ ] database to be closed [SequenceDB *]
\item[returns] [UNKN ] Undocumented return value [boolean]
\end{description}
top level function that closes the SequenceDB
after the last sequence is read.


\subsection{Object FileSource}

\label{object_FileSource}

The FileSource object has the following fields. To see how to access them refer to \ref{accessing_fields}
\begin{description}
\item{filename} Type [char * : Scalar] No documentation

\item{input} Type [FILE * : Scalar]  could be stdin! 

\item{format} Type [int : Scalar] No documentation

\item{type} Type [int : Scalar] No documentation

\end{description}
This object represents a single
file source for a database. At
the moment only multiple fasta
files are catered for




Member functions of FileSource

