#pragma once
|
#include <string>
|
#include <iostream>
|
#include <list>
|
#include "ImgUtil.h"
|
#include "RecognitionManager.h"
|
#include "THSActionUtil.h"
|
|
struct LimitUpData
|
{
|
string code;
|
string time;
|
string price;
|
//ÕÇ·ù
|
string limitUpPercent;
|
string limitMoney;
|
MoneyUnit limitMoneyUnit;
|
//¸¨Öú¹¦ÄÜ
|
int index;
|
};
|
|
//Ê×°å±¾Êý¾Ý
|
struct FirstLimitUpCodeData {
|
string code;
|
string time;
|
string price;
|
//ÕÇ·ù
|
string limitUpPercent;
|
string zyltMoney;
|
MoneyUnit zyltMoneyUnit;
|
string volume;
|
MoneyUnit volumeUnit;
|
//¸¨Öú¹¦ÄÜ
|
int index;
|
};
|
|
struct LimitUpFinalData {
|
std::list<LimitUpData> limitUpDatas;
|
std::list<FirstLimitUpCodeData> firstLimitUpDatas;
|
};
|
|
//ÕÇÍ£»ñÈ¡
|
typedef void (*CallbackFun_Limit_Up)(list<LimitUpData> codeList, void* contex);
|
typedef void (*CallbackFun_First_Limit_Up)(list<FirstLimitUpCodeData> codeList, void* contex);
|
|
|
class LimitUpCapture
|
{
|
private:
|
//½»Ò×ʱ¶Îʶ±ð
|
static bool tradeTimeCapture;
|
static OpenCLExcuter* openCLExcuter;
|
static bool inited;
|
//ÊÇ·ñÕýÔÚÖ´ÐÐ
|
static bool running;
|
|
static bool kill;
|
|
static CallbackFun_Limit_Up data_callback;
|
|
static CallbackFun_First_Limit_Up first_data_callback;
|
|
static MatOcrFun ocr_fun;
|
|
static void* context;
|
|
static void _run();
|
|
static HWND win;
|
|
static HWND menuWin;
|
|
//ÕÇÍ£µã
|
static cv::Point limitUpPoint;
|
//Ê×°å´úÂë
|
static cv::Point firstCodePoint;
|
|
|
public:
|
//ÉèÖý»Ò×ʱ¼ä½ØÍ¼ÉÏ´«Êý¾Ý
|
static void setTradeTimeCapture(bool enable) {
|
tradeTimeCapture = enable;
|
}
|
|
|
//ÊÇ·ñÔÝÍ£
|
static bool pause;
|
|
void init(CallbackFun_Limit_Up callback, CallbackFun_First_Limit_Up first_callback, MatOcrFun matMcrFun, void* context);
|
|
//ÖØÐ´´½¨ÔËÐÐÏß³Ì
|
void reCreateRunning();
|
|
void refreshHWND();
|
|
bool isRunning();
|
//ÕÇͣʶ±ð
|
static list<LimitUpData> captureLimitUpCodes(cv::Mat img);
|
|
//Ê×°åʶ±ð
|
static list<FirstLimitUpCodeData> captureLimitUpFirstCodes(cv::Mat img);
|
|
static LimitUpFinalData captureLimitUpCodes();
|
|
//È«²¿¿ªÊ¼
|
void start();
|
//È«²¿½áÊø
|
void stop();
|
bool isInited();
|
};
|