PosXrayClr.h 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. #pragma once
  2. #include "PosXray.h"
  3. #include "ElementChemistryClr.h"
  4. namespace OTSCLRINTERFACE {
  5. using namespace System;
  6. using namespace System::Drawing;
  7. using namespace OTSDATA;
  8. public ref class CPosXrayClr
  9. {
  10. public:
  11. CPosXrayClr(); // constructor
  12. // copy constructor
  13. CPosXrayClr(CPosXrayPtr); // copy constructor
  14. CPosXrayPtr GetPosXrayPtr();
  15. CPosXrayClr(CPosXray*);
  16. CPosXrayClr(CPosXrayClr^);
  17. ~CPosXrayClr();
  18. !CPosXrayClr();
  19. // channels
  20. long GetChannelsNum() { return m_PosXray->get()->GetChannelsNum (); }
  21. // x-ray data
  22. cli::array<DWORD>^ GetXrayData();
  23. CElementChemistryListClr ^ GetElementQuantifyData();
  24. String^ GetQuantifiedElementsStr();
  25. // { return m_nXrayData; }
  26. void SetXrayData(cli::array<DWORD>^ a_pnXrayData);
  27. DWORD GetTotalCount();
  28. void GetMaxHeightPosition(long % a_nMaxHeight, long % a_nPosition);
  29. // clear the x-ray data
  30. // if start position is [0, GENERALXRAYCHANNELS - 1], will do the clear
  31. void ClearXrayData(long a_nStartPos);
  32. // set x-ray data at channel
  33. void SetXrayDataAtChannel(DWORD a_nXray, long a_nChannel);
  34. System::Drawing::Point^ GetPosition();
  35. void SetPosition(System::Drawing::Point^ a_poiPosition);
  36. // index
  37. long GetIndex();
  38. void SetIndex(long a_nIndex);
  39. // field id
  40. long GetScanFieldId();
  41. void SetScanFieldId(long a_nScanfieldId);
  42. // particle tag id
  43. long GetPartTagId();
  44. void SetPartTagId(long a_nPartTagId);
  45. // feature id
  46. long GetFeatureId();
  47. void SetFeatureId(long a_nFeatureId);
  48. void SetElementQuantifyData(CElementChemistryListClr^ a_listElementQuantifyData);
  49. void AddQuantifyElement(CElementChemistryClr^);
  50. void NormalizeXrayQuantifyData();
  51. void SetElementNum(int num);
  52. int GetElementNum();
  53. protected:
  54. CPosXrayPtr* m_PosXray;
  55. };
  56. typedef System::Collections::Generic::List<CPosXrayClr^> CPosXrayListClr;
  57. }