class ObjectResult
{
public:
int objid;
std::vector<cv::Rect> track;
};
class TrackingResult
{
public:
std::vector tracks;
};
class Tracker
{
public:
Tracker(){}; //构造函数,给对象初始化
virtual ~Tracker(){}; //析构函数,在程序运行结束后,清理一些空间
virtual bool init(const char* configFile)=0; //=0代表“纯虚函数”
virtual void process(cv::Mat& color, int frameNum,cv::Rect roi)=0; //检测跟踪过程
virtual TrackingResult* getResult()=0; //获取检测跟踪后的一些结果参数
virtual void draw(cv::Mat& img)=0; //将检测跟踪结果画出来
};
extern "C" TRACKERAPI Tracker* CreatTracker(); //可被外部调用的C函数
这是C++的动态库的对外接口函数,怎么在C#里声明,调用呢?