@@ -46,51 +46,45 @@ using tesseract::UnicharRating;
46
46
const float IntegerMatcher::kSEExponentialMultiplier = 0.0 ;
47
47
const float IntegerMatcher::kSimilarityCenter = 0.0075 ;
48
48
49
- #define offset_table_entries \
50
- 255 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , \
51
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , \
52
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 6 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , \
53
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , \
54
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , \
55
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 7 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , \
56
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , \
57
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 6 , \
58
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , \
59
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , \
60
- 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0
61
-
62
- #define INTMATCHER_OFFSET_TABLE_SIZE 256
63
-
64
- #define next_table_entries \
65
- 0 , 0 , 0 , 0x2 , 0 , 0x4 , 0x4 , 0x6 , 0 , 0x8 , 0x8 , 0x0a , 0x08 , 0x0c , 0x0c , 0x0e , \
66
- 0 , 0x10 , 0x10 , 0x12 , 0x10 , 0x14 , 0x14 , 0x16 , 0x10 , 0x18 , 0x18 , 0x1a , \
67
- 0x18 , 0x1c , 0x1c , 0x1e , 0 , 0x20 , 0x20 , 0x22 , 0x20 , 0x24 , 0x24 , 0x26 , \
68
- 0x20 , 0x28 , 0x28 , 0x2a , 0x28 , 0x2c , 0x2c , 0x2e , 0x20 , 0x30 , 0x30 , 0x32 , \
69
- 0x30 , 0x34 , 0x34 , 0x36 , 0x30 , 0x38 , 0x38 , 0x3a , 0x38 , 0x3c , 0x3c , 0x3e , \
70
- 0 , 0x40 , 0x40 , 0x42 , 0x40 , 0x44 , 0x44 , 0x46 , 0x40 , 0x48 , 0x48 , 0x4a , \
71
- 0x48 , 0x4c , 0x4c , 0x4e , 0x40 , 0x50 , 0x50 , 0x52 , 0x50 , 0x54 , 0x54 , 0x56 , \
72
- 0x50 , 0x58 , 0x58 , 0x5a , 0x58 , 0x5c , 0x5c , 0x5e , 0x40 , 0x60 , 0x60 , 0x62 , \
73
- 0x60 , 0x64 , 0x64 , 0x66 , 0x60 , 0x68 , 0x68 , 0x6a , 0x68 , 0x6c , 0x6c , 0x6e , \
74
- 0x60 , 0x70 , 0x70 , 0x72 , 0x70 , 0x74 , 0x74 , 0x76 , 0x70 , 0x78 , 0x78 , 0x7a , \
75
- 0x78 , 0x7c , 0x7c , 0x7e , 0 , 0x80 , 0x80 , 0x82 , 0x80 , 0x84 , 0x84 , 0x86 , \
76
- 0x80 , 0x88 , 0x88 , 0x8a , 0x88 , 0x8c , 0x8c , 0x8e , 0x80 , 0x90 , 0x90 , 0x92 , \
77
- 0x90 , 0x94 , 0x94 , 0x96 , 0x90 , 0x98 , 0x98 , 0x9a , 0x98 , 0x9c , 0x9c , 0x9e , \
78
- 0x80 , 0xa0 , 0xa0 , 0xa2 , 0xa0 , 0xa4 , 0xa4 , 0xa6 , 0xa0 , 0xa8 , 0xa8 , 0xaa , \
79
- 0xa8 , 0xac , 0xac , 0xae , 0xa0 , 0xb0 , 0xb0 , 0xb2 , 0xb0 , 0xb4 , 0xb4 , 0xb6 , \
80
- 0xb0 , 0xb8 , 0xb8 , 0xba , 0xb8 , 0xbc , 0xbc , 0xbe , 0x80 , 0xc0 , 0xc0 , 0xc2 , \
81
- 0xc0 , 0xc4 , 0xc4 , 0xc6 , 0xc0 , 0xc8 , 0xc8 , 0xca , 0xc8 , 0xcc , 0xcc , 0xce , \
82
- 0xc0 , 0xd0 , 0xd0 , 0xd2 , 0xd0 , 0xd4 , 0xd4 , 0xd6 , 0xd0 , 0xd8 , 0xd8 , 0xda , \
83
- 0xd8 , 0xdc , 0xdc , 0xde , 0xc0 , 0xe0 , 0xe0 , 0xe2 , 0xe0 , 0xe4 , 0xe4 , 0xe6 , \
84
- 0xe0 , 0xe8 , 0xe8 , 0xea , 0xe8 , 0xec , 0xec , 0xee , 0xe0 , 0xf0 , 0xf0 , 0xf2 , \
85
- 0xf0 , 0xf4 , 0xf4 , 0xf6 , 0xf0 , 0xf8 , 0xf8 , 0xfa , 0xf8 , 0xfc , 0xfc , 0xfe
86
-
87
- // See http://b/19318793 (#6) for a complete discussion. Merging arrays
88
- // offset_table and next_table helps improve performance of PIE code.
89
- static const uint8_t data_table[512 ] = {offset_table_entries, next_table_entries};
90
-
91
- static const uint8_t * const offset_table = &data_table[0 ];
92
- static const uint8_t * const next_table =
93
- &data_table[INTMATCHER_OFFSET_TABLE_SIZE];
49
+ static const uint8_t offset_table[] = {
50
+ 255 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 ,
51
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 ,
52
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 6 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 ,
53
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 ,
54
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 ,
55
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 7 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 ,
56
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 ,
57
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 6 ,
58
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 ,
59
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 5 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0 , 4 ,
60
+ 0 , 1 , 0 , 2 , 0 , 1 , 0 , 3 , 0 , 1 , 0 , 2 , 0 , 1 , 0
61
+ };
62
+
63
+ static const uint8_t next_table[] = {
64
+ 0 , 0 , 0 , 0x2 , 0 , 0x4 , 0x4 , 0x6 , 0 , 0x8 , 0x8 , 0x0a , 0x08 , 0x0c , 0x0c , 0x0e ,
65
+ 0 , 0x10 , 0x10 , 0x12 , 0x10 , 0x14 , 0x14 , 0x16 , 0x10 , 0x18 , 0x18 , 0x1a ,
66
+ 0x18 , 0x1c , 0x1c , 0x1e , 0 , 0x20 , 0x20 , 0x22 , 0x20 , 0x24 , 0x24 , 0x26 ,
67
+ 0x20 , 0x28 , 0x28 , 0x2a , 0x28 , 0x2c , 0x2c , 0x2e , 0x20 , 0x30 , 0x30 , 0x32 ,
68
+ 0x30 , 0x34 , 0x34 , 0x36 , 0x30 , 0x38 , 0x38 , 0x3a , 0x38 , 0x3c , 0x3c , 0x3e ,
69
+ 0 , 0x40 , 0x40 , 0x42 , 0x40 , 0x44 , 0x44 , 0x46 , 0x40 , 0x48 , 0x48 , 0x4a ,
70
+ 0x48 , 0x4c , 0x4c , 0x4e , 0x40 , 0x50 , 0x50 , 0x52 , 0x50 , 0x54 , 0x54 , 0x56 ,
71
+ 0x50 , 0x58 , 0x58 , 0x5a , 0x58 , 0x5c , 0x5c , 0x5e , 0x40 , 0x60 , 0x60 , 0x62 ,
72
+ 0x60 , 0x64 , 0x64 , 0x66 , 0x60 , 0x68 , 0x68 , 0x6a , 0x68 , 0x6c , 0x6c , 0x6e ,
73
+ 0x60 , 0x70 , 0x70 , 0x72 , 0x70 , 0x74 , 0x74 , 0x76 , 0x70 , 0x78 , 0x78 , 0x7a ,
74
+ 0x78 , 0x7c , 0x7c , 0x7e , 0 , 0x80 , 0x80 , 0x82 , 0x80 , 0x84 , 0x84 , 0x86 ,
75
+ 0x80 , 0x88 , 0x88 , 0x8a , 0x88 , 0x8c , 0x8c , 0x8e , 0x80 , 0x90 , 0x90 , 0x92 ,
76
+ 0x90 , 0x94 , 0x94 , 0x96 , 0x90 , 0x98 , 0x98 , 0x9a , 0x98 , 0x9c , 0x9c , 0x9e ,
77
+ 0x80 , 0xa0 , 0xa0 , 0xa2 , 0xa0 , 0xa4 , 0xa4 , 0xa6 , 0xa0 , 0xa8 , 0xa8 , 0xaa ,
78
+ 0xa8 , 0xac , 0xac , 0xae , 0xa0 , 0xb0 , 0xb0 , 0xb2 , 0xb0 , 0xb4 , 0xb4 , 0xb6 ,
79
+ 0xb0 , 0xb8 , 0xb8 , 0xba , 0xb8 , 0xbc , 0xbc , 0xbe , 0x80 , 0xc0 , 0xc0 , 0xc2 ,
80
+ 0xc0 , 0xc4 , 0xc4 , 0xc6 , 0xc0 , 0xc8 , 0xc8 , 0xca , 0xc8 , 0xcc , 0xcc , 0xce ,
81
+ 0xc0 , 0xd0 , 0xd0 , 0xd2 , 0xd0 , 0xd4 , 0xd4 , 0xd6 , 0xd0 , 0xd8 , 0xd8 , 0xda ,
82
+ 0xd8 , 0xdc , 0xdc , 0xde , 0xc0 , 0xe0 , 0xe0 , 0xe2 , 0xe0 , 0xe4 , 0xe4 , 0xe6 ,
83
+ 0xe0 , 0xe8 , 0xe8 , 0xea , 0xe8 , 0xec , 0xec , 0xee , 0xe0 , 0xf0 , 0xf0 , 0xf2 ,
84
+ 0xf0 , 0xf4 , 0xf4 , 0xf6 , 0xf0 , 0xf8 , 0xf8 , 0xfa , 0xf8 , 0xfc , 0xfc , 0xfe
85
+ };
86
+
87
+ // See http://b/19318793 (#6) for a complete discussion.
94
88
95
89
namespace tesseract {
96
90
0 commit comments