00001 #ifndef MFASTA_H
00002 #define MFASTA_H 1
00003
00004 #include <string>
00005 #include <list>
00006 #include <iostream>
00007 #include "fasta.h"
00008
00009 namespace bioinfo
00010 {
00011
00021 template <typename seqtype = std::string>
00022 class mfasta : public std::list<fasta<seqtype>*>
00023 {
00024 public:
00030 mfasta(const std::string&);
00031
00032 ~mfasta();
00033
00038 void write(const std::string&) const;
00039
00040 void read(const std::string&);
00041
00042 };
00043
00044 }
00045
00046 namespace std
00047 {
00048 template <typename seqtype>
00049 std::ostream&
00050 operator<<(std::ostream&, const bioinfo::mfasta<seqtype>&);
00051
00052 template <typename seqtype>
00053 std::istream&
00054 operator>>(std::istream&, const bioinfo::mfasta<seqtype>&);
00055 }
00056
00057
00058 #include "mfasta.hpp"
00059
00060 #endif // MFASTA_H