vector<string> extract_sorted_suffixes_for_latex(const tCsa &csa){ vector<string> text(csa.size()); for (size_type i=0; i < csa.size(); ++i){ string tmp = algorithm::extract(csa, csa[i], csa.size()-1); for (size_t j=0; j < tmp.size(); ++j) text[i] += util::to_latex_string((unsigned char)tmp[j]); } return text; }
void do_something(const tCsa &csa){ stop_watch sw; uint64_t sum=0; sw.start(); for(size_t i=0; i<csa.size() and i<10000000;++i){ sum+=csa.psi(i); } sw.stop(); cout << sw.get_real_time() << endl; cout<<"sum="<<sum<<endl; }
void do_something(const tCsa& csa) { uint64_t sum=0; auto start = timer::now(); for (size_t i=0; i<csa.size() and i<10000000; ++i) { sum+=csa.psi(i); } auto stop = timer::now(); cout << duration_cast<microseconds>(stop-start).count() << endl; cout <<"sum="<<sum<<endl; }
void write_tikz_output_bwd(ostream &out, const tCsa &csa, const tBitVector &bf, const tBitVector &bl, const bit_vector &bm, size_type b, const vector<bwd_block_info> &fwd_blocks_in_bwd, const int_vector<> &min_depth){ typedef bit_vector::size_type size_type; begin_tikzpicture(out, "font=\\tt, inner sep=0.1mm, remember picture"); write_y_column(out, csa.size()+1); int_vector<> v(csa.size()); util::set_to_id(v); write_tikz_column_from_container(out, v, "i"); write_tikz_column_from_container(out, csa.bwt,"bwt"); write_tikz_column_from_container(out, bl,"bwdbl"); write_tikz_column_from_container(out, bf,"bwdbf"); vector<string> text = extract_sorted_suffixes_for_latex(csa); write_tikz_column_from_container(out, text, "text"); end_tikzpicture(out); write_tikz_array(out, fwd_blocks_in_bwd, "fwdBlocksInBwd"); write_tikz_array(out, bl, "bwdBlArray"); write_tikz_array(out, csa.bwt, "bwdBWTArray", true); write_tikz_array(out, bm, "bmArray"); write_tikz_array(out, min_depth, "minDepthArray"); }