You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
199 lines
5.3 KiB
199 lines
5.3 KiB
4 years ago
|
#ifndef SSMPROBEPROPERTIES_H
|
||
|
#define SSMPROBEPROPERTIES_H
|
||
|
|
||
|
#include <QObject>
|
||
|
#include <QMetaType>
|
||
|
|
||
|
#include "model/databaseManager/dto/ProbeProperties/DbmProbeProperties.h"
|
||
|
|
||
|
struct SsmProbeProperties_t {
|
||
|
bool linear;
|
||
|
float pitch;
|
||
|
float radius;
|
||
|
int subAzimuthNo;
|
||
|
int subElevationNo;
|
||
|
int elementNo;
|
||
|
float elementWidth;
|
||
|
float elementHeight;
|
||
|
float fieldOfView;
|
||
|
QList<float> impulseResponse;
|
||
|
QList<int> angleValues;
|
||
|
QList<float> focusValues;
|
||
|
QList<float> hiFocusValues;
|
||
|
int multiFocusStep;
|
||
|
QList<int> otiC0Values;
|
||
|
QList<QList<float> > ffcValues;
|
||
|
QList<float> depthData;
|
||
|
QList<int> frequencyValues;
|
||
|
QList<int> hiFrequencyValues;
|
||
|
QList<int> dFrequencyValues;
|
||
|
QList<int> pwFrequencyValues;
|
||
|
QList<QList<float> > criSteeringAngles;
|
||
|
float rxGain;
|
||
|
float txGain;
|
||
|
QList<float> lineDensityValues;
|
||
|
QList<float> dLineDensityValues;
|
||
|
int halfCycleNoValues;
|
||
|
int ffcHalfCycleNoValues;
|
||
|
QList<int> hiHalfCycleNoValues;
|
||
|
QList<int> dopplerHalfCycleNoValues;
|
||
|
QList<float> priExtensionValue;
|
||
|
float dPriExtensionValue;
|
||
|
float txResolution;
|
||
|
float rxResolution;
|
||
|
float mLinesPri;
|
||
|
int simultPwFrameRate;
|
||
|
QList<float> virtualConvexLineDensityValues;
|
||
|
float vcMaxTheta;
|
||
|
QList<bool> piValues;
|
||
|
QList<QString> hiNames;
|
||
|
QList<float> AtgcB;
|
||
|
QList<float> AtgcD;
|
||
|
QList<float> AtgcPW;
|
||
|
QList<float> AtgcReserve;
|
||
|
|
||
|
void init(DbmDtoProbeProperties temp)
|
||
|
{
|
||
|
linear = !temp.geometry;
|
||
|
pitch = static_cast<float>(temp.pitch);
|
||
|
radius = static_cast<float>(temp.radius);
|
||
|
subAzimuthNo = temp.subAzimuthNo;
|
||
|
subElevationNo = temp.subElevationNo;
|
||
|
elementNo = temp.elementNo;
|
||
|
elementWidth = static_cast<float>(temp.elementWidth);
|
||
|
elementHeight = static_cast<float>(temp.elementHeight);
|
||
|
fieldOfView = static_cast<float>(temp.fov);
|
||
|
multiFocusStep = temp.multiFocusStep;
|
||
|
rxGain = static_cast<float>(temp.rxGain);
|
||
|
txGain = static_cast<float>(temp.txGain);
|
||
|
halfCycleNoValues = temp.halfCycleNoValues;
|
||
|
ffcHalfCycleNoValues = temp.ffcHalfCycleNoValues;
|
||
|
dPriExtensionValue = static_cast<float>(temp.dPriExtensionValue);
|
||
|
txResolution = static_cast<float>(temp.txResolution);
|
||
|
rxResolution = static_cast<float>(temp.rxResolution);
|
||
|
mLinesPri = static_cast<float>(temp.mLinesPri);
|
||
|
simultPwFrameRate = temp.simultPwFrameRate;
|
||
|
vcMaxTheta = static_cast<float>(temp.vcMaxTheta);
|
||
|
|
||
|
otiC0Values = temp.otiC0Values;
|
||
|
frequencyValues = temp.frequencyValues;
|
||
|
hiFrequencyValues = temp.hiFrequencyValues;
|
||
|
dFrequencyValues = temp.dFrequencyValues;
|
||
|
pwFrequencyValues = temp.pwFrequencyValues;
|
||
|
hiHalfCycleNoValues = temp.hiHalfCycleNoValues;
|
||
|
dopplerHalfCycleNoValues = temp.dopplerHalfCycleNoValues;
|
||
|
hiNames = temp.hiNames;
|
||
|
|
||
|
impulseResponse.clear();
|
||
|
for(auto i = 0; i < temp.impulseResponse.length(); i++)
|
||
|
{
|
||
|
impulseResponse.append(static_cast<float>(temp.impulseResponse[i]));
|
||
|
}
|
||
|
|
||
|
angleValues.clear();
|
||
|
for(auto i = 0; i < temp.angleValues.length(); i++)
|
||
|
{
|
||
|
angleValues.append(static_cast<int>(temp.angleValues[i]));
|
||
|
}
|
||
|
|
||
|
focusValues.clear();
|
||
|
for(auto i = 0; i < temp.focusValues.length(); i++)
|
||
|
{
|
||
|
focusValues.append(static_cast<float>(temp.focusValues[i]));
|
||
|
}
|
||
|
|
||
|
hiFocusValues.clear();
|
||
|
for(auto i = 0; i < temp.hiFocusValues.length(); i++)
|
||
|
{
|
||
|
hiFocusValues.append(static_cast<float>(temp.hiFocusValues[i]));
|
||
|
}
|
||
|
|
||
|
ffcValues.clear();
|
||
|
for(auto i = 0; i < temp.ffcValues.length(); i++)
|
||
|
{
|
||
|
QList<float> t;
|
||
|
for(auto j = 0; j < temp.ffcValues[i].length(); j++)
|
||
|
{
|
||
|
t.append(static_cast<float>(temp.ffcValues[i][j]));
|
||
|
}
|
||
|
ffcValues.append(t);
|
||
|
}
|
||
|
|
||
|
depthData.clear();
|
||
|
for(auto i = 0; i < temp.depthValues.length(); i++)
|
||
|
{
|
||
|
depthData.append(static_cast<float>(temp.depthValues[i]));
|
||
|
}
|
||
|
|
||
|
criSteeringAngles.clear();
|
||
|
for(auto i = 0; i < temp.criSteeringAngles.length(); i++)
|
||
|
{
|
||
|
QList<float> t;
|
||
|
for(auto j = 0; j < temp.criSteeringAngles[i].length(); j++)
|
||
|
{
|
||
|
t.append(static_cast<float>(temp.criSteeringAngles[i][j]));
|
||
|
}
|
||
|
criSteeringAngles.append(t);
|
||
|
}
|
||
|
|
||
|
lineDensityValues.clear();
|
||
|
for(auto i = 0; i < temp.lineDensityValues.length(); i++)
|
||
|
{
|
||
|
lineDensityValues.append(static_cast<float>(temp.lineDensityValues[i]));
|
||
|
}
|
||
|
|
||
|
dLineDensityValues.clear();
|
||
|
for(auto i = 0; i < temp.dLineDensityValues.length(); i++)
|
||
|
{
|
||
|
dLineDensityValues.append(static_cast<float>(temp.dLineDensityValues[i]));
|
||
|
}
|
||
|
|
||
|
priExtensionValue.clear();
|
||
|
for(auto i = 0; i < temp.priExtensionValue.length(); i++)
|
||
|
{
|
||
|
priExtensionValue.append(static_cast<float>(temp.priExtensionValue[i]));
|
||
|
}
|
||
|
|
||
|
virtualConvexLineDensityValues.clear();
|
||
|
for(auto i = 0; i < temp.virtualConvexLineDensityValues.length(); i++)
|
||
|
{
|
||
|
virtualConvexLineDensityValues.append(
|
||
|
static_cast<float>(temp.virtualConvexLineDensityValues[i]));
|
||
|
}
|
||
|
|
||
|
AtgcB.clear();
|
||
|
for(auto i = 0; i < temp.AtgcB.length(); i++)
|
||
|
{
|
||
|
AtgcB.append(static_cast<float>(temp.AtgcB[i]));
|
||
|
}
|
||
|
|
||
|
AtgcD.clear();
|
||
|
for(auto i = 0; i < temp.AtgcD.length(); i++)
|
||
|
{
|
||
|
AtgcD.append(static_cast<float>(temp.AtgcD[i]));
|
||
|
}
|
||
|
|
||
|
AtgcPW.clear();
|
||
|
for(auto i = 0; i < temp.AtgcPW.length(); i++)
|
||
|
{
|
||
|
AtgcPW.append(static_cast<float>(temp.AtgcPW[i]));
|
||
|
}
|
||
|
|
||
|
AtgcReserve.clear();
|
||
|
for(auto i = 0; i < temp.AtgcReserve.length(); i++)
|
||
|
{
|
||
|
AtgcReserve.append(static_cast<float>(temp.AtgcReserve[i]));
|
||
|
}
|
||
|
|
||
|
piValues.clear();
|
||
|
for(auto i = 0; i < temp.piValues.length(); i++)
|
||
|
{
|
||
|
piValues.append(temp.piValues[i] == 1);
|
||
|
}
|
||
|
}
|
||
|
};
|
||
|
|
||
|
Q_DECLARE_METATYPE(SsmProbeProperties_t);
|
||
|
|
||
|
#endif //SSMPROBEPROPERTIES_H
|