MITK-IGT
IGT Extension of MITK
Loading...
Searching...
No Matches
mitkToFCameraPMDRawDataCamBoardDeviceTest.cpp
Go to the documentation of this file.
1/*============================================================================
2
3The Medical Imaging Interaction Toolkit (MITK)
4
5Copyright (c) German Cancer Research Center (DKFZ)
6All rights reserved.
7
8Use of this source code is governed by a 3-clause BSD license that can be
9found in the LICENSE file.
10
11============================================================================*/
12
13#include <mitkTestingMacros.h>
15
16// vtk includes
17#include "vtkShortArray.h"
18
22int mitkToFCameraPMDRawDataCamBoardDeviceTest(int /* argc */, char* /*argv*/[])
23{
24 MITK_TEST_BEGIN("ToFCameraPMDRawDataCamBoardDevice");
25
26 mitk::ToFCameraPMDRawDataCamBoardDevice::Pointer tofCameraPMDRawDataCamBoardDevice = mitk::ToFCameraPMDRawDataCamBoardDevice::New();
27 // No hardware attached for automatic testing -> test correct error handling
28 MITK_TEST_CONDITION_REQUIRED(tofCameraPMDRawDataCamBoardDevice->ConnectCamera(), "Test ConnectCamera()");
29 MITK_TEST_CONDITION_REQUIRED(!tofCameraPMDRawDataCamBoardDevice->IsCameraActive(), "Test IsCameraActive() before StartCamera()");
30 MITK_TEST_OUTPUT(<<"Call StartCamera()");
31 tofCameraPMDRawDataCamBoardDevice->StartCamera();
32 MITK_TEST_CONDITION_REQUIRED(tofCameraPMDRawDataCamBoardDevice->IsCameraActive(), "Test IsCameraActive() after StartCamera()");
33 MITK_TEST_OUTPUT(<<"Call UpdateCamera()");
34 tofCameraPMDRawDataCamBoardDevice->UpdateCamera();
35 int numberOfPixels = tofCameraPMDRawDataCamBoardDevice->GetCaptureWidth()*tofCameraPMDRawDataCamBoardDevice->GetCaptureHeight();
36 MITK_INFO<<numberOfPixels;
37 float* distances = new float[numberOfPixels];
38 float* amplitudes = new float[numberOfPixels];
39 float* intensities = new float[numberOfPixels];
40 char* sourceData = new char[numberOfPixels];
41 short* shortSource = new short[numberOfPixels];
42 int requiredImageSequence = 0;
43 int imageSequence = 0;
44 vtkShortArray* channelData = vtkShortArray::New();
45 tofCameraPMDRawDataCamBoardDevice->GetChannelSourceData(shortSource, channelData);
46 MITK_TEST_CONDITION_REQUIRED(tofCameraPMDRawDataCamBoardDevice->GetChannelSize()!=0, "Test if channelsize is set!");
47 MITK_TEST_CONDITION_REQUIRED(channelData->GetNumberOfTuples()== 4, "Check channel data processing!");
48 channelData->Delete();
49
50 tofCameraPMDRawDataCamBoardDevice->GetDistances(distances,imageSequence);
51 tofCameraPMDRawDataCamBoardDevice->GetAmplitudes(amplitudes,imageSequence);
52 tofCameraPMDRawDataCamBoardDevice->GetIntensities(intensities,imageSequence);
53 tofCameraPMDRawDataCamBoardDevice->GetAllImages(distances,amplitudes,intensities,sourceData,requiredImageSequence,imageSequence);
54 MITK_TEST_CONDITION_REQUIRED(tofCameraPMDRawDataCamBoardDevice->IsCameraActive(), "Test IsCameraActive() before StopCamera()");
55 MITK_TEST_OUTPUT(<<"Call StopCamera()");
56 tofCameraPMDRawDataCamBoardDevice->StopCamera();
57 MITK_TEST_CONDITION_REQUIRED(!tofCameraPMDRawDataCamBoardDevice->IsCameraActive(), "Test IsCameraActive() after StopCamera()");
58
59 MITK_TEST_CONDITION_REQUIRED(tofCameraPMDRawDataCamBoardDevice->DisconnectCamera(), "Test DisonnectCamera()");
60 delete[] distances;
61 delete[] amplitudes;
62 delete[] intensities;
63 delete[] sourceData;
64
65 MITK_TEST_END();
66
67}
int mitkToFCameraPMDRawDataCamBoardDeviceTest(int, char *[])