|
tesseract
3.03
|
#include <rejctmap.h>
Public Member Functions | |
| REJMAP () | |
| REJMAP (const REJMAP &rejmap) | |
| REJMAP & | operator= (const REJMAP &source) |
| ~REJMAP () | |
| void | initialise (inT16 length) |
| REJ & | operator[] (inT16 index) const |
| inT32 | length () const |
| inT16 | accept_count () |
| inT16 | reject_count () |
| void | remove_pos (inT16 pos) |
| void | print (FILE *fp) |
| void | full_print (FILE *fp) |
| BOOL8 | recoverable_rejects () |
| BOOL8 | quality_recoverable_rejects () |
| void | rej_word_small_xht () |
| void | rej_word_tess_failure () |
| void | rej_word_not_tess_accepted () |
| void | rej_word_contains_blanks () |
| void | rej_word_bad_permuter () |
| void | rej_word_xht_fixup () |
| void | rej_word_no_alphanums () |
| void | rej_word_mostly_rej () |
| void | rej_word_bad_quality () |
| void | rej_word_doc_rej () |
| void | rej_word_block_rej () |
| void | rej_word_row_rej () |
Definition at line 205 of file rejctmap.h.
| REJMAP::REJMAP | ( | ) | [inline] |
Definition at line 211 of file rejctmap.h.
{ //constructor
ptr = NULL;
len = 0;
}
| REJMAP::REJMAP | ( | const REJMAP & | rejmap | ) |
Definition at line 279 of file rejctmap.cpp.
{
REJ *to;
REJ *from = source.ptr;
int i;
len = source.length ();
if (len > 0) {
ptr = (REJ *) alloc_struct (len * sizeof (REJ), "REJ");
to = ptr;
for (i = 0; i < len; i++) {
*to = *from;
to++;
from++;
}
}
else
ptr = NULL;
}
| REJMAP::~REJMAP | ( | ) | [inline] |
Definition at line 222 of file rejctmap.h.
{ //destructor
if (ptr != NULL)
free_struct (ptr, len * sizeof (REJ), "REJ");
}
Definition at line 335 of file rejctmap.cpp.
| void REJMAP::full_print | ( | FILE * | fp | ) |
Definition at line 410 of file rejctmap.cpp.
{
int i;
for (i = 0; i < len; i++) {
ptr[i].full_print (fp);
fprintf (fp, "\n");
}
}
| void REJMAP::initialise | ( | inT16 | length | ) |
Definition at line 322 of file rejctmap.cpp.
{
if (ptr != NULL)
free_struct (ptr, len * sizeof (REJ), "REJ");
len = length;
if (len > 0)
ptr = (REJ *) memset (alloc_struct (len * sizeof (REJ), "REJ"),
0, len * sizeof (REJ));
else
ptr = NULL;
}
| inT32 REJMAP::length | ( | ) | const [inline] |
Definition at line 237 of file rejctmap.h.
{ //map length
return len;
}
Definition at line 301 of file rejctmap.cpp.
{
REJ *
to;
REJ *
from = source.ptr;
int
i;
initialise (source.len);
to = ptr;
for (i = 0; i < len; i++) {
*to = *from;
to++;
from++;
}
return *this;
}
Definition at line 230 of file rejctmap.h.
{
ASSERT_HOST (index < len);
return ptr[index]; //no bounds checks
}
| void REJMAP::print | ( | FILE * | fp | ) |
Definition at line 398 of file rejctmap.cpp.
{
int i;
char buff[512];
for (i = 0; i < len; i++) {
buff[i] = ptr[i].display_char ();
}
buff[i] = '\0';
fprintf (fp, "\"%s\"", buff);
}
Definition at line 358 of file rejctmap.cpp.
{ //Any potential rejs?
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accept_if_good_quality ())
return TRUE;
}
return FALSE;
}
Definition at line 347 of file rejctmap.cpp.
{ //Any non perm rejs?
int i;
for (i = 0; i < len; i++) {
if (ptr[i].recoverable ())
return TRUE;
}
return FALSE;
}
| void REJMAP::rej_word_bad_permuter | ( | ) |
Definition at line 456 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_bad_permuter ();
}
}
| void REJMAP::rej_word_bad_quality | ( | ) |
Definition at line 492 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_bad_quality();
}
}
| void REJMAP::rej_word_block_rej | ( | ) |
Definition at line 510 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_block_rej();
}
}
| void REJMAP::rej_word_contains_blanks | ( | ) |
Definition at line 447 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_contains_blanks();
}
}
| void REJMAP::rej_word_doc_rej | ( | ) |
Definition at line 501 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_doc_rej();
}
}
| void REJMAP::rej_word_mostly_rej | ( | ) |
Definition at line 483 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_mostly_rej();
}
}
| void REJMAP::rej_word_no_alphanums | ( | ) |
Definition at line 474 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_no_alphanums();
}
}
| void REJMAP::rej_word_not_tess_accepted | ( | ) |
Definition at line 438 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_not_tess_accepted();
}
}
| void REJMAP::rej_word_row_rej | ( | ) |
Definition at line 519 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_row_rej();
}
}
| void REJMAP::rej_word_small_xht | ( | ) |
Definition at line 420 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
ptr[i].setrej_small_xht ();
}
}
| void REJMAP::rej_word_tess_failure | ( | ) |
Definition at line 429 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
ptr[i].setrej_tess_failure ();
}
}
| void REJMAP::rej_word_xht_fixup | ( | ) |
Definition at line 465 of file rejctmap.cpp.
{ //Reject whole word
int i;
for (i = 0; i < len; i++) {
if (ptr[i].accepted()) ptr[i].setrej_xht_fixup();
}
}
| inT16 REJMAP::reject_count | ( | ) | [inline] |
Definition at line 243 of file rejctmap.h.
{ //How many rejects?
return len - accept_count ();
}
| void REJMAP::remove_pos | ( | inT16 | pos | ) |
Definition at line 369 of file rejctmap.cpp.
{
REJ *new_ptr; //new, smaller map
int i;
ASSERT_HOST (pos >= 0);
ASSERT_HOST (pos < len);
ASSERT_HOST (len > 0);
len--;
if (len > 0)
new_ptr = (REJ *) memset (alloc_struct (len * sizeof (REJ), "REJ"),
0, len * sizeof (REJ));
else
new_ptr = NULL;
for (i = 0; i < pos; i++)
new_ptr[i] = ptr[i]; //copy pre pos
for (; pos < len; pos++)
new_ptr[pos] = ptr[pos + 1]; //copy post pos
//delete old map
free_struct (ptr, (len + 1) * sizeof (REJ), "REJ");
ptr = new_ptr;
}