You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.9 KiB
C++

#ifndef IMAGEOBJECT_H
#define IMAGEOBJECT_H
#include "globalCoreCtrl.h"
#include <QtGui/QPixmap>
#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