tesseract  3.03
/usr/local/google/home/jbreiden/tesseract-ocr-read-only/ccmain/pagewalk.cpp
Go to the documentation of this file.
00001 /**********************************************************************
00002  * File:        pagewalk.cpp  (Formerly walkers.c)
00003  * Description: Block list processors
00004  * Author:      Phil Cheatle
00005  * Created:     Thu Oct 10 16:25:24 BST 1991
00006  *
00007  * (C) Copyright 1991, Hewlett-Packard Ltd.
00008  ** Licensed under the Apache License, Version 2.0 (the "License");
00009  ** you may not use this file except in compliance with the License.
00010  ** You may obtain a copy of the License at
00011  ** http://www.apache.org/licenses/LICENSE-2.0
00012  ** Unless required by applicable law or agreed to in writing, software
00013  ** distributed under the License is distributed on an "AS IS" BASIS,
00014  ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00015  ** See the License for the specific language governing permissions and
00016  ** limitations under the License.
00017  *
00018  **********************************************************************/
00019 
00020 #include "pageres.h"
00021 #include "tesseractclass.h"
00022 
00029 namespace tesseract {
00030 void Tesseract::process_selected_words(
00031     PAGE_RES* page_res, // blocks to check
00032     TBOX & selection_box,
00033     BOOL8(tesseract::Tesseract::*word_processor)(  // function to call
00034         BLOCK* block, ROW* row, WERD_RES* word_res)) {
00035   for (PAGE_RES_IT page_res_it(page_res); page_res_it.word() != NULL;
00036        page_res_it.forward()) {
00037     WERD* word = page_res_it.word()->word;
00038     if (word->bounding_box().overlap(selection_box)) {
00039       if (!((this->*word_processor)(page_res_it.block()->block,
00040                                     page_res_it.row()->row,
00041                                     page_res_it.word())))
00042         return;
00043     }
00044   }
00045 }
00046 }  // namespace tesseract
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines