示例#1
0
        //! Swap operator
        void swap(wt_int_rlmn& wt) {
            if (this != &wt) {
                std::swap(m_size, wt.m_size);
                m_bl.swap(wt.m_bl);
                m_bf.swap(wt.m_bf);
                m_wt.swap(wt.m_wt);

                m_bl_rank.swap(wt.m_bl_rank);
                m_bl_rank.set_vector(&m_bl);
                wt.m_bl_rank.set_vector(&(wt.m_bl));
                m_bf_rank.swap(wt.m_bf_rank);
                m_bf_rank.set_vector(&m_bf);
                wt.m_bf_rank.set_vector(&(wt.m_bf));

                m_bl_select.swap(wt.m_bl_select);
                m_bl_select.set_vector(&m_bl);
                wt.m_bl_select.set_vector(&(wt.m_bl));
                m_bf_select.swap(wt.m_bf_select);
                m_bf_select.set_vector(&m_bf);
                wt.m_bf_select.set_vector(&(wt.m_bf));

                m_C.swap(wt.m_C);
                m_C_bf_rank.swap(wt.m_C_bf_rank);
            }
        }
示例#2
0
        //! Swap method for lcp_dac
        void swap(lcp_dac& lcp_c) {
            m_data.swap(lcp_c.m_data);
            m_overflow.swap(lcp_c.m_overflow);
            util::swap_support(m_overflow_rank, lcp_c.m_overflow_rank,
                               &m_overflow, &(lcp_c.m_overflow));

            m_level_pointer_and_rank.swap(lcp_c.m_level_pointer_and_rank);
            std::swap(m_max_level, lcp_c.m_max_level);
        }
 void swap(nearest_neighbour_dictionary& nnd) {
     // copy all members of the data structure
     m_abs_samples.swap(nnd.m_abs_samples);
     m_differences.swap(nnd.m_differences);
     std::swap(m_ones, nnd.m_ones);
     std::swap(m_size, nnd.m_size);
     m_contains_abs_sample.swap(nnd.m_contains_abs_sample);
     util::swap_support(m_rank_contains_abs_sample, nnd.m_rank_contains_abs_sample,
                        &m_contains_abs_sample, &(nnd.m_contains_abs_sample));
 }
示例#4
0
 //! Swap method
 void swap(rrr_vector& rrr) {
     if (this != &rrr) {
         std::swap(m_size, rrr.m_size);
         m_bt.swap(rrr.m_bt);
         m_btnr.swap(rrr.m_btnr);
         m_btnrp.swap(rrr.m_btnrp);
         m_rank.swap(rrr.m_rank);
         m_invert.swap(rrr.m_invert);
     }
 }
示例#5
0
 //! Swap method
 void swap(gap_vector& v) {
     if (this != &v) {
         std::swap(m_size, v.m_size);
         m_position.swap(v.m_position);
     }
 }
示例#6
0
 //! Swap method for lcp_bitcompressed
 void swap(lcp_bitcompressed& lcp_c) {
     m_lcp.swap(lcp_c.m_lcp);
 }
示例#7
0
 //! Swap method for lcp_byte
 void swap(lcp_byte& lcp_c) {
     m_small_lcp.swap(lcp_c.m_small_lcp);
     m_big_lcp.swap(lcp_c.m_big_lcp);
     m_big_lcp_idx.swap(lcp_c.m_big_lcp_idx);
 }
示例#8
0
 //! Swap method for lcp_wt
 void swap(lcp_wt& lcp_c) {
     m_small_lcp.swap(lcp_c.m_small_lcp);
     m_big_lcp.swap(lcp_c.m_big_lcp);
 }