| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 | #pragma once#include "PosXray.h"#include "Element.h"#include "SEMCommonConst.h"#include "Bruker\OTSBrukerImpl_const.h"namespace OTSController{		using namespace OTSDATA;		#ifdef UNICODE#define isdigit_t iswdigit#else#define isdigit_t isdigit#endif			class __declspec(dllexport) COTSEDSBase	{	public:		COTSEDSBase(void);		~COTSEDSBase(void);						// Get EDS type		// virtual		virtual EDSController::EDS_ID GetType() = 0;				virtual BOOL Init() = 0;				//-------- collect spectrum data,for testing			virtual BOOL CollectSpectrum(DWORD a_nMilliseconds) = 0;		virtual BOOL CollectSpectrum(DWORD a_nMilliseconds, const CPoint& a_oPoint) = 0;		virtual BOOL CollectSpectrum(DWORD a_nMilliseconds, long* a_pCounts, DWORD a_nBufferSize) = 0;		//---------------		virtual BOOL StopXrayAcquistion() = 0;		// quantify spectrum		// Get x-Ray data		// virtual		virtual DWORD* GetXRayData() = 0;		// get max points limit		virtual long GetMaxPointLimit(void) = 0;		// get live time		// virtual 		virtual float GetLiveTime(void) = 0;			virtual BOOL GetXRayByPoints(std::vector<CPosXrayPtr>& a_vXRayPoints, const DWORD a_nXRayAQTime) = 0;		virtual BOOL QuantifyXrays(std::vector<CPosXrayPtr>& a_vXRayParts)=0;//in our system ,one particle has one CPosXray object.		virtual BOOL QuantifyXray(CPosXrayPtr& a_vXRayPart)=0;		virtual BOOL GetXRayByFeatures(std::vector<CPosXrayPtr>& a_listXRayPoints,			std::vector<BrukerFeature>& a_listFeatures,			const DWORD a_nXRayAQTime) = 0;		// Quantification		virtual void SetQuantification(BOOL a_bQuantification) = 0;		virtual BOOL GetQuantification() = 0;		virtual DWORD GetNumberOfChannels(void) = 0;							virtual void SetExpectCount(int expectcount)=0 ;		virtual int GetExpectCount() = 0;		virtual void SetQuantificationParam(bool ifauto, CString knownelements)=0;	protected:			virtual BOOL GetQuantificationMethods(std::vector<CString>& a_vMethods) = 0;		virtual BOOL QuantifyXrayPoint(CPosXray* a_pXRayPoint, LPCTSTR a_sMethodName) = 0;		virtual BOOL QuantifySpectrumFile(LPCTSTR a_sFilePathName, LPCTSTR a_sMethodName, CElementChemistriesList& a_listElementChemistry) = 0;		virtual BOOL QuantifySpectrumOut(DWORD a_nMilliseconds, long* a_pCounts, DWORD a_nBufferSize, CElementChemistriesList& a_listElementChemistry) = 0;			// x-Ray data		DWORD m_nRayData[(long)EDSConst::XANA_CHANNELS];		//amplify time list		float m_list_ampTime[(long)EDSConst::MAX_AMPTIME_CONSTANTS];		//amplify times		long m_nTimeCounts;		// do quantification		BOOL m_bDoQuantification;	};	typedef std::shared_ptr<COTSEDSBase> COTSEDSBasePtr;}
 |