PCSX2 IPC API Reference implementation
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Gauvain Roussel-Tarbouriech dee812399d
implement msgversion
5 months ago
bindings implement msgversion 5 months ago
src implement msgversion 5 months ago
utils implement msgversion 5 months ago
.clang-format formatting, the return 6 months ago
.gitignore rust bindings 6 months ago
Doxyfile getting ready for release 6 months ago
Jenkinsfile argh 6 months ago
LICENSE better tests, headless tests, idk man bunch of stuff 6 months ago
README.md probably a good idea to link the CI 6 months ago
RELEASE_README.md better tests, headless tests, idk man bunch of stuff 6 months ago
gcovr.cfg better coverage reports 6 months ago
meson.build 100% code coverage and misc fixes 6 months ago
windows-qt.pro cleanup²² 6 months ago


PCSX2 IPC Client-Side Reference API

build tests coverage

You'll find here the reference implementation of PCSX2 IPC Socket client-side C++ API, along with different language bindings and examples.

A small C++ client example is provided along with the API. It can be compiled by executing the command meson build && cd build && ninja in the folder "example" that is included in the releases.
If you want to run the tests you'll have to do meson build && cd build && meson test. This will require you to set environment variables to correctly startup the emulator(s). Refer to src/tests.cpp to see which ones.

Meson and ninja ARE portable across OSes as-is and shouldn't require any tinkering. Please refer to the meson documentation if you really want to use another generator, say, Visual Studio, instead of ninja.
Alternatively, loading the "windows-qt.pro" on Windows with Qt Creator will work just fine if you're lazy.
If you dislike C++ bindings in popular languages are available.

On Doxygen you can find the documentation of the C++ API [here](@ref PCSX2Ipc).
The C API is documented [here](@ref bindings/c/c_ffi.h) and is probably what you want to read if you use language bindings.

Language bindings will require you to compile the C bindings library for the OS you target. Please refer to bindings/c documentation for building it.

Have fun!
-Gauvain "GovanifY" Roussel-Tarbouriech, 2020