#ifndef IMAGEOBJECT_H #define IMAGEOBJECT_H #include "globalCoreCtrl.h" #include #include "iAlgorithm.h" class CImageObject : public IImageObject { public: CImageObject(class CCoreCtrl* pCoreCtrl); ~CImageObject(); bool SetCameraImage(CZkCameraImage* pCamImage); private: virtual emTpColorFormat IColorFormat(); //@nBytesPerLine: 0 means there is no valid value virtual BYTE* IImageData(int& nOutW, int& nOutH, int& nOutBitsPerPixel, int& nBytesPerLine); virtual int IGetId(); virtual int IGetAlgorithm(); virtual int IGetFrameNum(); virtual int IGetTriggerCount(); virtual void ISetCameroProperty(TP_CAMERA_PROPERTY& property); virtual void ISendDataToUI(void* pData); virtual void IDrawDefect(const char* szWinName, emTpDefectType defectType, BYTE* pData, int nDataLen); virtual void IDrawDefectOrg(emTpDefectType defectType, BYTE* pData, int nDataLen); virtual void ISafeDataToUI(void* pData, int nDataLen); virtual void ISafeDataToUI(WORD type, void* pData, int nDataLen); virtual INT64 IMeterCode(); virtual const char* IGetImageUtf8String(); virtual void IDrawImage(QImage& image = QImage(), const char* szWinName = NULL); virtual QImage IImage(); virtual const ZStringA& IDllSuffix(); virtual void ISetResult(const QString& key, QVariant& val); virtual void IAccumulateResult(const QString& key, QVariant& val); virtual void IMoveToFolder(const QString& szFolder); virtual IAlgorithmShared* IGetShared(); virtual void IVariantMapToUI(const QVariantMap& vMap); virtual const ZStringA& ICameraSerial(); virtual const QVariant& IVarFromUI(); virtual quint64 ITimeStamp() { return m_pCamImg->Stamp(); } virtual void IDataToComm(DATA_TO_COMM_HEAD& head, char* pData, int nLen) {}; private: CZkCameraImage* m_pCamImg; class CCoreCtrl* m_pCoreCtrl; }; #endif // IMAGEOBJECT_H