45 #include "../Sequence.h" 46 #include "../Container/SequenceContainer.h" 47 #include "../Container/VectorSequenceContainer.h" 48 #include "../Container/AlignedSequenceContainer.h" 99 Phylip(
bool extended =
true,
bool sequential =
true,
unsigned int charsByLine = 100,
bool checkSequenceNames =
true,
const std::string& split =
" "):
184 const std::vector<std::string>
splitNameAndSequence(
const std::string& s)
const throw (Exception);
188 std::vector<std::string>
getSizedNames(
const std::vector<std::string>& names)
const;
const std::string & getSplit() const
void checkNames(bool yn)
Tell whether the sequence names should be checked when reading from files.
virtual SequenceContainer * readSequences(const std::string &path, const Alphabet *alpha) const
Create a new container from a file.
unsigned int charsByLine_
The maximum number of chars to be written on a line.
void writeInterleaved(std::ostream &out, const SequenceContainer &sc) const
void readSequential(std::istream &in, SiteContainer &asc) const
The SiteContainer interface.
const std::string getFormatDescription() const
This alphabet is used to deal NumericAlphabet.
std::vector< std::string > getSizedNames(const std::vector< std::string > &names) const
void appendAlignmentFromStream(std::istream &input, SiteContainer &sc) const
Append sequences to a container from a stream.
const std::string getFormatName() const
Partial implementation of the IAlignment interface, dedicated to alignment readers.
void readInterleaved(std::istream &in, SiteContainer &asc) const
void writeAlignment(const std::string &path, const SiteContainer &sc, bool overwrite) const
Write a container to a file.
void writeAlignment(std::ostream &output, const SiteContainer &sc) const
Write a container to a stream.
Phylip(bool extended=true, bool sequential=true, unsigned int charsByLine=100, bool checkSequenceNames=true, const std::string &split=" ")
Build a new Phylip file reader.
virtual SequenceContainer * readSequences(std::istream &input, const Alphabet *alpha) const
Create a new container from a stream.
void writeSequential(std::ostream &out, const SequenceContainer &sc) const
const std::vector< std::string > splitNameAndSequence(const std::string &s) const
void setSplit(const std::string &split)
unsigned int getNumberOfSequences(const std::string &path) const
Partial implementation of the OAlignment interface.
The SequenceContainer interface.
virtual void readAlignment(std::istream &input, SiteContainer &sc) const
Add sequences to a container from a stream.
void writeAlignment(std::ostream &output, const SiteContainer &sc) const =0
Write a container to a stream.