Files
sunnypilot/selfdrive/locationd/liblocationd.cc
Joost Wooning e07740c35c create library for using locationd in python using ffi (#20711)
* create library for using locationd in python using ffi

* lib is not required in release

* cleanup

* dont build liblocationd on release

* add check on buffer size
old-commit-hash: e08a570a13
2021-04-20 17:50:40 +02:00

23 lines
677 B
C++
Executable File

#include "locationd.h"
extern "C" {
typedef Localizer* Localizer_t;
Localizer *localizer_init() {
return new Localizer();
}
void localizer_get_message_bytes(Localizer *localizer, uint64_t logMonoTime,
bool inputsOK, bool sensorsOK, bool gpsOK, char *buff, size_t buff_size)
{
MessageBuilder msg_builder;
kj::ArrayPtr<char> arr = localizer->get_message_bytes(msg_builder, logMonoTime, inputsOK, sensorsOK, gpsOK).asChars();
assert(buff_size >= arr.size());
memcpy(buff, arr.begin(), arr.size());
}
void localizer_handle_msg_bytes(Localizer *localizer, const char *data, size_t size) {
localizer->handle_msg_bytes(data, size);
}
}