Commit Graph

87 Commits

Author SHA1 Message Date
Stefan Brechtken
594a000ecd merging with tesseract master in order to create a pull request 2021-03-15 17:02:19 +01:00
Egor Pugin
efd17e205a Replace typedef structs with structs.
typedef enums are left intact.
2021-03-15 09:47:04 +03:00
Egor Pugin
f06b2c7c8d [capi] Restore some of wrongly removed apis.
Removed C++ APIs are not restored.
Additionally remove unused C++ typedefs which were in removed C++ functions.
If you still need them, use C++ API instead.
2021-03-14 17:20:52 +03:00
Egor Pugin
dabdaa1def Misc. 2021-03-14 17:14:41 +03:00
Egor Pugin
0eb7ba88bf [clang-format] Execute clang format on include and src dirs.
Script:
find include src -type f | sort > all.txt
find include src -type f | grep -v "\.cpp" | grep -v "\.h" | sort > skip.txt
comm -23 all.txt skip.txt | xargs clang-format -i
2021-03-12 22:35:02 +03:00
Egor Pugin
0e9deb68c9 Revert "Format public API files with 'clang-format-11 -i include/tesseract/*.h'"
This reverts commit c20da5e10f.
2021-03-12 20:20:34 +03:00
Stefan Weil
c20da5e10f Format public API files with 'clang-format-11 -i include/tesseract/*.h'
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2021-03-12 13:26:38 +01:00
Egor Pugin
fd8907471c Improve C API. Add tests.
1. Add simple C API test in C++ program.
2. Add simple C API test in C program.
3. Fix including capi.h in C++ files.
2021-01-02 03:57:25 +03:00
Egor Pugin
6740e88549 [capi] Reorder headers in capi.h. Put our header before standard ones. 2021-01-02 03:00:49 +03:00
Egor Pugin
bee90f7835 [capi] Remove unused functions.
Those functions were undef ifdef for C++ mode. Since in C++ mode noone uses them, they can be safely removed.
2021-01-02 02:59:31 +03:00
Egor Pugin
52f5e5b8fb Restore building of C API. Simplify.
1. Delete useless ifdefs.
2. Move C++ includes into source file. C code does not care about any C++ headers.
3. Replace TESS_CAPI_INCLUDE_BASEAPI with simple __cplusplus macro.
4. In capi.cpp remove enclosing namespace tesseract, so symbols have their according decls back.

In capi.cpp we
- put capi.h after all C++ headers, so we can remove some typedefs later,
- put using namespace tesseract between them, so C++ symbols are visible to functions in the file without namespace.
2021-01-02 02:53:33 +03:00
Egor Pugin
664a718a63 Rename platform.h to export.h. 2021-01-01 00:18:36 +03:00
Stefan Weil
d4df4c06fc Add missing definition for TESS_API
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2020-12-31 17:06:21 +01:00
Egor Pugin
c86325e2f7 Use TESS_API for every public symbol. Public symbol is exported from the library. This also applies to unit test and training symbols. Users will be limited to public api, but set of exported symbols will be wider still.
Remove TESS_LOCAL.
Fix several symbol issues that made visible with these changes.

All build systems must set -fvisibility-hidden for *nix systems.
2020-12-31 16:32:29 +03:00
Stefan Weil
fc4002dda8 Remove helpers.h from public API
Remove also outdated references to apitypes.h which no longer exists.

Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-31 09:06:16 +01:00
Egor Pugin
ff1a995bfc Removed unused fwd decl. 2020-12-31 02:45:55 +03:00
Egor Pugin
a7246865fc Remove unused fwd decls. 2020-12-31 02:43:24 +03:00
Egor Pugin
67218eeb99 Remove unused typedefs. 2020-12-31 02:41:26 +03:00
Egor Pugin
1f834b7f27 Remove unused fwd decl. 2020-12-31 02:39:45 +03:00
Egor Pugin
b01f151027 Remove comment. 2020-12-31 02:39:04 +03:00
Egor Pugin
3af30419db Move MAX_PATH def out from public header. 2020-12-31 02:35:28 +03:00
Egor Pugin
2252936fc8 Use linear congruential random number generator from C++11. 2020-12-31 02:31:53 +03:00
Egor Pugin
a0509b2feb Use std::swap instead of manual function. 2020-12-31 02:17:54 +03:00
Egor Pugin
89273c915d Remove empty DLLSYM macro. 2020-12-31 02:10:46 +03:00
Egor Pugin
8bd1227c3e Remove public empty header. 2020-12-31 02:05:47 +03:00
Stefan Weil
faf0407dff Remove RecognizeForChopTest from public API
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2020-12-30 17:55:40 +01:00
Stefan Weil
d1d176a280 Remove TessTruthCallback from public API
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2020-12-30 15:44:44 +01:00
Stefan Weil
588ac3fed2 Remove TessTruthCallback from public API
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2020-12-30 15:38:11 +01:00
Stefan Weil
deec8ef46f Replace std::list by std::vector
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-30 07:10:29 +01:00
Stefan Weil
f4e380f64a Remove serialis.h from public API
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2020-12-29 11:28:50 +01:00
Stefan Weil
90af3e7b5c Remove strngs.h from public API
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
03884c370c Replace STRING by std::string in ResultIterator
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
a007cbeb57 Replace STRING by std::string
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
d37a9319ec Remove unused TessBaseAPIInit from capi.h
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
2369aa5604 Use std::vector, std::string in baseapi.h
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
72663a9a81 Use std::vector, std::string in baseapi.h
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
fec9c11c8c Use std::vector, std::string in baseapi.h
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
64e902ddf7 Remove genericvector.h from public API
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
f462389673 renderer for TessPDFRenderer
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
d55e5f4803 Replace more GenericVector by std::vector
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
4a28d33c58 Replace GenericVector by std::vector in strngs.h and more places
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
3ddc88cccb Use std::vector in TessPDFRenderer
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
7c679e777d Use std::vector for allowed_scripts
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
32d53479ae Use std::vector for vars_vec, vars_values
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
085f6b2572 Use std::list for paragraph models
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
4ebba72919 Use std::vector for paragraph models
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Stefan Weil
524fc67165 Fix tesseract --list-langs
Signed-off-by: Stefan Weil <sw@weil.de>
2020-12-28 21:03:29 +01:00
Egor Pugin
a98d6d9e8e Better symbol visibility fix for unit test. 2020-12-28 04:58:14 +03:00
Egor Pugin
f51a945e26 Make symbol visible to fix unit test. 2020-12-28 04:31:00 +03:00
Egor Pugin
0c19e1e14d Allow to construct STRING from nullptr. 2020-12-28 01:10:15 +03:00