#pragma once #include "PropItem.h" namespace OTSCLRINTERFACE { using namespace System; using namespace OTSMODEL; public ref class CPropItemClr :public Object { public: CPropItemClr(); CPropItemClr(CPropItem*); // copy constructor CPropItemClr(CPropItemPtr); // copy constructor !CPropItemClr(); ~CPropItemClr(); CPropItemPtr GetCPropItemPtr(); // name String^ GetName(); void SetName(String^ a_strName); // description String^ GetDescription(); void SetDescription(String^ a_strDescription); // sample item Id int GetSmplItemId(); void SetSmplItemId(int a_nSmplId); // report item Id int GetReportItemId(); void SetReportItemId(int a_nReportId); // item type int GetTypeId(); void SetTypeId(int a_nType); // read only flag bool IsReadOnly(); void SetReadOnly(bool a_bReadOnly); private: CPropItemPtr* m_LpPropItem; }; typedef System::Collections::Generic::List CPropItemsListClr; public ref class CPropItemGrpClr: public Object { public: CPropItemGrpClr(); // constructor CPropItemGrpClr(CPropItemGrp*); // copy constructor CPropItemGrpClr(CPropItemGrpPtr); // copy constructor !CPropItemGrpClr(); ~CPropItemGrpClr(); CPropItemGrpPtr GetPropItemGrpPtr(); // group name String^ GetName(); void SetName(String^ a_strName); // items group Id int GetGroupId(); void SetGroupId(int a_nId); // items list CPropItemsListClr^ GetItemsList(); void SetItemsList(CPropItemsListClr^ a_listPropItems); private: CPropItemGrpPtr* m_LpPropItemGrp; }; typedef System::Collections::Generic::List CPropItemGrpsListClr; }