#ifndef CMPRODUCT_H
#define CMPRODUCT_H

#include "cproduct.h"
#include "export_product_driver.h"
enum flatPos {
    MYTOP = 0,
    MYRIGHT,
    MYBOTTOM,
    MYLEFT,
};
class PRODUCT_DRIVER_EXPORT CMProduct : public CProduct {
public:
    CMProduct(const QString& name, int32_t id);
    virtual ~CMProduct();

#if 0
    virtual void Serialize(QDataStream &stream, bool bwrite, int iVersion) override;
#endif

public:
    CMPointd m_RealCenter;
    double m_dRealDiameter;
    /*!
     * 计算切割目标位置相对平台的高度，向上为正
     * 晶圆切割焦点 距离平台的距离（高度）
     * \param dCutDepth 切深 为0是表示计算的产品表面， 为负时表示焦点在产品下方 为正表示焦点在产品上方
     * \return
     */
    double CutDepthToDefoucsDis(double dCutDepth);
    /*!
     * 切割焦点相对平台的高度，向上为正
     *
     * \return
     * \sa CutDepthToDefoucsDis(0)
     */
    double WaferSurfaceToDefoucsDis();
    //厚度补偿
    double m_dThickDiff;

};

#endif // CMPRODUCT_H
