From 8c36971afa38f8a2fb058704d6c584e0ce0c2bc4 Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期四, 02 二月 2023 17:59:22 +0800 Subject: [PATCH] add go api --- shmparser/shmparser.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 files changed, 40 insertions(+), 0 deletions(-) diff --git a/shmparser.h b/shmparser/shmparser.h similarity index 63% rename from shmparser.h rename to shmparser/shmparser.h index bce3460..9fe8732 100644 --- a/shmparser.h +++ b/shmparser/shmparser.h @@ -107,6 +107,46 @@ struct strule* shm2rule(void* shm); void free_strule(struct strule* rule); +/////////////////////////////////////////////////////////////// +// go need function +// go image +void goimage2shm(void* shm, void* img); +void goimageinfo(void* img, void** data, uint64_t* size, + void** ts, uint32_t* tss, + void** cid, uint32_t* cids, + void** cname, uint32_t* cnames, + uint64_t* id, uint32_t* w, uint32_t* h); + +// go rule/sdk/result +void gotargetsdel(void* tgts); +void* gotargetsnew(const uint32_t size); +void gotargetsadd(void* tgts, int idx, uint64_t id, char* type, uint32_t tsize, int32_t confidence, + int left, int top, int right, int bottom, + unsigned char* feat, uint32_t featsize, + unsigned char* attr, uint32_t attrsize); +void goruleaddsdk(void* shm, void* tgts, uint32_t tgtcnt, + char* type, uint32_t tsize, + char* timestamp, uint32_t tmsize); + +// unserialize +void gorulehandletrack(void* rule, void** data, uint32_t* size); +void goruledatatype(void* rule, void** data, uint32_t* size); + +void gorulesdk(void* rule, void** data, uint32_t* size); +void gorulesdkinfo(void* sdk, int idx, void** t, uint32_t* ts, + void** i, uint32_t* is, void** n, uint32_t* ns, + void** tm, uint32_t* tms, void** data, uint32_t* size); +void gorulesdktargetinfo(void* tgt, int idx, uint64_t* id, int32_t* c, + int32_t* l,int32_t* t,int32_t* r,int32_t* b, + void** tp, uint32_t* tps, + void** feat, uint32_t* fs, void** attr, uint32_t* attrs); +////////////////////////////////////////////////////////////// +// no use +void* gosdknew(); +void gosdkadd(void* sdk, char* type, uint32_t tsize, char* id, uint32_t idsize, + char* name, uint32_t nsize, char* timestamp, uint32_t tmsize, + uint32_t tgtcnt, void* tgts); + #ifdef __cplusplus } #endif -- Gitblit v1.8.0