#pragma once #include #include #include #include "spoa-sys/spoa/include/spoa/spoa.hpp" namespace spoa { std::unique_ptr create_alignment_engine(spoa::AlignmentType type, std::int8_t m, std::int8_t n, std::int8_t g, std::int8_t e, std::int8_t q, std::int8_t c); std::unique_ptr align(spoa::AlignmentEngine &engine, const char *sequence, std::uint32_t sequence_len, const Graph &graph); std::unique_ptr create_graph(); void add_alignment(spoa::Graph &graph, const spoa::Alignment &alignment, const char *sequence, std::uint32_t sequence_len, const char *quality, std::uint32_t quality_len); std::unique_ptr generate_consensus(spoa::Graph &graph); std::unique_ptr > generate_multiple_sequence_alignment(spoa::Graph &graph, bool include_consensus); } // namespace spoa