LocARNA-1.9.2
src/LocARNA/sequence.hh
00001 #ifndef LOCARNA_SEQUENCE_HH
00002 #define LOCARNA_SEQUENCE_HH
00003 
00004 #ifdef HAVE_CONFIG_H
00005 #include <config.h>
00006 #endif
00007 
00008 #include <vector>
00009 #include "multiple_alignment.hh"
00010 
00011 namespace LocARNA {
00012 
00028     class Sequence : public MultipleAlignment {
00029         // BEWARE: don't define attributes in sequence! In
00030         // MultipleAlignment.as_sequence(), we rely on a simple upcast
00031         // to convert MultipleAlignment objects to Sequence objects
00032 
00033     public:
00037         Sequence() : MultipleAlignment() {}
00038 
00044         Sequence(const std::string &name, const std::string &sequence)
00045             : MultipleAlignment(name, sequence) {}
00046 
00057         AliColumn operator[](size_type col_index) const {
00058             return column(col_index);
00059         }
00060 
00068         std::vector<std::string>
00069         names() const;
00070     };
00071 
00072 } // end namespace LocARNA
00073 
00074 #endif
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends