#pragma once #include #include "CHReviewSetting/CameraControlInfo_Plus.h" #include "CHLightControls/LightControlInfo.h" #include "CHAfmControls/AfmControlInfo.h" #include "CHWsiControls/WsiControlInfo.h" #include "CHLensChangeControls/LensChangeControl.h" typedef std::vector VectorCameraInfo; typedef std::vector::iterator VectorCameraInfoIt; typedef std::vector VectorLightInfo; typedef std::vector::iterator VectorLightInfoIt; typedef std::vector VectorRevolverInfo; typedef std::vector::iterator VectorRevolverInfoIt; typedef std::vector VectorAFMInfo; typedef std::vector::iterator VectorAFMInfoIt; typedef std::vector VectorWsiInfo; typedef std::vector::iterator VectorWsiInfoIt; class AFX_EXT_CLASS CMagnificInfo { public: CMagnificInfo(void); virtual ~CMagnificInfo(void); public: void Reset(); void SetInfo(const CMagnificInfo& rhs); void GetInfo(CMagnificInfo& rhs); public: CString m_strMagnificName; // ¹èÀ² ¸íĪ. double m_dMagnification; // ¹èÀ² double m_dMagnificOffsetX; // ¹èÀ² X¿É¼Â(mm) double m_dMagnificOffsetY; // ¹èÀ² Y¿É¼Â(mm) double m_dTestOffsetX; // ¹èÀ² X¿É¼Â(mm) cmark double m_dTestOffsetY; // ¹èÀ² Y¿É¼Â(mm) int m_nMsgHomePosition; // AFM Msg ȨÆ÷Áö¼Ç }; typedef std::vector VectorMagnificInfo; typedef std::vector::iterator VectorMagnificInfoIt; typedef std::vector::const_iterator constVectorMagnificInfoIt; // enum ModuleType { ModuleType_Review=1, ModuleType_Measure=2, ModuleType_Wsi=4 }; // enum LensType { LensType_SingleTube=0, LensType_DualTube, LensType_Count }; class AFX_EXT_CLASS CHeaderInfo { public: CHeaderInfo(void); virtual ~CHeaderInfo(void); public: void Reset(); // getter void GetInfo(CHeaderInfo& rhs); int GetCameraInfoCount() const { return (int)m_vecCameraInfo.size(); } int GetLightInfoCount() const { return (int)m_vecLightInfo.size(); } int GetRevolverInfoCount() const { return (int)m_vecRevolverInfo.size(); } int GetAFMInfoCount() const { return (int)m_vecAFMInfo.size(); } int GetWsiInfoCount() const { return (int)m_vecWsiInfo.size(); } int GetMagnificInfoCount() const { return (int)m_vecMagnificInfo.size(); } CCameraControlInfo_Plus* GetCameraInfo(int nIndex); const CCameraControlInfo_Plus* GetCameraInfo(int nIndex) const; CLightControlInfo* GetLightInfo(int nIndex); const CLightControlInfo* GetLightInfo(int nIndex) const; CLensChangeControlInfo* GetRevolverInfo(int nIndex); const CLensChangeControlInfo* GetRevolverInfo(int nIndex) const; CAfmControlInfo* GetAFMInfo(int nIndex); const CAfmControlInfo* GetAFMInfo(int nIndex) const; CWsiControlInfo* GetWsiInfo(int nIndex); const CWsiControlInfo* GetWsiInfo(int nIndex) const; CMagnificInfo* GetMagnificInfo(int nIndex); const CMagnificInfo* GetMagnificInfo(int nIndex) const; // setter void SetInfo(const CHeaderInfo& rhs); void SetCameraInfoCount(int nCount) { m_vecCameraInfo.resize(nCount); } void SetLightInfoCount(int nCount) { m_vecLightInfo.resize(nCount); } void SetRevolverInfoCount(int nCount) { m_vecRevolverInfo.resize(nCount); } void SetAFMInfoCount(int nCount) { m_vecAFMInfo.resize(nCount); } void SetWSIInfoCount(int nCount) { m_vecWsiInfo.resize(nCount); } void SetMagnificInfoCount(int nCount) { m_vecMagnificInfo.resize(nCount); } public: int m_nModuleType; int m_nLensType; BOOL m_bStandardHeader; CString m_strYAxisName; CString m_strZAxisName; int m_nLightIndex; int m_nLightChannel; int m_nRevolverIndex; int m_nRevolverChannel; int m_nAFMIndex; int m_nAFMChannel; int m_nWSIIndex; int m_nWSIChannel; protected: VectorCameraInfo m_vecCameraInfo; VectorLightInfo m_vecLightInfo; VectorRevolverInfo m_vecRevolverInfo; VectorAFMInfo m_vecAFMInfo; VectorWsiInfo m_vecWsiInfo; VectorMagnificInfo m_vecMagnificInfo; };