Boost C++ Libraries Home Libraries People FAQ More

PrevUpHomeNext

Class template basic_augmented_string

boost::genetics::basic_augmented_string — Containter for bases ACGT and occasional runs of 'N' and other letters.

Synopsis

// In header: <boost/genetics/augmented_string.hpp>

template<typename WordType, typename ParentType, typename IndexArrayType, 
         typename RleArrayType> 
class basic_augmented_string : public ParentType {
public:
  // types
  typedef IndexArrayType::value_type index_type;
  typedef ParentType                 parent;    
  typedef RleArrayType::value_type   rle_type;  

  // construct/copy/destruct
  basic_augmented_string();
  basic_augmented_string(const char *);
  template<typename StringType> 
    basic_augmented_string(const StringType &, size_t = 0, 
                           size_t = ~(size_t) 0);
  template<typename Mapper> 
    basic_augmented_string(Mapper &, typename Mapper::is_mapper * = 0);

  // public member functions
  void append(const char *);
  template<typename InIter> void append(InIter, InIter);
  operator std::string() const;
  char operator[](size_t) const;
  void resize(size_t, char = 'A');
  std::string substr(size_t = 0, size_t = ~(size_t) 0, bool = false) const;
  void swap(basic_augmented_string &);
  void write_binary(writer &) const;

  // private member functions
  template<typename InIter> void internal_append(size_t, InIter, InIter);
};

Description

basic_augmented_string public construct/copy/destruct

  1. basic_augmented_string();
  2. basic_augmented_string(const char * str);
  3. template<typename StringType> 
      basic_augmented_string(const StringType & str, size_t pos = 0, 
                             size_t n = ~(size_t) 0);
  4. template<typename Mapper> 
      basic_augmented_string(Mapper & map, typename Mapper::is_mapper * p = 0);

basic_augmented_string public member functions

  1. void append(const char * str);
  2. template<typename InIter> void append(InIter b, InIter e);
  3. operator std::string() const;
  4. char operator[](size_t base) const;
  5. void resize(size_t new_size, char chr = 'A');
  6. std::string substr(size_t offset = 0, size_t length = ~(size_t) 0, 
                       bool rev_comp = false) const;
  7. void swap(basic_augmented_string & rhs);
  8. void write_binary(writer & wr) const;

basic_augmented_string private member functions

  1. template<typename InIter> 
      void internal_append(size_t num_bases, InIter b, InIter e);

PrevUpHomeNext