//! Swap method for csa_bitcompressed void swap(csa_bitcompressed& csa) { if (this != &csa) { m_sa.swap(csa.m_sa); m_isa.swap(csa.m_isa); m_alphabet.swap(csa.m_alphabet); } }
void copy(const csa_wt& csa) { m_wavelet_tree = csa.m_wavelet_tree; m_sa_sample = csa.m_sa_sample; m_isa_sample = csa.m_isa_sample; m_isa_sample.set_vector(&m_sa_sample); m_alphabet = csa.m_alphabet; }
void copy(const csa_sada& csa) { m_psi = csa.m_psi; m_sa_sample = csa.m_sa_sample; m_isa_sample = csa.m_isa_sample; m_isa_sample.set_vector(&m_sa_sample); m_alphabet = csa.m_alphabet; };
/*! \param out Output stream to write the data structure. * \return The number of written bytes. */ size_type serialize(std::ostream& out, structure_tree_node* v=nullptr, std::string name="")const { structure_tree_node* child = structure_tree::add_child(v, name, util::class_name(*this)); size_type written_bytes = 0; written_bytes += m_sa.serialize(out, child, "m_sa"); written_bytes += m_isa.serialize(out, child, "m_isa"); written_bytes += m_alphabet.serialize(out, child, "m_alphabet"); structure_tree::add_size(child, written_bytes); return written_bytes; }
void load(std::istream& in) { m_sa.load(in); m_isa.load(in); m_alphabet.load(in); }