| /********************************************************************** |
| * File: tessinit.c (Formerly tessinit.c) |
| * Description: Stuff from recog.c needed by tessedit. |
| * Author: Ray Smith |
| * Created: Thu Jan 23 09:33:59 GMT 1992 |
| * |
| * (C) Copyright 1992, Hewlett-Packard Ltd. |
| ** Licensed under the Apache License, Version 2.0 (the "License"); |
| ** you may not use this file except in compliance with the License. |
| ** You may obtain a copy of the License at |
| ** http://www.apache.org/licenses/LICENSE-2.0 |
| ** Unless required by applicable law or agreed to in writing, software |
| ** distributed under the License is distributed on an "AS IS" BASIS, |
| ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ** See the License for the specific language governing permissions and |
| ** limitations under the License. |
| * |
| **********************************************************************/ |
| #include "globals.h" |
| |
| #include <math.h> |
| #include <signal.h> |
| #include "tessinit.h" |
| #include "wordrec.h" |
| #include "varable.h" |
| |
| /*---------------------------------------------------------------------- |
| Variables |
| ----------------------------------------------------------------------*/ |
| |
| INT_VAR(wordrec_plots_fx, 0, "plots_fx"); |
| INT_VAR(wordrec_plots_ocr, 0, "plots_ocr"); |
| INT_VAR(wordrec_debugs_fx, 0, "debugs_fx"); |
| INT_VAR(wordrec_debugs_ocr, 0, "debugs_ocr"); |
| INT_VAR(wordrec_acts_fx, 2048, "acts_fx"); |
| INT_VAR(wordrec_acts_ocr, 32, "acts_ocr"); |
| INT_VAR(wordrec_corner_0, 0, "wordrec_corner_0"); |
| INT_VAR(wordrec_corner_1, 0, "wordrec_corner_1"); |
| INT_VAR(wordrec_corner_2, 2550, "wordrec_corner_2"); |
| INT_VAR(wordrec_corner_3, 3508, "wordrec_corner_3"); |
| INT_VAR(wordrec_resolution, 300, "Resolution"); |
| STRING_VAR(wordrec_debugfile, "debugfile", "Debug file name"); |
| |
| int row_number; |
| |
| /*---------------------------------------------------------------------- |
| F u n c t i o n s |
| ----------------------------------------------------------------------*/ |
| |
| /********************************************************************** |
| * program_init |
| * |
| * Initialize all the things in the program that need to be initialized. |
| **********************************************************************/ |
| namespace tesseract { |
| void Wordrec::program_init() { |
| /* Plots flags */ |
| plots[OCR] = wordrec_plots_ocr; |
| debugs[OCR] = wordrec_debugs_ocr; |
| acts[OCR] = wordrec_acts_ocr; |
| plots[FX] = wordrec_plots_fx; |
| debugs[FX] = wordrec_debugs_fx; |
| acts[FX] = wordrec_acts_fx; |
| |
| corners[0] = wordrec_corner_0; |
| corners[1] = wordrec_corner_1; |
| corners[2] = wordrec_corner_2; |
| corners[3] = wordrec_corner_3; |
| } |
| } // namespace tesseract |
| |
| |
| /********************************************************************** |
| * matherr |
| * |
| * Trap procedure for the Standard Math library |
| **********************************************************************/ |
| #ifdef __UNIX |
| int |
| matherr (error) |
| struct exception *error; |
| { |
| if (error->type == DOMAIN) { |
| if (!strcmp (error->name, "sqrt")) { |
| cprintf ("Sqrt:Domain error!!\n"); |
| abort(); |
| } |
| if (!strcmp (error->name, "atan2")) { |
| cprintf ("Arc Tangent error: atan2 (%ld, %ld)\n", |
| error->arg1, error->arg2); |
| abort(); |
| } |
| } |
| return 0; /*all others default */ |
| } |
| #endif |