Skip to content

Commit 545a063

Browse files
committed
improve NO_CUBE_BUILD
1 parent 67ede37 commit 545a063

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

api/baseapi.h

+4
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,9 @@ struct TBLOB;
6565

6666
namespace tesseract {
6767

68+
#ifndef NO_CUBE_BUILD
6869
class CubeRecoContext;
70+
#endif // NO_CUBE_BUILD
6971
class Dawg;
7072
class Dict;
7173
class EquationDetect;
@@ -735,8 +737,10 @@ class TESS_API TessBaseAPI {
735737

736738
void InitTruthCallback(TruthCallback *cb) { truth_cb_ = cb; }
737739

740+
#ifndef NO_CUBE_BUILD
738741
/** Return a pointer to underlying CubeRecoContext object if present. */
739742
CubeRecoContext *GetCubeRecoContext() const;
743+
#endif // NO_CUBE_BUILD
740744

741745
void set_min_orientation_margin(double margin);
742746

training/classifier_tester.cpp

+20-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,12 @@
1919
#include <stdio.h>
2020
#ifndef USE_STD_NAMESPACE
2121
#include "base/commandlineflags.h"
22-
#endif
22+
#endif // USE_STD_NAMESPACE
2323
#include "baseapi.h"
2424
#include "commontraining.h"
25+
#ifndef NO_CUBE_BUILD
2526
#include "cubeclassifier.h"
27+
#endif // NO_CUBE_BUILD
2628
#include "mastertrainer.h"
2729
#include "params.h"
2830
#include "strngs.h"
@@ -37,12 +39,18 @@ DECLARE_STRING_PARAM_FLAG(T);
3739
enum ClassifierName {
3840
CN_PRUNER,
3941
CN_FULL,
42+
#ifndef NO_CUBE_BUILD
4043
CN_CUBE,
4144
CN_CUBETESS,
45+
#endif // NO_CUBE_BUILD
4246
CN_COUNT
4347
};
4448

45-
const char* names[] = {"pruner", "full", "cube", "cubetess", NULL };
49+
const char* names[] = {"pruner", "full",
50+
#ifndef NO_CUBE_BUILD
51+
"cube", "cubetess",
52+
#endif // NO_CUBE_BUILD
53+
NULL };
4654

4755
static tesseract::ShapeClassifier* InitializeClassifier(
4856
const char* classifer_name, const UNICHARSET& unicharset,
@@ -64,13 +72,20 @@ static tesseract::ShapeClassifier* InitializeClassifier(
6472
// We need to initialize tesseract to test.
6573
*api = new tesseract::TessBaseAPI;
6674
tesseract::OcrEngineMode engine_mode = tesseract::OEM_TESSERACT_ONLY;
75+
#ifndef NO_CUBE_BUILD
6776
if (classifier == CN_CUBE || classifier == CN_CUBETESS)
6877
engine_mode = tesseract::OEM_TESSERACT_CUBE_COMBINED;
78+
#endif // NO_CUBE_BUILD
6979
tesseract::Tesseract* tesseract = NULL;
7080
tesseract::Classify* classify = NULL;
71-
if (classifier == CN_CUBE || classifier == CN_CUBETESS ||
81+
if (
82+
#ifndef NO_CUBE_BUILD
83+
classifier == CN_CUBE || classifier == CN_CUBETESS ||
84+
#endif // NO_CUBE_BUILD
7285
classifier == CN_PRUNER || classifier == CN_FULL) {
86+
#ifndef NO_CUBE_BUILD
7387
(*api)->SetVariable("cube_debug_level", "2");
88+
#endif // NO_CUBE_BUILD
7489
if ((*api)->Init(FLAGS_tessdata_dir.c_str(), FLAGS_lang.c_str(),
7590
engine_mode) < 0) {
7691
fprintf(stderr, "Tesseract initialization failed!\n");
@@ -96,10 +111,12 @@ static tesseract::ShapeClassifier* InitializeClassifier(
96111
shape_classifier = new tesseract::TessClassifier(true, classify);
97112
} else if (classifier == CN_FULL) {
98113
shape_classifier = new tesseract::TessClassifier(false, classify);
114+
#ifndef NO_CUBE_BUILD
99115
} else if (classifier == CN_CUBE) {
100116
shape_classifier = new tesseract::CubeClassifier(tesseract);
101117
} else if (classifier == CN_CUBETESS) {
102118
shape_classifier = new tesseract::CubeTessClassifier(tesseract);
119+
#endif // NO_CUBE_BUILD
103120
} else {
104121
fprintf(stderr, "%s tester not yet implemented\n", classifer_name);
105122
return NULL;

0 commit comments

Comments
 (0)