OTSReportProjFileClr.cpp 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. #include "stdafx.h"
  2. #include "OTSReportProjFileClr.h"
  3. namespace OTSINTERFACE {
  4. COTSReportProjFileClr::COTSReportProjFileClr()
  5. {
  6. m_LpReportFile = new CReportProjFilePtr(new CReportProjFile());
  7. }
  8. COTSReportProjFileClr::COTSReportProjFileClr(CReportProjFilePtr a_pReportProjFile)
  9. {
  10. ASSERT(a_pReportProjFile);
  11. if (!a_pReportProjFile)
  12. {
  13. LogErrorTrace(__FILE__, __LINE__, _T("COTSReportProjFileClr: Invalid report project file pointer."));
  14. return;
  15. }
  16. m_LpReportFile = new CReportProjFilePtr(a_pReportProjFile);
  17. }
  18. COTSReportProjFileClr::~COTSReportProjFileClr()
  19. {
  20. if (m_LpReportFile != nullptr)
  21. {
  22. delete m_LpReportFile;
  23. m_LpReportFile = nullptr;
  24. }
  25. }
  26. COTSReportProjFileClr::!COTSReportProjFileClr()
  27. {
  28. if (m_LpReportFile != nullptr)
  29. {
  30. delete m_LpReportFile;
  31. m_LpReportFile = nullptr;
  32. }
  33. }
  34. CReportProjFilePtr COTSReportProjFileClr::GetReportProjFilePtr()
  35. {
  36. return *m_LpReportFile;
  37. }
  38. // version string
  39. String^ COTSReportProjFileClr::GetFileVersion()
  40. {
  41. String^ FileVersionClr;
  42. if (m_LpReportFile != nullptr)
  43. {
  44. CString sFileVersion = m_LpReportFile->get()->GetFileVersion();
  45. FileVersionClr = gcnew String(sFileVersion);
  46. }
  47. return FileVersionClr;
  48. }
  49. void COTSReportProjFileClr::SetFileVersion(String^ strVersion)
  50. {
  51. ASSERT(strVersion);
  52. if (!strVersion)
  53. {
  54. LogErrorTrace(__FILE__, __LINE__, _T("SetFileVersion: invalid version."));
  55. }
  56. if (m_LpReportFile != nullptr)
  57. {
  58. m_LpReportFile->get()->SetFileVersion(strVersion);
  59. }
  60. }
  61. CPartSTDDataClr^ COTSReportProjFileClr::GetPartSTDData()
  62. {
  63. CPartSTDDataClr^ PartSTDDataClr;
  64. if (m_LpReportFile != nullptr)
  65. {
  66. CPartSTDDataPtr pPartSTDData = m_LpReportFile->get()->GetPartSTDData();
  67. ASSERT(pPartSTDData);
  68. if (!pPartSTDData)
  69. {
  70. LogErrorTrace(__FILE__, __LINE__, _T("COTSReportProjFileClr: invalid partSTDData pointer."));
  71. return PartSTDDataClr;
  72. }
  73. PartSTDDataClr = gcnew CPartSTDDataClr(pPartSTDData);
  74. }
  75. return PartSTDDataClr;
  76. }
  77. void COTSReportProjFileClr::SetPartSTDData(CPartSTDDataClr^ a_pPartSTDData)
  78. {
  79. ASSERT(a_pPartSTDData);
  80. if (!a_pPartSTDData)
  81. {
  82. LogErrorTrace(__FILE__, __LINE__, _T("SetPartSTDData: invalid part std data."));
  83. return;
  84. }
  85. if (m_LpReportFile != nullptr)
  86. {
  87. CPartSTDDataPtr pPartSTDData = a_pPartSTDData->GetPartSTDDataPtr();
  88. ASSERT(pPartSTDData);
  89. if (!pPartSTDData)
  90. {
  91. LogErrorTrace(__FILE__, __LINE__, _T("SetPartSTDData: invalid part STD data pointer."));
  92. return;
  93. }
  94. m_LpReportFile->get()->SetPartSTDData(pPartSTDData);
  95. }
  96. }
  97. // triangle template file
  98. CTriTempFileClr^ COTSReportProjFileClr::GetTriTemp()
  99. {
  100. CTriTempFileClr^ TriTempFileClr;
  101. if (m_LpReportFile != nullptr)
  102. {
  103. CTriTempFilePtr pTriTempFile = m_LpReportFile->get()->GetTriTemp();
  104. ASSERT(pTriTempFile);
  105. if (!pTriTempFile)
  106. {
  107. LogErrorTrace(__FILE__, __LINE__, _T("GetTriTemp: invalid TriTemp pointer."));
  108. return TriTempFileClr;
  109. }
  110. TriTempFileClr = gcnew CTriTempFileClr(pTriTempFile);
  111. }
  112. return TriTempFileClr;
  113. }
  114. void COTSReportProjFileClr::SetTriTemp(CTriTempFileClr^ a_pTriTemp)
  115. {
  116. ASSERT(a_pTriTemp);
  117. if (!a_pTriTemp)
  118. {
  119. LogErrorTrace(__FILE__, __LINE__, _T("SetTriTempFile: invalid part Size data."));
  120. return;
  121. }
  122. if (m_LpReportFile != nullptr)
  123. {
  124. CTriTempFilePtr pTriTempFile = a_pTriTemp->GetTriTempFilePtr();
  125. ASSERT(pTriTempFile);
  126. if (!pTriTempFile)
  127. {
  128. LogErrorTrace(__FILE__, __LINE__, _T("SetTriTemp: invalid TriTemp data pointer."));
  129. return;
  130. }
  131. m_LpReportFile->get()->SetTriTemp(pTriTempFile);
  132. }
  133. }
  134. // scaling factor
  135. double COTSReportProjFileClr::GetScale()
  136. {
  137. double dScale = 0.0;
  138. if (m_LpReportFile != nullptr)
  139. {
  140. dScale = m_LpReportFile->get()->GetScale();
  141. }
  142. return dScale;
  143. }
  144. void COTSReportProjFileClr::SetScale(double a_dScale)
  145. {
  146. if (m_LpReportFile != nullptr)
  147. {
  148. m_LpReportFile->get()->SetScale(a_dScale);
  149. }
  150. }
  151. // sample measure result file pathname strings
  152. List<String^>^ COTSReportProjFileClr::GetSmplMsrResultFilePathNames()
  153. {
  154. List<String^>^ SmplMsrResultFilePathNamesClr = gcnew List<String^>();
  155. if (m_LpReportFile != nullptr)
  156. {
  157. std::vector<CString> listSmplMsrResultFilePathNames = m_LpReportFile->get()->GetSmplMsrResultFilePathNames();
  158. for (auto sPathName : listSmplMsrResultFilePathNames)
  159. {
  160. String^ PathNameClr = gcnew String(sPathName);
  161. SmplMsrResultFilePathNamesClr->Add(PathNameClr);
  162. }
  163. }
  164. return SmplMsrResultFilePathNamesClr;
  165. }
  166. void COTSReportProjFileClr::SetSmplMsrResultFilePathNames(List<String^>^ a_listSmplMsrResultFilePathNames)
  167. {
  168. ASSERT(a_listSmplMsrResultFilePathNames);
  169. if (!a_listSmplMsrResultFilePathNames)
  170. {
  171. LogErrorTrace(__FILE__, __LINE__, _T("SetSmplMsrResultFilePathNames: invalid PathNames data."));
  172. return;
  173. }
  174. if (m_LpReportFile != nullptr)
  175. {
  176. int nSize = a_listSmplMsrResultFilePathNames->Count;
  177. std::vector<CString> listSmplMsrResultFilePathNames;
  178. for (int i = 0; i < nSize; i++)
  179. {
  180. listSmplMsrResultFilePathNames.push_back(a_listSmplMsrResultFilePathNames[i]);
  181. }
  182. m_LpReportFile->get()->SetSmplMsrResultFilePathNames(listSmplMsrResultFilePathNames);
  183. }
  184. }
  185. }