15 #include "itkMutexLock.h" 21 bool isPhotoacousticImage,
22 unsigned int samplesPerLine,
23 unsigned int reconstructionLines,
24 unsigned int* inputDim,
25 float reconstructionDepth,
27 unsigned int GPUBatchSize,
29 unsigned int apodizationArraySize,
34 m_PitchInMeters(pitchInMeters),
35 m_SpeedOfSound(speedOfSound),
36 m_TimeSpacing(timeSpacing),
38 m_IsPhotoacousticImage(isPhotoacousticImage),
39 m_SamplesPerLine(samplesPerLine),
40 m_ReconstructionLines(reconstructionLines),
41 m_ReconstructionDepth(reconstructionDepth),
43 m_GPUBatchSize(GPUBatchSize),
45 m_ApodizationArraySize(apodizationArraySize),
46 m_Algorithm(algorithm),
48 m_ProbeRadius(probeRadius),
49 m_MinMaxLines(nullptr)
51 if (inputDim ==
nullptr)
54 mitkThrow() <<
"No input dimension given.";
59 case BeamformingSettings::Apodization::Hann:
62 case BeamformingSettings::Apodization::Hamm:
65 case BeamformingSettings::Apodization::Box:
70 m_InputDim =
new unsigned int[3]{ inputDim[0], inputDim[1], inputDim[2] };
81 float elementAngle = 0;
85 elementAngle = ((i- m_TransducerElements /2.f) *
m_PitchInMeters) / (probeRadius * 2 * itk::Math::pi) * 2 * itk::Math::pi;
103 MITK_INFO <<
"Destructing beamforming settings...";
107 MITK_INFO <<
"Deleting apodization function...";
109 MITK_INFO <<
"Deleting apodization function...[Done]";
116 MITK_INFO <<
"Deleting input dim...[Done]";
120 MITK_INFO <<
"Deleting element geometry...";
126 MITK_INFO <<
"Destructing beamforming settings...[Done]";