gnDNASequence.h Source File

Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# gnDNASequence.h

Go to the documentation of this file.

    00001
    00002 // File:            gnDNASequence.h
    00003 // Purpose:         Sequence class
    00004 // Description:     Provides a high level sequence interface to all types of
    00005 //                                      sequence data.
    00006 // Changes:
    00007 // Version:         libGenome 0.1.0
    00008 // Author:          Aaron Darling
    00009 // Last Edited:     April 15, 2001, 10:34:50pm
    00010 // Modified by:
    00011 // Copyright:       (c) Aaron Darling
    00012 // Licenses:        Proprietary
    00014 #ifndef _gnDNASequence_h_
    00015 #define _gnDNASequence_h_
    00016
    00017 #include "gn/gnDefs.h"
    00018
    00019 #include <string>
    00020 #include <list>
    00021 #include "gn/gnSequence.h"
    00022 #include "gn/gnFilter.h"
    00027
    00028 class GNDLLEXPORT gnDNASequence : public gnSequence
    00029 {
    00030 public:
    00034         gnDNASequence();
    00039         gnDNASequence( const gnSeqC* seq );
    00044         gnDNASequence( const string& str );
    00049         gnDNASequence( const gnGenomeSpec& gngs );
    00054         gnDNASequence( const gnFragmentSpec& gnfs );
    00059         gnDNASequence( const gnContigSpec& gncs );
    00065         gnDNASequence( gnSeqC *bases, const gnSeqI length);
    00070         gnDNASequence( const gnDNASequence& seq);
    00071 private:
    00072         gnGenomeSpec *spec;
    00073         list<const gnBaseFilter*> filter_list;
    00074         const gnCompare* comparator;
    00075 }; // class gnDNASequence
    00076
    00077 inline
    00078 gnDNASequence::gnDNASequence() : gnSequence(){
    00079         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00080         comparator = gnCompare::DNASeqCompare();
    00081 }
    00082 inline
    00083 gnDNASequence::gnDNASequence( const gnSeqC* seq ) : gnSequence(seq){
    00084         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00085         comparator = gnCompare::DNASeqCompare();
    00086 }
    00087 inline
    00088 gnDNASequence::gnDNASequence( const string& str ) : gnSequence(str){
    00089         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00090         comparator = gnCompare::DNASeqCompare();
    00091 }
    00092 inline
    00093 gnDNASequence::gnDNASequence( const gnGenomeSpec& gngs ) : gnSequence(gngs){
    00094         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00095         comparator = gnCompare::DNASeqCompare();
    00096 }
    00097 inline
    00098 gnDNASequence::gnDNASequence( const gnFragmentSpec& gnfs ) : gnSequence(gnfs){
    00099         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00100         comparator = gnCompare::DNASeqCompare();
    00101 }
    00102 inline
    00103 gnDNASequence::gnDNASequence( const gnContigSpec& gncs ) : gnSequence(gncs){
    00104         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00105         comparator = gnCompare::DNASeqCompare();
    00106 }
    00107 inline
    00108 gnDNASequence::gnDNASequence( gnSeqC *bases, const gnSeqI length) : gnSequence(bases, length){
    00109         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00110         comparator = gnCompare::DNASeqCompare();
    00111 }
    00112 inline
    00113 gnDNASequence::gnDNASequence( const gnDNASequence& seq) : gnSequence(seq){
    00114         filter_list.push_back(gnFilter::fullDNASeqFilter());
    00115         comparator = gnCompare::DNASeqCompare();
    00116 }
    00117
    00118 #endif
    00119         // _gnDNASequence_h_