74 lines
2.8 KiB
C
74 lines
2.8 KiB
C
#ifndef ROI_DEFINE_H
|
||
#define ROI_DEFINE_H
|
||
#include <QVector>
|
||
#include <QString>
|
||
//感应区限值结构
|
||
/*typedef struct tagROILimit
|
||
{
|
||
QVector<double> ROI_B_start_x1;// ROI B-rang start,x1(keV)
|
||
QVector<double> ROI_B_stop_x2; // ROI B_rang stop,x2(kev)
|
||
QVector<double> ROI_G_start_y1;// ROI G-rang start,y1(keV)
|
||
QVector<double> ROI_G_stop_y2; // ROI G_rang stop,y2(kev)
|
||
}*pROILimit,ROILimit;
|
||
*/
|
||
//感兴趣区 边界值
|
||
typedef struct tagROIBoundary
|
||
{
|
||
QVector<int> ROI_B_start_x;
|
||
QVector<int> ROI_B_stop_x;
|
||
QVector<int> ROI_G_start_y;
|
||
QVector<int> ROI_G_stop_y;
|
||
}*pROIBoundary,ROIBoundary;
|
||
|
||
typedef struct tagHistogram
|
||
{
|
||
long b_channels; // β-channels
|
||
long g_channels; // γ-channels
|
||
QVector<long long> counts; // counts at channels
|
||
}*pHistogram,Histogram;
|
||
//计算感兴趣计数时需要传入数据的结构
|
||
typedef struct tagROIctsI
|
||
{
|
||
ROIBoundary roi_boundary;
|
||
Histogram histogram;
|
||
}*pROIctsI,ROIctsI;
|
||
//感兴趣区计数返回值结构
|
||
|
||
//感兴趣区计数返回值
|
||
typedef struct tagROIctsO
|
||
{
|
||
QVector<double> roi_cts; //感兴趣兴趣区总计数
|
||
|
||
}*pROIctsO,ROIctsO;
|
||
|
||
//计算感兴趣区净计数输入参数
|
||
typedef struct tagROINetXectsI
|
||
{
|
||
QVector<double> roi_cts; //样品普或者气体谱感兴趣总计数
|
||
QVector<double> roi_ratios; //感兴趣比率
|
||
QVector<double> roi_detbg_cts; //探测器本地谱感兴区总计数
|
||
double ratio; //样品谱LT和气体本底谱/探测器本底谱LT 比率值
|
||
}*pNetXectsI,NetXectsI;
|
||
//计算净计数总数计算输入参数
|
||
//数据校验结构 c
|
||
typedef struct tagSGTime //样品普和气体本地谱时间参数
|
||
{
|
||
double s_acquisition_real_time; //acquisition real time (s)
|
||
double s_acquisition_live_time; //acquisition live time (s)
|
||
double g_acquisition_real_time; //acquisition real time (s)
|
||
double g_acquisition_live_time; //acquisition live time (s)
|
||
double gtos_acqStartDiff; //气体本地谱与样品谱acquistion的相对时间
|
||
}*pSGTime,SGTime;
|
||
typedef struct tagROINetCountsI
|
||
{
|
||
QVector<double> s_netXe; //样品谱到探测器本地谱计数 [n..0] 计数 [n..1]计数偏差 [n..2]感兴趣区关键水平 [0-2]=0;
|
||
// the ROIs are numbered from one, so the first three
|
||
// positions are filled with zeroes.
|
||
QVector<double> g_netXe; //气体本地谱道探测器本地谱计数 [n..0] 计数 [n..1]计数偏差 [n..2]感兴趣区关键水平 [0-2]=0;
|
||
// the ROIs are numbered from one, so the first three
|
||
// positions are filled with zeroes.
|
||
SGTime time;
|
||
}*pNetCountsI,NetCountsI;
|
||
|
||
#endif
|