ExpressionClassifyEngine.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #pragma once
  2. #include "IClassifyEngine.h"
  3. #include "ExpressionParseEngine/ParticleSTD.h"
  4. namespace OTSClassifyEngine
  5. {
  6. class ExpressionClassifyEngine :public IClassifyEngine
  7. {
  8. public:
  9. ExpressionClassifyEngine(std::string name) :m_StrName(name) {}; //³ÉÔ±Áбí³õʼ»¯²ÎÊý
  10. virtual ~ExpressionClassifyEngine() {};
  11. virtual bool Init() override;
  12. virtual bool IfNeedMaxEDS(COTSParticlePtr particle, CPosXrayPtr xray, double& MaxEDSTime) override;
  13. // Inherited via IClassifyEngine
  14. virtual bool ClassifyBySpectrum(COTSParticlePtr particle, CPosXrayPtr xray) override;
  15. virtual bool ClassifyExpression(COTSParticlePtr particle, CPosXrayPtr xray) override;
  16. virtual bool ClassifyByExpressionTemporarySpectrum(COTSParticlePtr particle, CPosXrayPtr xray) override;
  17. virtual bool ClassifyIncA(COTSParticlePtr particle, int SteelTech, CPosXrayPtr xray) override;
  18. private:
  19. ParticleSTDPtr m_std;
  20. string m_StrName;
  21. CString GetEleNameBySortingPercentage(CString sortingNo, CPosXrayPtr xrayInfo);
  22. double GetMacValue(CString MacStr);
  23. int GetAtomicNoBySortingPercentage(CString sortingNo, CPosXrayPtr xrayInfo);
  24. CElementChemistriesList ZeroElementProcess(COTSParticlePtr particle, CPosXrayPtr xray);
  25. };
  26. }