28 "Debug on fixed pitch test");
30 "Write full metric stuff");
34 "Use correct answer for fixed/prop");
36 "Attempt whole doc/block fixed pitch");
38 "Do even faster pitch algorithm");
40 "Ding rate for mid-cuts");
42 "Ding rate for unbalanced char cells");
45 TO_BLOCK_LIST* port_blocks,
52 TO_BLOCK_LIST *blocks,
67 TO_BLOCK_LIST* port_blocks,
124 int16_t projection_left,
125 int16_t projection_right,
127 float& initial_pitch,
129 int16_t& best_mid_cuts,
130 ICOORDELT_LIST* best_cells,
136 int16_t projection_left,
137 int16_t projection_right,
139 float& initial_pitch,
141 int16_t& best_mid_cuts,
142 ICOORDELT_LIST* best_cells,
148 int16_t projection_left,
149 int16_t projection_right,
154 ICOORDELT_LIST* row_cells,
162 int16_t projection_left,
163 int16_t projection_right,
167 ICOORDELT_LIST* row_cells,
175 int16_t projection_left,
176 int16_t projection_right,
void fix_row_pitch(TO_ROW *bad_row, TO_BLOCK *bad_block, TO_BLOCK_LIST *blocks, int32_t row_target, int32_t block_target)
void print_block_counts(TO_BLOCK *block, int32_t block_index)
void compute_fixed_pitch(ICOORD page_tr, TO_BLOCK_LIST *port_blocks, float gradient, FCOORD rotation, bool testing_on)
bool find_row_pitch(TO_ROW *row, int32_t maxwidth, int32_t dm_gap, TO_BLOCK *block, int32_t block_index, int32_t row_index, bool testing_on)
#define BOOL_VAR_H(name, val, comment)
float tune_row_pitch(TO_ROW *row, STATS *projection, int16_t projection_left, int16_t projection_right, float space_size, float &initial_pitch, float &best_sp_sd, int16_t &best_mid_cuts, ICOORDELT_LIST *best_cells, bool testing_on)
#define double_VAR_H(name, val, comment)
bool textord_debug_pitch_metric
float tune_row_pitch2(TO_ROW *row, STATS *projection, int16_t projection_left, int16_t projection_right, float space_size, float &initial_pitch, float &best_sp_sd, int16_t &best_mid_cuts, ICOORDELT_LIST *best_cells, bool testing_on)
bool count_pitch_stats(TO_ROW *row, STATS *gap_stats, STATS *pitch_stats, float initial_pitch, float min_space, bool ignore_outsize, bool split_outsize, int32_t dm_gap)
void compute_block_pitch(TO_BLOCK *block, FCOORD rotation, int32_t block_index, bool testing_on)
double textord_projection_scale
bool textord_fast_pitch_test
bool textord_show_row_cuts
bool try_block_fixed(TO_BLOCK *block, int32_t block_index)
void print_pitch_sd(TO_ROW *row, STATS *projection, int16_t projection_left, int16_t projection_right, float space_size, float initial_pitch)
bool row_pitch_stats(TO_ROW *row, int32_t maxwidth, bool testing_on)
float compute_pitch_sd(TO_ROW *row, STATS *projection, int16_t projection_left, int16_t projection_right, float space_size, float initial_pitch, float &sp_sd, int16_t &mid_cuts, ICOORDELT_LIST *row_cells, bool testing_on, int16_t start=0, int16_t end=0)
bool textord_debug_pitch_test
bool try_doc_fixed(ICOORD page_tr, TO_BLOCK_LIST *port_blocks, float gradient)
bool fixed_pitch_row(TO_ROW *row, BLOCK *block, int32_t block_index)
void find_repeated_chars(TO_BLOCK *block, bool testing_on)
void plot_fp_word(TO_BLOCK *block, float pitch, float nonspace)
float compute_pitch_sd2(TO_ROW *row, STATS *projection, int16_t projection_left, int16_t projection_right, float initial_pitch, int16_t &occupation, int16_t &mid_cuts, ICOORDELT_LIST *row_cells, bool testing_on, int16_t start=0, int16_t end=0)
bool textord_show_page_cuts
void count_block_votes(TO_BLOCK *block, int32_t &def_fixed, int32_t &def_prop, int32_t &maybe_fixed, int32_t &maybe_prop, int32_t &corr_fixed, int32_t &corr_prop, int32_t &dunno)
bool try_rows_fixed(TO_BLOCK *block, int32_t block_index, bool testing_on)
bool compute_rows_pitch(TO_BLOCK *block, int32_t block_index, bool testing_on)
double textord_balance_factor
bool textord_blockndoc_fixed