image_framework_ymj/image_framework/Libapi.h

68 lines
2.8 KiB
C
Raw Normal View History

2024-12-06 16:25:16 +08:00
/*
**************************************************************************************
* Filename: Libapi.h
* Description: header file
*
* Version: 1.0
* Created:
* Author:
*
* Revision: initial draft;
**************************************************************************************
*/
#pragma once
/*
@desc : macro define
*/
#ifdef _WIN32
#define LIBAPI_CALLMETHOD __cdecl
#define LIBAPI_EXPORT __declspec(dllexport)
#else
#define LIBAPI_CALLMETHOD
#define LIBAPI_EXPORT
#endif
#define SYS_BASE 1000
#define SYS_OK 0
#define SYS_IS_NOT_INIT 1 - SYS_BASE
#define SYS_NPU_IS_NOT_INIT 2 - SYS_BASE
#define SYS_ERROR 3 - SYS_BASE
#define SYS_CAMERA_IS_NOT_INIT 4 - SYS_BASE
#define SYS_HAS_NO_IMAGE 5 - SYS_BASE
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_init_plugin(int idx, void* pthread);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_init_plugin_config(void* config, void* pthread);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_create_MsgBase(char* msg_type, void** pMsg);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_delete_MsgBase(void* pMsg);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_copy_image_to_msg(void* pMsg, int pos, int param_type,
void* image_data, int width, int height, int flag);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_copy(void* tar, void* src, int len);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_bind_queue(int id, char* queue_name, int src_type=0); //0 : c++ , 1 : python
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_ubbind_queue(char* queue_name);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_push_to_queue(char* queue_name, void* msg);
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD libapi_pop_from_queue(char* queue_name, void** msg);
// 初始化
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapiInit(const long id, const char* info, void (*data_callback)(void*));
// 启动定位角点
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapiStartDetection();
// 继续定位角点
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapiContinuetDetection();
// 重新定位角点
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapRestartConnerDetection();
// 终止定位角点
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapStopDetection();
// 获取结果
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapGetRecord(void* data);
// 相机直接输入图像
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapiCameraSendMsgWithImage(
void* image_data, int width, int height, int flag, char* type, char* queue_name);
// 获取高清图像
extern "C" LIBAPI_EXPORT int LIBAPI_CALLMETHOD LibapiGetHQImage(
void* image_data, int width, int height, int flag, char* type);