00001 #ifndef _NUCLEIC_ACIDS_BIT_CHAR_TRAITS_H 00002 #define _NUCLEIC_ACIDS_BIT_CHAR_TRAITS_H 00003 00004 #include "bit_char_traits.h" 00015 namespace bioinfo 00016 { 00017 00033 template<size_t NB> 00034 class nucleic_acid_min_traits : public bit_char_traits<NB> { 00035 public: 00036 typedef typename bit_char_traits<NB>::char_type char_type; 00037 typedef typename std::char_traits<char>::char_type basic_char_type; 00038 static std::size_t 00039 bit_size() { 00040 return 2; 00041 } 00042 inline static basic_char_type char_code(char_type); 00043 inline static std::size_t bit_code(basic_char_type); 00044 inline static bool valid_code(basic_char_type); 00045 }; 00046 } 00047 00048 #include "nucleic_acid_bit_char_traits.hpp" 00049 00050 #endif // _NUCLEIC_ACIDS_BIT_CHAR_TRAITS_H