-remove hack for 0 terminating string in groupobjects

-fix logging on linux
-add parameters to python bindings
This commit is contained in:
Thomas Kunze
2024-09-12 00:14:25 +02:00
parent b687cd24d9
commit d1bdc6ef51
17 changed files with 77 additions and 54 deletions

View File

@@ -14,11 +14,11 @@ namespace py = pybind11;
#include <vector>
#include <algorithm>
#include "knx/bits.h"
#include "knx/platform/linux_platform.h"
#include "knx/ip/bau57B0.h"
#include "knx/interface_object/group_object_table_object.h"
#include "knx/util/logger.h"
#include <knx/bits.h>
#include <knx/platform/linux_platform.h>
#include <knx/ip/bau57B0.h>
#include <knx/interface_object/group_object_table_object.h>
#include <knx/util/logger.h>
#define LOGGER Logger::logger("knxmodule")
@@ -56,6 +56,8 @@ static void init()
Logger::logLevel("ApplicationLayer", Logger::Info);
Logger::logLevel("BauSystemBDevice", Logger::Info);
Logger::logLevel("GroupObject", Logger::Info);
Logger::logLevel("TableObject", Logger::Info);
Logger::logLevel("Memory", Logger::Info);
/*
// copy args so we control the livetime of the char*
@@ -186,6 +188,14 @@ PYBIND11_MODULE(knx, m)
{
GroupObject::classCallback(handler);
});
m.def("Parameters", []()
{
uint8_t* data = bau->parameters().data();
if (data == nullptr)
return py::bytes();
return py::bytes((const char*)data, bau->parameters().dataSize());
});
py::class_<GroupObject>(m, "GroupObject", py::dynamic_attr())
.def(py::init())