MCPcopy Create free account
hub / github.com/creatale/node-dv / Load

Method Load

deps/tesseract/dict/dawg_cache.cpp:58–103  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

56}
57
58Dawg *DawgLoader::Load() {
59 TessdataManager data_loader;
60 if (!data_loader.Init(data_file_name_, dawg_debug_level_)) {
61 return NULL;
62 }
63 if (!data_loader.SeekToStart(tessdata_dawg_type_)) {
64 data_loader.End();
65 return NULL;
66 }
67 FILE *fp = data_loader.GetDataFilePtr();
68 DawgType dawg_type;
69 PermuterType perm_type;
70 switch (tessdata_dawg_type_) {
71 case TESSDATA_PUNC_DAWG:
72 dawg_type = DAWG_TYPE_PUNCTUATION;
73 perm_type = PUNC_PERM;
74 break;
75 case TESSDATA_SYSTEM_DAWG:
76 dawg_type = DAWG_TYPE_WORD;
77 perm_type = SYSTEM_DAWG_PERM;
78 break;
79 case TESSDATA_NUMBER_DAWG:
80 dawg_type = DAWG_TYPE_NUMBER;
81 perm_type = NUMBER_PERM;
82 break;
83 case TESSDATA_BIGRAM_DAWG:
84 dawg_type = DAWG_TYPE_WORD; // doesn't actually matter
85 perm_type = COMPOUND_PERM; // doesn't actually matter
86 break;
87 case TESSDATA_UNAMBIG_DAWG:
88 dawg_type = DAWG_TYPE_WORD;
89 perm_type = SYSTEM_DAWG_PERM;
90 break;
91 case TESSDATA_FREQ_DAWG:
92 dawg_type = DAWG_TYPE_WORD;
93 perm_type = FREQ_DAWG_PERM;
94 break;
95 default:
96 data_loader.End();
97 return NULL;
98 }
99 SquishedDawg *retval =
100 new SquishedDawg(fp, dawg_type, lang_, perm_type, dawg_debug_level_);
101 data_loader.End();
102 return retval;
103}
104
105} // namespace tesseract

Callers

nothing calls this directly

Calls 4

SeekToStartMethod · 0.80
GetDataFilePtrMethod · 0.80
InitMethod · 0.45
EndMethod · 0.45

Tested by

no test coverage detected