Commit graph

151 commits

Author SHA1 Message Date
Syping
bc9065e8dc libragephoto: improve documentation 2024-04-09 05:21:36 +02:00
Syping
0fa69667d0 libragephoto: put C++ wrapper in ragephoto_c namespace 2024-04-05 19:46:12 +02:00
Syping
eadec52f35 libragephoto: improve serializer 2024-04-05 19:31:14 +02:00
Syping
caf885d91c RagePhoto.c: fix off_t type in ragephoto_loadfile 2024-04-05 04:22:43 +02:00
Syping
c8c2f65b3a libragephoto: remove offset jumping
- CMakeLists.txt: add RAGEPHOTO_DEBUG option
- RagePhoto.c: fix ragephoto_loadfile and add support for 64-Bit files
- RagePhoto.*: improve correctness
- ragephoto-*viewer: depend on ragephoto 0.6 or newer
2024-04-05 04:17:41 +02:00
Syping
1e160ee170 ragephoto_c: fix header inclusion
- CI: hardcore Emscripten version
2024-03-26 10:21:32 +01:00
Syping
18325f7c05 pyragephoto: add 'with' support 2024-03-25 13:43:10 +01:00
Syping
c55b99e23f RagePhoto: dont take reference from save function 2024-03-25 13:15:26 +01:00
Syping
0611a368a6 RagePhoto: remove u8path in saveFile 2024-03-25 13:09:52 +01:00
Syping
dd60f8d0b7 libragephoto: add ragephoto_getphotosigns function
- rename libragephoto.py to libragephoto_loader.py
- enforce set CXX standard for WASM build
2024-03-25 13:06:14 +01:00
Syping
1b7c95e735 CI: adjust CXX standards 2024-01-19 08:19:50 +01:00
Syping
1a80125802 CMakeLists and RagePhoto C file access improvements
- CMakeLists.txt: CMAKE_CXX_STANDARD -> RAGEPHOTO_CXX_STANDARD
- RagePhoto.c: Fix potential issues with file access
2024-01-18 19:53:47 +01:00
Syping
e1cf6df258 libragephoto: add C++ namespaces (API change)
- RagePhoto::saveFile() -> use const char* instead of std::string
- RagePhoto C++ -> C API: try catch for throwable functions (to match C
impl. behaviour)
- Rename header files and classes
2024-01-15 17:05:54 +01:00
Syping
b94e66624b RagePhoto.c: add windows.h for RAGEPHOTO_BENCHMARK on Windows 2023-12-24 16:19:09 +01:00
Syping
e62fbacea8 RagePhoto.c: add benchmark for Windows 2023-12-23 11:14:01 +01:00
Syping
1b7b3c977b libragephoto: add benchmark to C implementation
CMakeLists.txt: update RAGEPHOTO_BENCHMARK description
RagePhoto.c: add benchmark
RagePhoto.cpp: change benchmark clock from
std::chrono::high_resolution_clock to std::chrono::steady_clock
2023-12-10 07:57:15 +01:00
Syping
6046b7213a libragephoto: use zeroBuffer to improve efficiency 2023-12-06 02:38:13 +01:00
Syping
534d978e47 pyragephoto: ship libragephoto with Python Package 2023-11-16 00:07:43 +01:00
Syping
8b8da1c1ef ragephoto.py: change format variable to photoFormat 2023-11-09 20:35:28 +01:00
Syping
0f1cfe630b libragephoto: add ragephoto Python Package
- separate RagePhoto and RagePhoto-Extract sources
2023-11-09 20:17:37 +01:00
Syping
9a5bcabf8c libragephoto: improve get and serializer reliability
- get functions do not return NULL or nullptr anymore
- serializer checks for valid references to not crash
- tight buffers do not prematurely end writing anymore
- add zeroBuffer function for future nullbyte insertions
- IconvTest.cpp: remove some C-style casts
- RagePhoto.cpp: improve initializer reliability
- RagePhotoA.hpp: throw error when instance could not be allocated
- README.md: minor markdown fix
2023-10-30 14:31:50 +01:00
Syping
c74b4a415f libragephoto 0.5.1 release
- ragephoto_open: fix memory leak when instance can't be allocated
- ragephoto_loadfile: fix file handle leak when data heap can't be
allocated
- ragephotodata_load: fix printf print types
- RagePhoto.cpp: remove std namespace from C functions
2023-10-25 16:33:01 +02:00
Syping
6fdc075741 libragephoto 0.5.0 release
- CMakeLists.txt: add missing RagePhotoA for C API builds
- updated README.md
2023-06-11 23:07:41 +02:00
Syping
12507be85d libragephoto: add RagePhotoB for best implementation
CMakeLists.txt: add RagePhotoB class, improve settings clarification
doc/build.doc: add RAGEPHOTO_C_LIBRARY flag
doc/index.doc: correct RagePhoto.h header
doc/usage.doc: fix minor documentation issue, clarify class differences
ragephoto-gtkviewer: use RagePhotoB class
ragephoto-qtviewer: use RagePhotoB class
RagePhoto-Extract.cpp: use RagePhotoB class
RagePhoto.cpp: LIBRAGEPHOTO_C_API -> LIBRAGEPHOTO_CXX_C
RagePhotoA.hpp: simplify brief
RagePhotoB.hpp: add best implementation detection
RagePhotoLibrary.h: fix WASM C API inclusion by default
README.md: add RAGEPHOTO_C_LIBRARY flag
2023-06-11 05:41:32 +02:00
Syping
d7943e552d GitHub Actions: fix WebAssembly C build 2023-06-09 05:05:42 +02:00
Syping
b838c505a4 libragephoto: C++ headers have now .hpp extension
RagePhoto.h -> RagePhoto.hpp
RagePhotoA.h -> RagePhotoA.hpp
RagePhotoC.h -> RagePhoto.h

unicode.cmake: exclude codecvt for C builds
GitHub Actions: separate C and CXX builds
2023-06-07 06:57:23 +02:00
Syping
6acf7b7338 RagePhoto.c: fix potential memory issue 2023-06-07 06:12:24 +02:00
Syping
24e0d9c03e RagePhoto.c: fix potential memory issue 2023-06-07 06:09:37 +02:00
Syping
6066d92ee9 RagePhoto.c: fix potential memory issue, fix debug code 2023-06-06 21:05:55 +02:00
Syping
c3e838cecf RagePhoto.c: fix iconv code 2023-06-06 20:27:51 +02:00
Syping
8a29d8aebe GitHub Actions: use C library for WebAssembly build
RagePhoto.c: fix header includes
2023-06-06 20:22:20 +02:00
Syping
3046cbd077 libragephoto: introduce C library port
CMakeLists.txt: fixes for MSVC and C library support
RagePhoto: non C++11 support
RagePhotoC: clarify C instance support in comment
RagePhotoTypedefs: add typedefs for C library
2023-06-06 19:39:22 +02:00
Syping
af3580dff4 libragephoto 0.4.1 release
RagePhotoA: fix setData() pointer passthrough
2023-05-25 23:30:26 +02:00
Syping
4aedd8b869 libragephoto 0.4.0 release
- CMakeLists.txt: bump version to 0.4.0
- RagePhoto(A): add headerSum2 for RDR 2
- RagePhotoC: add ragephoto_setphotoheader2() for RDR 2
- RagePhotoTypedefs: remove unnamedSum1, rename unnamedSum2 ->
headerSum2
- RagePhotoTypedefs: remove ragephoto_bool_t for bool
2023-05-14 11:44:59 +02:00
Syping
3d9d632d7b libragephoto: add RDR 2 SignInitial 2023-05-09 23:28:38 +02:00
Syping
f1485be7a7 libragephoto: add defines for C API
RagePhotoTypedefs.h: add defines for C API
RagePhoto-Extract.c: take advantage of C API defines
2023-04-26 01:09:22 +02:00
Syping
d8c0d7d470 libragephoto: rename BINDING to PUBLIC, some other changes
- doc/Doxyfile.in: rename BINDING to PUBLIC
- doc/usage.doc: fix a usage example
- CMakeLists.txt: include CPack only when libragephoto is Top Level
- RagePhoto.h: rename BINDING TO PUBLIC
- RagePhotoC.h: rename BINDING TO PUBLIC
- RagePhotoLibrary.h: rename BINDING to PUBLIC, add new checks
2023-04-09 21:22:13 +02:00
Syping
933918454f libragephoto 0.3.0 release
- update README.md
- update documentation
- ragephoto-gtkviewer: fix error uint8_t -> int32_t, NULL -> nullptr
- ragephoto-qtviewer: fix error uint8_t -> int32_t
- RagePhotoA: fix documentation, fix error()
- RagePhotoC: add brief
2023-04-02 21:33:48 +02:00
Syping
302be665e2 RagePhoto: use C++17 u8path when available 2023-03-27 17:49:35 +02:00
Syping
cac7fd221f RagePhoto(A): add jpegSign() function
- RagePhotoC: add ragephoto_getphotosign() ragephoto_getphotosignf()
ragephotodata_getphotosign() and ragephotodata_getphotosignf() functions
2023-03-15 08:22:38 +01:00
Syping
564a8c92b5 CMakeLists.txt: add C++17 build flags for MSVC 2023-03-09 05:30:01 +01:00
Syping
6d943e7b20 libragephoto: use C++17 for the CI/CD build 2023-03-06 20:31:54 +01:00
Syping
3c433ca072 libragephoto: add opt-in C++17 support
- RagePhoto(A): add jpeg_view() function
- CMakeLists.txt: move C++17 and WebAssembly stuff inside include files
2023-03-03 03:26:59 +01:00
Syping
4ca8ac9297 RagePhoto: replace strncmp with memcmp
RagePhoto(A): fix header spelling mistake
RagePhotoA: update header description
2023-02-24 23:51:32 +01:00
Syping
d75eba2a46 libragephoto: add new ragephotodata functions and improvements
RagePhoto: changed photo(), photoData(), photoSize() and setPhoto() to
jpeg(), jpegData(), jpegSize() and setJpeg()
RagePhoto: setData() now takes takeCopy instead of takeOwnership
RagePhoto: changed static member argument order for easier coding
RagePhotoA: changed photo(), photoData(), photoSize() and setPhoto() to
jpeg(), jpegData(), jpegSize() and setJpeg()
RagePhotoA: setData() now takes takeCopy instead of takeOwnership
RagePhotoA: changed static member argument order for easier coding
RagePhotoA: add new C API functions
RagePhotoC: add ragephotodata_save() and ragephotodata_savef()
RagePhoto-Extract: update for API changes, stop assuming RDR 2 when GTA
V format not found
ragephoto-gtkviewer: update for API changes
ragephoto-qtviewer: update for API changes
2023-02-23 09:17:53 +01:00
Syping
9807f0d696 libragephoto: update C API
RagePhotoA: add new C API functions
RagePhotoC: add ragephotodata_clear(), ragephotodata_load(),
ragephotodata_getsavesize(), ragephotodata_getsavesizef(),
ragephotodata_setbufferdefault(), ragephotodata_setbufferoffsets()
2023-02-20 14:58:41 +01:00
Syping
e51d50f77e RagePhoto: fix inline related issues 2023-02-20 13:37:40 +01:00
Syping
d13c22dc05 RagePhoto: add clear() and load() as static functions 2023-02-20 11:56:23 +01:00
Syping
2a8070b75e libragephoto: add custom parser feature
- RagePhoto: add addParser()
- RagePhotoC: add ragephoto_addparser()
- RagePhoto(C): rename all ragePhotoData to rp_data
2023-02-20 11:27:14 +01:00
Syping
659feb0cbf RagePhoto: update ragephoto_setphotodata function
- RagePhotoTypedefs: add saveSize function
2023-02-11 22:40:13 +01:00