00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00028 #ifndef SEQPP_SEQUENCESET_H
00029 #define SEQPP_SEQUENCESET_H
00030
00031 #include <seqpp/PrimarySequenceSet.h>
00032 #include <iomanip>
00043 class SequenceSet : public PrimarySequenceSet<Sequence>, public PrimaryCount
00044 {
00045 private :
00046
00048 int _tmp_nb_seqmax;
00049
00051 int read_fasta( ifstream & f, const string & name_file ="noname");
00053 int read_genbank( ifstream & f, const string & name_file ="noname" );
00054
00056 virtual unsigned long tell_max_count() const{
00057 return _total_length;
00058 }
00059 virtual void compute_count( unsigned long * * extern_count,
00060 short phase,
00061 short initial_phase,
00062 unsigned long beg,
00063 unsigned long end ) const;
00064
00065 public :
00066
00068 SequenceSet ()
00069 : PrimarySequenceSet<Sequence>(), PrimaryCount(){
00070 _tmp_nb_seqmax = 0;
00071 }
00072
00073
00075
00081 SequenceSet ( const string & seq_list_file,
00082 const string & alpha_file,
00083 short order,
00084 int nbseq = BUFFERSEQ );
00085
00087
00095 SequenceSet ( const string & seq_list_file,
00096 short mode,
00097 const string & line2parse,
00098 bool case_sensitivity,
00099 short order,
00100 int nbseq = BUFFERSEQ );
00101
00102
00103
00104
00105
00106 virtual ~SequenceSet() {};
00107 };
00108 #endif // SEQPP_SEQUENCESET_H