LocARNA-1.9.2
|
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