Skip to content

support wrapperNotify #6

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions pyWrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -120,6 +120,7 @@ PyWrapper::PyWrapper() {
_wrapperOnceExec = _obj.attr("wrapperOnceExec");
_wrapperOnceExecAsync = _obj.attr("wrapperOnceExecAsync");
_wrapperError = _obj.attr("wrapperError");
_wrapperNotify = _obj.attr("wrapperNotify");

// 个性化
_wrapperLoadRes = _obj.attr("wrapperLoadRes");
Expand Down Expand Up @@ -161,6 +162,7 @@ PyWrapper::~PyWrapper() {
_wrapperRead.release();
_wrapperUnloadRes.release();
_wrapperLoadRes.release();
_wrapperNotify.release();
pybind11::gil_scoped_release release;
}

Expand All @@ -177,6 +179,7 @@ void PyWrapper::ReloadWrapper() {
_wrapperOnceExec = _obj.attr("wrapperOnceExec");
_wrapperError = _obj.attr("wrapperError");
_wrapperTest = _obj.attr("wrapperTestFunc");
_wrapperNotify = _obj.attr("wrapperNotify");
// stream support

_wrapperCreate = _obj.attr("wrapperCreate");
Expand Down Expand Up @@ -571,6 +574,12 @@ int PyWrapper::wrapperUnloadRes(std::string patch_id) {
return ret;
}

int PyWrapper::wrapperNotify(pDataList* data) {
py::gil_scoped_acquire acquire;
int ret = _wrapperNotify(*data).cast<int>();;
return ret;
}

int PyWrapper::wrapperTest() {
py::gil_scoped_acquire acquire;
std::vector <py::dict> req;
Expand Down
3 changes: 3 additions & 0 deletions pyWrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,8 @@ class PyWrapper {

void setCallBack(wrapperCallback cb);

int wrapperNotify(pDataList* data);

wrapperMeterCustom metric_cb;

private:
Expand All @@ -167,6 +169,7 @@ class PyWrapper {
py::object _wrapperError;
py::object _wrapperCreate;
py::object _wrapperDestroy;
py::object _wrapperNotify;

py::object _wrapperWrite;
py::object _wrapperRead;
Expand Down
15 changes: 14 additions & 1 deletion wrapper.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -494,4 +494,17 @@ wrapperExecAsync(const char *usrTag, pParamList params, pDataList reqData, wrapp
return ret;
}

const char *WrapperAPI wrapperDebugInfo(const void *handle) { return NULL; }
const char *WrapperAPI wrapperDebugInfo(const void *handle) { return NULL; }

int WrapperAPI wrapperNotify(pDataList *data) {
spdlog::debug("wrapperNotify");

int ret = 0;
ret = pyWrapper->wrapperNotify(data);
if (ret != 0) {
spdlog::get("stderr_console")->error("wrapper notify error!");
return ret;
}

return ret;
}