tesseract  5.0.0
tesseract::DawgLoader Struct Reference

Public Member Functions

 DawgLoader (const std::string &lang, TessdataType tessdata_dawg_type, int dawg_debug_level, TessdataManager *data_file)
 
DawgLoad ()
 

Public Attributes

std::string lang_
 
TessdataManagerdata_file_
 
TessdataType tessdata_dawg_type_
 
int dawg_debug_level_
 

Detailed Description

Definition at line 27 of file dawg_cache.cpp.

Constructor & Destructor Documentation

◆ DawgLoader()

tesseract::DawgLoader::DawgLoader ( const std::string &  lang,
TessdataType  tessdata_dawg_type,
int  dawg_debug_level,
TessdataManager data_file 
)
inline

Definition at line 28 of file dawg_cache.cpp.

30  : lang_(lang)
31  , data_file_(data_file)
32  , tessdata_dawg_type_(tessdata_dawg_type)
33  , dawg_debug_level_(dawg_debug_level) {}
TessdataType tessdata_dawg_type_
Definition: dawg_cache.cpp:39
TessdataManager * data_file_
Definition: dawg_cache.cpp:38

Member Function Documentation

◆ Load()

Dawg * tesseract::DawgLoader::Load ( )

Definition at line 51 of file dawg_cache.cpp.

51  {
52  TFile fp;
54  return nullptr;
55  }
56  DawgType dawg_type;
57  PermuterType perm_type;
58  switch (tessdata_dawg_type_) {
59  case TESSDATA_PUNC_DAWG:
61  dawg_type = DAWG_TYPE_PUNCTUATION;
62  perm_type = PUNC_PERM;
63  break;
66  dawg_type = DAWG_TYPE_WORD;
67  perm_type = SYSTEM_DAWG_PERM;
68  break;
71  dawg_type = DAWG_TYPE_NUMBER;
72  perm_type = NUMBER_PERM;
73  break;
75  dawg_type = DAWG_TYPE_WORD; // doesn't actually matter
76  perm_type = COMPOUND_PERM; // doesn't actually matter
77  break;
79  dawg_type = DAWG_TYPE_WORD;
80  perm_type = SYSTEM_DAWG_PERM;
81  break;
82  case TESSDATA_FREQ_DAWG:
83  dawg_type = DAWG_TYPE_WORD;
84  perm_type = FREQ_DAWG_PERM;
85  break;
86  default:
87  return nullptr;
88  }
89  auto *retval = new SquishedDawg(dawg_type, lang_, perm_type, dawg_debug_level_);
90  if (retval->Load(&fp)) {
91  return retval;
92  }
93  delete retval;
94  return nullptr;
95 }
DawgType
Definition: dawg.h:64
@ DAWG_TYPE_NUMBER
Definition: dawg.h:67
@ DAWG_TYPE_WORD
Definition: dawg.h:66
@ DAWG_TYPE_PUNCTUATION
Definition: dawg.h:65
@ TESSDATA_UNAMBIG_DAWG
@ TESSDATA_LSTM_SYSTEM_DAWG
@ TESSDATA_NUMBER_DAWG
@ TESSDATA_LSTM_PUNC_DAWG
@ TESSDATA_BIGRAM_DAWG
@ TESSDATA_LSTM_NUMBER_DAWG
@ TESSDATA_SYSTEM_DAWG
PermuterType
Definition: ratngs.h:231
@ SYSTEM_DAWG_PERM
Definition: ratngs.h:240
@ NUMBER_PERM
Definition: ratngs.h:238
@ COMPOUND_PERM
Definition: ratngs.h:244
@ PUNC_PERM
Definition: ratngs.h:233
@ FREQ_DAWG_PERM
Definition: ratngs.h:243
bool GetComponent(TessdataType type, TFile *fp)

Member Data Documentation

◆ data_file_

TessdataManager* tesseract::DawgLoader::data_file_

Definition at line 38 of file dawg_cache.cpp.

◆ dawg_debug_level_

int tesseract::DawgLoader::dawg_debug_level_

Definition at line 40 of file dawg_cache.cpp.

◆ lang_

std::string tesseract::DawgLoader::lang_

Definition at line 37 of file dawg_cache.cpp.

◆ tessdata_dawg_type_

TessdataType tesseract::DawgLoader::tessdata_dawg_type_

Definition at line 39 of file dawg_cache.cpp.


The documentation for this struct was generated from the following file: