const_iterator end() const;
//! is our sequence empty?
bool empty() const;
+ //! find first
+ size_type find_first_not_of(const std::string&, size_type index=0);
//! how many base pairs are there in our sequence
size_type size() const;
//! alias for size (used by string)
size_type length() const;
+ //! reverse iterator
+ const_reverse_iterator rbegin() const;
+ //! reverse end iterator
+ const_reverse_iterator rend() const;
+ //! is our sequence empty?
//! start position relative to "base" sequence
size_type start() const;
//! one past the last position relative to "base" sequence
alphabet_ref a,
int seq_num=1,
int start_index=0, int end_index=0);
- void load_fasta(std::iostream& file,
+ void load_fasta(std::istream& file,
int seq_num=1, int start_index=0, int end_index=0);
//! load sequence from stream
//! \throw mussa_load_error
//! \throw sequence_empty_error
//! \throw sequence_empty_file_error
- void load_fasta(std::iostream& file,
+ void load_fasta(std::istream& file,
alphabet_ref a,
int seq_num=1,
int start_index=0, int end_index=0);
//! load sequence annotations
//! \throws mussa_load_error
void load_annot(std::fstream& data_stream, int start_index, int end_index);
- bool parse_annot(std::string data, int start_index=0, int end_index=0);
+ //! parse annotation file
+ /*! \throws annotation_load_error
+ */
+ void parse_annot(std::string data, int start_index=0, int end_index=0);
//! add an annotation to our list of annotations
void add_annotation(const annot& a);
const std::list<annot>& annotations() const;