void export_sequence()
{
void (Sequence::*load_fasta_piii)(const fs::path, int, int, int) = &Sequence::load_fasta;
+ void (Sequence::*add_annotation_ssii)(
+ std::string,
+ std::string,
+ Sequence::size_type,
+ Sequence::size_type
+ ) = &Sequence::add_annotation;
class_<Sequence>("Sequence")
.def(init<std::string>())
+ .def("__getitem__", &Sequence::at, "return base pair at specified location",
+ return_value_policy<return_by_value>())
.def("__len__", &Sequence::size, "return the length of the sequence")
.def("__repr__", &Sequence::get_sequence, "display as string")
.def("__str__", &Sequence::get_sequence, "cast to string")
- .def("add_annotation", &Sequence::add_annotation, "append an annotation")
+ .def("add_annotation", add_annotation_ssii,
+ "create an annotation from name, type, start, stop")
//.def("annotations", &Sequence::annotations, "return list of annotations")
.def("add_motif", &Sequence::add_motif, "add a motif sequenence")
.def("clear", &Sequence::clear, "clear the sequence and its annotations")