120 PolySites::PolySites (
void) : PolyTable()
134 PolySites::PolySites ( std::vector < double > List, std::vector < std::string > stringList) :
139 PolySites::PolySites (PolyTable::const_site_iterator beg,
140 PolyTable::const_site_iterator end):
155 PolyTable::operator=(std::move(pt));
161 PolyTable::operator=(pt);
165 std::istream & PolySites::read(std::istream &s)
167 std::vector<double> _pos;
168 std::vector<std::string> _ind;
171 std::getline(s,temp);
172 std::istringstream i(temp);
173 std::copy(std::istream_iterator<double>(i),std::istream_iterator<double>(),
174 std::back_inserter(_pos));
176 while (std::getline(s,temp))
179 std::istringstream i(temp);
180 std::copy(std::istream_iterator<char>(i),std::istream_iterator<char>(),
181 std::back_inserter(temp2));
182 _ind.push_back(temp2);
184 if (! assign( std::move(_pos), std::move(_ind) ) )
186 throw std::runtime_error(
"PolySites::read() -- format error, unable to assign data");
201 for(
unsigned i = 0 ; i < this->numsites() ; ++i)
204 stream << this->position(i);
206 stream <<
'\t' << this->position(i);
210 for(
unsigned i = 0 ; i < this->size() ; ++i)
212 for(
unsigned j = 0 ; j < this->numsites() ; ++j)
215 stream << (*this)[i][j];
217 stream <<
'\t'<<(*this)[i][j];
219 if(i < this->size()-1)
The base class for polymorphism tables.
Polymorphism tables for sequence data.
std::ostream & print(std::ostream &stream) const
output a tab-delimited array of positions and character states
The namespace in which this library resides.
Sequence::PolySites, generates polymorphism tables from data.
Declaration of Sequence::Fasta streams.