|
@@ -0,0 +1,37 @@
|
|
|
+#include "stdafx.h"
|
|
|
+#include "CSpectrumData.h"
|
|
|
+#include "otsdataconst.h"
|
|
|
+using namespace OTSDATA;
|
|
|
+CSpectrumData::CSpectrumData(int validStart, DWORD* xrayData)
|
|
|
+{
|
|
|
+ m_startChannel = validStart;
|
|
|
+ m_pXrayData = xrayData;
|
|
|
+ m_vectorNorm = 0;
|
|
|
+
|
|
|
+}
|
|
|
+DWORD* CSpectrumData::GetXrayData()
|
|
|
+{
|
|
|
+ return m_pXrayData;
|
|
|
+}
|
|
|
+double CSpectrumData::GetVectorNorm()
|
|
|
+{
|
|
|
+ if (m_vectorNorm == 0)
|
|
|
+ {
|
|
|
+ double d1 = 0;
|
|
|
+ double sumOfchannelPower=0;
|
|
|
+ for (int i = m_startChannel; i < GENERALXRAYCHANNELS; i++)
|
|
|
+ {
|
|
|
+ double r1 = m_pXrayData[i];
|
|
|
+ r1 *= r1;
|
|
|
+ sumOfchannelPower = sumOfchannelPower + r1;
|
|
|
+
|
|
|
+ }
|
|
|
+ d1 = sqrt(sumOfchannelPower);
|
|
|
+ m_vectorNorm = d1;
|
|
|
+ return m_vectorNorm;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return m_vectorNorm;
|
|
|
+ }
|
|
|
+}
|