EnergySpectrumMeasureService/3rdlib/DeviceManage/include/OneComptonResultDataExport.h
2026-04-06 22:03:00 +08:00

145 lines
3.0 KiB
C++

#pragma once
#ifndef DEVICEMANAGE_EXPORTS
#include <Windows.h>
#include "OneChannelDataExport.h"
#include <map>
using namespace std;
#define ANTI_COMPTON_MAX_NAME_LEN 32
#pragma pack(push,1)
enum eComptonFuntion
{
,
,
,
,
};
class OneComptonSuppressSetting
{
public:
char m_strMCName[ANTI_COMPTON_MAX_NAME_LEN];
char m_strMethodName[ANTI_COMPTON_MAX_NAME_LEN];
eComptonFuntion m_eFunction;
int m_iBoardNum;
int m_iChannelNum;
BOOL m_bDisplayOrgCptSprt;
BOOL m_bDisplayNowCptSprt;
BOOL m_bDisplayLMSprt;
BOOL m_bDisplayRiseTimeSprt;
BOOL m_bDisplayFallTimeSprt;
__int64 m_i64AdjustTickCount;
__int64 m_i64MinAllowTickCount;
__int64 m_i64MaxAllowTickCount;
BOOL m_bContainAmpValue;
unsigned char reserve[32];
int m_iSubSettingNum;
OneComptonSuppressSetting *m_pSubComptonSetting;
};
class OneDeviceComptonSuppressSetting
{
public:
int m_iTotalComptonNum;
int m_iTotalChannelNum;
unsigned char reserve[32];
OneComptonSuppressSetting *m_pComptonSetting;
};
struct OneMainAndChCountStatistic
{
__int64 ch;
__int64 count;
};
class OneAntiSatisfyMainAndSubChCountStatistic
{
public:
void* __vfp;
map<__int64, int> *m_pmapData;
OneMainAndChCountStatistic * m_pData;
void* m_mutex;
int m_iMaxDataLen;
int m_iCurDataLen;
double m_dRealTime;
__int64 m_i64TotalCount;
double m_dCountRate;
int m_LastUpdateTickCount;
__int64 m_BeginTickCount;
__int64 m_TotalTickCount;
double m_DeadTimeInSec;
SYSTEMTIME m_sDateTime;
double dreserve;
void *m_pPriveOnfo;
};
class OneAntiComptonStatisticInfoExt
{
public:
OneComptonSuppressSetting *m_pCptSetting;
OneAntiComptonStatisticInfoExt *m_pSub;
OneSpecturmDataInfo m_CoinSprtInfo;
OneSpecturmDataInfo m_AntiCoinSprtInfo;
OneAntiSatisfyMainAndSubChCountStatistic m_MainAndSubChStatistic;
};
class OneAntiComptonSatisfyTimeInfo :public OneDataInfo
{
protected:
int m_iMinTime;
int m_iMaxTime;
};
class AntiSatisfyDatas
{
public:
void* __vfp;
int m_iBufferLen;
int m_iCurLen;
void *m_pAntiSatisfyData;
int m_iBufferLenExt;
int m_iCurLenExt;
void *m_pAntiSatisfyDataExt;
};
class OneAntiComptonStatisticInfoExtForAll
{
public:
OneComptonSuppressSetting *m_pCptSetting;
OneAntiComptonStatisticInfoExt *m_pSub;
OneSpecturmDataInfo m_CoinCmbSprtInfo;
OneSpecturmDataInfo m_AntiCoinSprtInfo;
OneSpecturmDataInfo m_CoinSingleSprtInfo;
OneSpecturmDataInfo m_CoinMulSprtInfo;
// 主多-符合合成
OneSpecturmDataInfo m_MainMulSubCmbSprtInfo;
// 主多-符合无
OneSpecturmDataInfo m_MainMulSubNoneSprtInfo;
OneSpecturmDataInfo m_SubCoinMainCmbSubCmbSprtInfo;
// 符合通道所有,主探测器通道多个
OneSpecturmDataInfo m_SubCoinMainMulSubCmbSprtInfo;
OneAntiComptonSatisfyTimeInfo m_SatisfyTimeInfo;
OneAntiComptonSatisfyTimeInfo m_SatisfyTimeInfoMin;
OneAntiComptonSatisfyTimeInfo m_SatisfyTimeInfoMax;
AntiSatisfyDatas m_SatisfyDatas;
OneAntiSatisfyMainAndSubChCountStatistic m_MainAndSubChStatisticForCmb;
OneAntiSatisfyMainAndSubChCountStatistic m_MainMulAndSubCmbChStatistic;
};
#pragma pack(pop)
#endif