#pragma once #include #include "logger.h" #include "data_def.h" #include "data_def_api.h" #include "imstorage_manager.h" namespace graft_cv { class CChessboard { public: CChessboard( ConfigParam& ap, CGcvLogger*pLog = 0); ~CChessboard(); void set_image_saver(CImStoreManager** ppis) { m_ppImgSaver = ppis; } int detect( ImgInfo*, PositionInfo& posinfo, int corner_row, int corner_col, int x0, int y0, int width, int height, const char* fn = 0); private: img_type m_dtype; // data type: tea_grab, tea_cut string m_imgId; string m_dtype_str; cv::Mat m_raw_img; CImStoreManager** m_ppImgSaver; CGcvLogger* m_pLogger; ConfigParam& m_cp; int load_data( ImgInfo*imginfo, const char* fn = 0); }; }