2 * ocr.c forms a mostly-self-contained bit
3 * so we put its declarations in this separate file
6 * This is part of ypp-sc-tools, a set of third-party tools for assisting
7 * players of Yohoho Puzzle Pirates.
9 * Copyright (C) 2009 Ian Jackson <ijackson@chiark.greenend.org.uk>
11 * This program is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation, either version 3 of the License, or
14 * (at your option) any later version.
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
21 * You should have received a copy of the GNU General Public License
22 * along with this program. If not, see <http://www.gnu.org/licenses/>.
24 * Yohoho and Puzzle Pirates are probably trademarks of Three Rings and
25 * are used without permission. This program is not endorsed or
26 * sponsored by Three Rings.
35 typedef uint32_t Pixcol;
36 #define PSPIXCOL(priscan) priscan##32
39 const char *s; /* valid until next call to ocr() */
40 int l,r; /* column numbers */
41 unsigned ctxmap; /* match context index */
45 typedef const struct OcrCellTypeInfo *OcrCellType;
46 extern const struct OcrCellTypeInfo ocr_celltype_text;
47 extern const struct OcrCellTypeInfo ocr_celltype_number;
48 const char *ocr_celltype_name(OcrCellType ct);
51 typedef struct OcrReader OcrReader;
52 OcrReader *ocr_init(int h);
54 OcrResultGlyph *ocr(OcrReader *rd, OcrCellType, int w, Pixcol cols[]);
55 /* return value is array terminated by {0,-1,-1}
56 * array is valid until next call to ocr()
60 extern const char *o_resolver;
62 FILE *resolve_start(void);
63 void resolve_finish(void);