1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- #pragma once
- #include "Hole.h"
- namespace OTSDATA {
- class __declspec(dllexport) CStage : public xmls::ISlo
- {
- /*protected:
- DECLARE_SERIAL(CStage)*/
- public:
- CStage(); // constructor
- CStage(const CStage&); // copy constructor
- CStage(CStage*); // copy constructor
- CStage& operator=(const CStage&); // =operator
- BOOL operator==(const CStage&); // ==operator
- virtual ~CStage(); // destructor
- // serialization
- void Serialize(bool isStoring, tinyxml2::XMLDocument * classDoc, tinyxml2::XMLElement * rootNode);
- // stage name
- CString GetName() { return m_strName; }
- void SetName(CString a_strName) { m_strName = a_strName; }
- // boundary
- CDomainPtr GetBoundary() { return m_poBourary; }
- void SetBoundary(CDomainPtr a_poBourary);
- // std
- CDomainPtr GetSTD() { return m_poSTD; }
- void SetSTD(CDomainPtr a_poSTD);
- // sample holes list
- CHolesList& GetHoleList() { return m_listHoles; }
- void SetHoleList(CHolesList& a_plistHoles, BOOL a_bClear = TRUE);
- CHolePtr GetHoleByIndex(int a_nIndex);
- CHolePtr GetHoleByName(CString a_strHoleName);
-
- protected:
- // cleanup
- void Cleanup();
- // initialization
- void Init();
- // duplication
- void Duplicate(const CStage& a_oSource);
- // stage name
- CString m_strName;
- // boundary
- CDomainPtr m_poBourary;
- // std
- CDomainPtr m_poSTD;
- // sample holes list
- CHolesList m_listHoles;
- };
- typedef std::shared_ptr<CStage> CStagePtr;
- typedef std::vector<CStagePtr> CStagesList;
- }
|