TriTempItemClr.cpp 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. #include "stdafx.h"
  2. #include "TriTempItemClr.h"
  3. namespace OTSINTERFACE {
  4. CTriTempItemClr::CTriTempItemClr() // constructor
  5. {
  6. m_LpTempItem = new CTriTempItemPtr(new CTriTempItem());
  7. }
  8. CTriTempItemClr::CTriTempItemClr(CTriTempItemPtr a_pTriTempItem) // copy constructor
  9. {
  10. ASSERT(a_pTriTempItem);
  11. if (!a_pTriTempItem)
  12. {
  13. LogErrorTrace(__FILE__, __LINE__, _T("CTriTempItemClr: invalid pointer."));
  14. return;
  15. }
  16. m_LpTempItem = new CTriTempItemPtr(a_pTriTempItem);
  17. }
  18. CTriTempItemClr::~CTriTempItemClr()
  19. {
  20. if (m_LpTempItem != nullptr)
  21. {
  22. delete m_LpTempItem;
  23. m_LpTempItem = nullptr;
  24. }
  25. }
  26. CTriTempItemClr::!CTriTempItemClr()
  27. {
  28. if (m_LpTempItem != nullptr)
  29. {
  30. delete m_LpTempItem;
  31. m_LpTempItem = nullptr;
  32. }
  33. }
  34. CTriTempItemPtr CTriTempItemClr::GetTriTempItemPtr()
  35. {
  36. return *m_LpTempItem;
  37. }
  38. // triangle element list
  39. CTriTempItemElementListClr^ CTriTempItemClr::GetTriTempItemElementList()
  40. {
  41. if (m_LpTempItem == nullptr)
  42. {
  43. LogErrorTrace(__FILE__, __LINE__, _T("GetTriTempItemElementList:empty pointer."));
  44. return nullptr;
  45. }
  46. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  47. ASSERT(pTriTempItem);
  48. if (!pTriTempItem)
  49. {
  50. LogErrorTrace(__FILE__, __LINE__, _T("GetTriTempItemElementList: invalide pointer."));
  51. return nullptr;
  52. }
  53. CTriTempItemElementList listTriTempItemElement = pTriTempItem->GetTriTempItemElementList();
  54. CTriTempItemElementListClr^ listTriTempItemElementClr = gcnew CTriTempItemElementListClr();
  55. for (auto pTriTempItemElement : listTriTempItemElement)
  56. {
  57. CTriTempItemElementClr^ TriTempItemElementClr = gcnew CTriTempItemElementClr(pTriTempItemElement);
  58. listTriTempItemElementClr->Add(TriTempItemElementClr);
  59. }
  60. return listTriTempItemElementClr;
  61. }
  62. void CTriTempItemClr::SetTriTempItemElementList(CTriTempItemElementListClr^ a_listTriTempItemElement, bool a_bClear)
  63. {
  64. if (m_LpTempItem == nullptr)
  65. {
  66. LogErrorTrace(__FILE__, __LINE__, _T("SetTriTempItemElementList:empty pointer."));
  67. return;
  68. }
  69. ASSERT(a_listTriTempItemElement);
  70. if (!a_listTriTempItemElement)
  71. {
  72. LogErrorTrace(__FILE__, __LINE__, _T("SetTriTempItemElementList: invalid listTriTemp pointer."));
  73. return;
  74. }
  75. CTriTempItemElementList listTriTempItemElement;
  76. int nSize = a_listTriTempItemElement->Count;
  77. for (int i = 0; i < nSize; i++)
  78. {
  79. CTriTempItemElementPtr pTriTempItemElement = a_listTriTempItemElement[i]->GetTriTempItemElementPtr();
  80. ASSERT(pTriTempItemElement);
  81. if (!pTriTempItemElement)
  82. {
  83. LogErrorTrace(__FILE__, __LINE__, _T("SetTriTempItemElementList: invalid TriTemp pointer."));
  84. return;
  85. }
  86. listTriTempItemElement.push_back(pTriTempItemElement);
  87. }
  88. (*m_LpTempItem)->SetTriTempItemElementList(listTriTempItemElement, a_bClear);
  89. //m_LpTempItem->SetTriTempItemElementList(listTriTempItemElement, a_bClear);
  90. }
  91. //element id
  92. int CTriTempItemClr::GetTemplateID()
  93. {
  94. if (m_LpTempItem == nullptr)
  95. {
  96. LogErrorTrace(__FILE__, __LINE__, _T("GetTemplateID: current CLR point is invalid."));
  97. return -1;
  98. }
  99. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  100. ASSERT(pTriTempItem);
  101. if (!pTriTempItem)
  102. {
  103. LogErrorTrace(__FILE__, __LINE__, _T("GetTemplateID:invalid pointer."));
  104. return -1;
  105. }
  106. return pTriTempItem->GetTemplateID();
  107. }
  108. void CTriTempItemClr::SetTemplateID(int a_TemplateID)
  109. {
  110. if (m_LpTempItem == nullptr)
  111. {
  112. LogErrorTrace(__FILE__, __LINE__, _T("SetTemplateID: current CLR point is invalid."));
  113. return;
  114. }
  115. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  116. ASSERT(pTriTempItem);
  117. if (!pTriTempItem)
  118. {
  119. LogErrorTrace(__FILE__, __LINE__, _T("SetTemplateID:invalid pointer."));
  120. return;
  121. }
  122. pTriTempItem->SetTemplateID(a_TemplateID);
  123. }
  124. //template name
  125. String^ CTriTempItemClr::GetTemplateName()
  126. {
  127. if (m_LpTempItem == nullptr)
  128. {
  129. LogErrorTrace(__FILE__, __LINE__, _T("GetTemplateName: current CLR point is invalid."));
  130. return nullptr;
  131. }
  132. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  133. ASSERT(pTriTempItem);
  134. if (!pTriTempItem)
  135. {
  136. LogErrorTrace(__FILE__, __LINE__, _T("GetTemplateName:invalid pointer."));
  137. return nullptr;
  138. }
  139. CString sTriTemp = pTriTempItem->GetTemplateName();
  140. String^ sTriTempClr = gcnew String(sTriTemp);
  141. return sTriTempClr;
  142. }
  143. void CTriTempItemClr::SetTemplateName(String^ a_strTemplateName)
  144. {
  145. if (m_LpTempItem == nullptr)
  146. {
  147. LogErrorTrace(__FILE__, __LINE__, _T("SetTemplateName: current CLR point is invalid."));
  148. return;
  149. }
  150. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  151. ASSERT(pTriTempItem);
  152. if (!pTriTempItem)
  153. {
  154. LogErrorTrace(__FILE__, __LINE__, _T("SetTemplateName:invalid pointer."));
  155. return;
  156. }
  157. ASSERT(a_strTemplateName);
  158. if (!a_strTemplateName)
  159. {
  160. LogErrorTrace(__FILE__, __LINE__, _T("SetTemplateName:invalid pointer."));
  161. return;
  162. }
  163. pTriTempItem->SetTemplateName(a_strTemplateName);
  164. }
  165. // top name
  166. String^ CTriTempItemClr::GetTopName()
  167. {
  168. if (m_LpTempItem == nullptr)
  169. {
  170. LogErrorTrace(__FILE__, __LINE__, _T("GetTopName: current CLR point is invalid."));
  171. return nullptr;
  172. }
  173. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  174. ASSERT(pTriTempItem);
  175. if (!pTriTempItem)
  176. {
  177. LogErrorTrace(__FILE__, __LINE__, _T("GetTopName:invalid pointer."));
  178. return nullptr;
  179. }
  180. CString sTopName = pTriTempItem->GetTopName();
  181. String^ sTopnameClr = gcnew String(sTopName);
  182. return sTopnameClr;
  183. }
  184. void CTriTempItemClr::SetTopName(String^ a_strTopName)
  185. {
  186. if (m_LpTempItem == nullptr)
  187. {
  188. LogErrorTrace(__FILE__, __LINE__, _T("SetTopName: current CLR point is invalid."));
  189. return;
  190. }
  191. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  192. ASSERT(pTriTempItem);
  193. if (!pTriTempItem)
  194. {
  195. LogErrorTrace(__FILE__, __LINE__, _T("SetTopName:invalid pointer."));
  196. return;
  197. }
  198. pTriTempItem->SetTopName(a_strTopName);
  199. }
  200. // left name
  201. String^ CTriTempItemClr::GetLeftName()
  202. {
  203. if (m_LpTempItem == nullptr)
  204. {
  205. LogErrorTrace(__FILE__, __LINE__, _T("GetLeftName: current CLR point is invalid."));
  206. return nullptr;
  207. }
  208. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  209. ASSERT(pTriTempItem);
  210. if (!pTriTempItem)
  211. {
  212. LogErrorTrace(__FILE__, __LINE__, _T("GetLeftName:invalid pointer."));
  213. return nullptr;
  214. }
  215. CString sLeftName = pTriTempItem->GetLeftName();
  216. String^ sLeftnameClr = gcnew String(sLeftName);
  217. return sLeftnameClr;
  218. }
  219. void CTriTempItemClr::SetLeftName(String^ a_strLeftName)
  220. {
  221. if (m_LpTempItem == nullptr)
  222. {
  223. LogErrorTrace(__FILE__, __LINE__, _T("SetLeftName: current CLR point is invalid."));
  224. return;
  225. }
  226. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  227. ASSERT(pTriTempItem);
  228. if (!pTriTempItem)
  229. {
  230. LogErrorTrace(__FILE__, __LINE__, _T("SetLeftName:invalid pointer."));
  231. return;
  232. }
  233. pTriTempItem->SetLeftName(a_strLeftName);
  234. }
  235. // right name
  236. String^ CTriTempItemClr::GetRightName()
  237. {
  238. if (m_LpTempItem == nullptr)
  239. {
  240. LogErrorTrace(__FILE__, __LINE__, _T("GetRightName: current CLR point is invalid."));
  241. return nullptr;
  242. }
  243. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  244. ASSERT(pTriTempItem);
  245. if (!pTriTempItem)
  246. {
  247. LogErrorTrace(__FILE__, __LINE__, _T("GetRightName:invalid pointer."));
  248. return nullptr;
  249. }
  250. CString sRightName = pTriTempItem->GetRightName();
  251. String^ sRightnameClr = gcnew String(sRightName);
  252. return sRightnameClr;
  253. }
  254. void CTriTempItemClr::SetRightName(String^ a_strRightName)
  255. {
  256. if (m_LpTempItem == nullptr)
  257. {
  258. LogErrorTrace(__FILE__, __LINE__, _T("SetRightName: current CLR point is invalid."));
  259. return;
  260. }
  261. CTriTempItemPtr pTriTempItem = GetTriTempItemPtr();
  262. ASSERT(pTriTempItem);
  263. if (!pTriTempItem)
  264. {
  265. LogErrorTrace(__FILE__, __LINE__, _T("SetRightName:invalid pointer."));
  266. return;
  267. }
  268. pTriTempItem->SetRightName(a_strRightName);
  269. }
  270. }