Example #1
0
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;
}
Example #2
0
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;
}
Example #3
0
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;
}
Example #4
0
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");
}