From cc6f8a873c7efd28fbbeb7c1c70b28a053586f17 Mon Sep 17 00:00:00 2001 From: suntianyu <xuepengqiang@aiotlink.com> Date: 星期五, 30 七月 2021 10:53:09 +0800 Subject: [PATCH] m --- lib/h_interface.h | 17 +++++++++++------ lib/h_interface.cpp | 30 +++++++++++++++++++++++++----- CMakeLists.txt | 4 ++-- 3 files changed, 38 insertions(+), 13 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 54e76cb..d67f43d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -62,6 +62,6 @@ link_directories(${LOG_DIR}/lib) include_directories(${LOG_DIR}/include) -add_executable(${PROJECT_NAME} dome.cpp ${sources} ${CURRENT_HEADERS}) -#add_library(${PROJECT_NAME} SHARED ${sources} ${CURRENT_HEADERS}) +#add_executable(${PROJECT_NAME} dome.cpp ${sources} ${CURRENT_HEADERS}) +add_library(${PROJECT_NAME} SHARED ${sources} ${CURRENT_HEADERS}) target_link_libraries(${PROJECT_NAME} protobuf ${LIBS}) diff --git a/lib/h_interface.cpp b/lib/h_interface.cpp index a9ca2ce..d612f60 100644 --- a/lib/h_interface.cpp +++ b/lib/h_interface.cpp @@ -11,7 +11,7 @@ int m_staticStruct::times = 10; // 鍒涘缓 -YOLOTRACK_API void* create(const char *conf, int *max_chan) +API void* create(const char *conf, int *max_chan) { CLog::Initialize("/opt/vasystem/bin/models/humanCount/log.properties"); AriManager *handle = new AriManager(); @@ -20,17 +20,18 @@ } // 鍘熸煡鎵剧粨鏋滄帴鍙� -YOLOTRACK_API void* get_result(void *handle, const void *img, const int chan) +API void* get_result(void *handle, const void *img, const int chan) { AriManager *h = (AriManager*)handle; TResult *t_result = (TResult*)malloc(sizeof(TResult)); init_TResult(t_result); + DEBUG( "------error "); // h->doInfer(*t_result); return t_result; } // 浼犻�掍汉鑴哥粨鏋滃苟鏌ユ壘淇℃伅 -YOLOTRACK_API void* get_result_face(void *handle, const void *img, const char* arg_json, const int arg_len, void *face_info, const int face_info_size) +API void* get_result_face(void *handle, const void *img, const char* arg_json, const int arg_len, void *face_info, const int face_info_size) { Json::Reader reader; Json::Value root; @@ -45,7 +46,7 @@ return t_result; } -YOLOTRACK_API void release_result(void *res) +API void release_result(void *res) { if (!res) return; TResult *cres = (TResult*)res; @@ -60,7 +61,7 @@ free(cres); } -YOLOTRACK_API void release(void* handle) +API void release(void* handle) { AriManager *h = (AriManager*)handle; delete h; @@ -97,3 +98,22 @@ t->count = 0; t->targets = nullptr; } + + +API int set_data(void* handle, const char *data, const int len, const int type) +{ + return 1; +} + +API int op_channel(void *handle, const char *chan_json, const int json_len, const int op) +{ + return 1; +} + + +//璁剧疆鍥炶皟鍑芥暟淇℃伅 +API int set_cb(void* handle, fn FUNC, void *args) +{ + return 1; +} + diff --git a/lib/h_interface.h b/lib/h_interface.h index d70bc62..46b596b 100644 --- a/lib/h_interface.h +++ b/lib/h_interface.h @@ -9,13 +9,18 @@ extern "C"{ #endif -#define YOLOTRACK_API extern "C" __attribute__((visibility ("default"))) +#define API extern "C" __attribute__((visibility ("default"))) +typedef int (*fn)(void* args, const char* sender_chan, const int sender_len, const char *recver, const int recver_len, const char *data, const int len); -YOLOTRACK_API void* create(const char *conf, int *max_chan); -YOLOTRACK_API void release(void* handle); -YOLOTRACK_API void* get_result(void *handle, const void *img, const int chan); -YOLOTRACK_API void release_result(void *res); -YOLOTRACK_API void* get_result_face(void *handle, const void *img, const char* arg_json, const int arg_len, void *face_info, const int face_info_size); +API int set_data(void* handle, const char *data, const int len, const int type); +API int op_channel(void *handle, const char *chan_json, const int json_len, const int op); +API int set_cb(void* handle, fn FUNC, void *args); + +API void* create(const char *conf, int *max_chan); +API void release(void* handle); +API void* get_result(void *handle, const void *img, const int chan); +API void release_result(void *res); +API void* get_result_face(void *handle, const void *img, const char* arg_json, const int arg_len, void *face_info, const int face_info_size); void ReadJsonFromFile(const char* filename); // 璇诲彇json鏂囦欢 -- Gitblit v1.8.0