98 {
99 static ScrollView *terminator = nullptr;
100 if (terminator == nullptr) {
101 terminator = new ScrollView("XIT", 0, 0, 50, 50, 50, 50, true);
102 }
104
105 auto *popup_menu = new SVMenuNode();
106 popup_menu->AddChild("Choose class to debug", 0, "x", "Class to debug");
107 popup_menu->BuildMenu(debug_win, false);
108
109 const INT_FEATURE_STRUCT *features = sample.features();
110 uint32_t num_features = sample.num_features();
111 for (uint32_t f = 0; f < num_features; ++f) {
113 }
114 debug_win->Update();
115 std::vector<UnicharRating> results;
116
118 SVEvent *ev;
120 do {
121 std::vector<ScrollView *> windows;
122 if (unichar_id >= 0) {
123 tprintf(
"Debugging class %d = %s\n", unichar_id, unicharset.id_to_unichar(unichar_id));
126 } else {
127 tprintf(
"Invalid unichar_id: %d\n", unichar_id);
129 }
130 if (unichar_id >= 0) {
131 tprintf(
"Debugged class %d = %s\n", unichar_id, unicharset.id_to_unichar(unichar_id));
132 }
133 tprintf(
"Right-click in ClassifierDebug window to choose debug class,");
134 tprintf(
" Left-click or close window to quit...\n");
136 do {
137 old_unichar_id = unichar_id;
138 ev = debug_win->AwaitEvent(
SVET_ANY);
139 ev_type = ev->type;
141 if (unicharset.contains_unichar(ev->parameter)) {
142 unichar_id = unicharset.unichar_to_id(ev->parameter);
143 } else {
144 tprintf(
"Char class '%s' not found in unicharset", ev->parameter);
145 }
146 }
147 delete ev;
149 for (auto window : windows) {
150 delete window;
151 }
153 delete debug_win;
154}
void tprintf(const char *format,...)
ScrollView * CreateFeatureSpaceWindow(const char *name, int xpos, int ypos)
void RenderIntFeature(ScrollView *window, const INT_FEATURE_STRUCT *Feature, ScrollView::Color color)
virtual int UnicharClassifySample(const TrainingSample &sample, Image page_pix, int debug, UNICHAR_ID keep_this, std::vector< UnicharRating > *results)
virtual const UNICHARSET & GetUnicharset() const
virtual int DisplayClassifyAs(const TrainingSample &sample, Image page_pix, UNICHAR_ID unichar_id, int index, std::vector< ScrollView * > &windows)