diff --git a/Modules/CEST/files.cmake b/Modules/CEST/files.cmake index 4655b5010f..19a794674c 100644 --- a/Modules/CEST/files.cmake +++ b/Modules/CEST/files.cmake @@ -1,10 +1,11 @@ file(GLOB_RECURSE H_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/include/*") set(CPP_FILES mitkCESTImageNormalizationFilter.cpp mitkCustomTagParser.cpp ) set(RESOURCE_FILES 1416.json + 1485.json ) diff --git a/Modules/CEST/resource/1485.json b/Modules/CEST/resource/1485.json new file mode 100644 index 0000000000..3119952174 --- /dev/null +++ b/Modules/CEST/resource/1485.json @@ -0,0 +1,24 @@ +{ + "1485" : "revision_json", + "sWiPMemBlock.alFree[1]" : "AdvancedMode", + "sWiPMemBlock.alFree[2]" : "RecoveryMode", + "sWiPMemBlock.alFree[3]" : "DoubleIrrMode", + "sWiPMemBlock.alFree[4]" : "MtMode", + "sWiPMemBlock.alFree[5]" : "PreparationType", + "sWiPMemBlock.alFree[6]" : "PulseType", + "sWiPMemBlock.alFree[7]" : "SamplingType", + "sWiPMemBlock.alFree[8]" : "SpoilingType", + "sWiPMemBlock.alFree[9]" : "measurements", + "sWiPMemBlock.alFree[10]" : "NumberRFBlocks", + "sWiPMemBlock.alFree[11]" : "PulsesPerRFBlock", + "sWiPMemBlock.alFree[12]" : "PulseDuration", + "sWiPMemBlock.alFree[13]" : "DutyCycle", + "sWiPMemBlock.alFree[14]" : "RecoveryTime", + "sWiPMemBlock.alFree[15]" : "RecoveryTimeM0", + "sWiPMemBlock.adFree[1]" : "Offset", + "sWiPMemBlock.adFree[2]" : "B1Amplitude", + "sWiPMemBlock.adFree[3]" : "AdiabaticPulseMu", + "sWiPMemBlock.adFree[4]" : "AdiabaticPulseBW", + "sWiPMemBlock.adFree[5]" : "AdiabaticPulseLength", + "sWiPMemBlock.adFree[6]" : "AdiabaticPulseAmp" +} diff --git a/Modules/CEST/test/files.cmake b/Modules/CEST/test/files.cmake index 88653735a2..46c8a5ee61 100644 --- a/Modules/CEST/test/files.cmake +++ b/Modules/CEST/test/files.cmake @@ -1,6 +1,7 @@ set(MODULE_TESTS mitkCustomTagParserTest.cpp + mitkCESTDICOMReaderServiceTest.cpp ) SET(MODULE_CUSTOM_TESTS ) diff --git a/Modules/CEST/test/mitkCESTDICOMReaderServiceTest.cpp b/Modules/CEST/test/mitkCESTDICOMReaderServiceTest.cpp new file mode 100644 index 0000000000..4b0dd0710f --- /dev/null +++ b/Modules/CEST/test/mitkCESTDICOMReaderServiceTest.cpp @@ -0,0 +1,69 @@ +/*=================================================================== + +The Medical Imaging Interaction Toolkit (MITK) + +Copyright (c) German Cancer Research Center, +Division of Medical and Biological Informatics. +All rights reserved. + +This software is distributed WITHOUT ANY WARRANTY; without +even the implied warranty of MERCHANTABILITY or FITNESS FOR +A PARTICULAR PURPOSE. + +See LICENSE.txt or http://www.mitk.org for details. + +===================================================================*/ + +// Testing +#include "mitkTestFixture.h" +#include "mitkTestingMacros.h" + +// std includes +#include + +// MITK includes +#include +#include +#include + + +// VTK includes +#include + +class mitkCESTDICOMReaderServiceTestSuite : public mitk::TestFixture +{ + CPPUNIT_TEST_SUITE(mitkCESTDICOMReaderServiceTestSuite); + + // Test the dicom property parsing + MITK_TEST(LoadCESTDICOMData_Success); + + CPPUNIT_TEST_SUITE_END(); + +private: + + +public: + void setUp() override + { + + } + + void tearDown() override + { + } + + void LoadCESTDICOMData_Success() + { + mitk::IFileReader::Options options; + options["Force type"] = std::string( "CEST/WASABI" ); + options["Revision mapping"] = std::string( "Strict" ); + + mitk::Image::Pointer cestImage = mitk::IOUtil::Load(GetTestDataFilePath("CEST/B1=0.6MUT/MEI_NER_PHANTOM.MR.E0202_MEISSNER.0587.0001.2017.10.25.22.11.10.373351.41828677.IMA"), options); + CPPUNIT_ASSERT_MESSAGE("Make certain offsets have been correctly loaded for CEST image." ,cestImage->GetProperty("CEST.Offsets")->GetValueAsString() == "-300 2 -2 1.92982 -1.92982 1.85965 -1.85965 1.78947 -1.78947 1.7193 -1.7193 1.64912 -1.64912 1.57895 -1.57895 1.50877 -1.50877 1.4386 -1.4386 1.36842 -1.36842 1.29825 -1.29825 1.22807 -1.22807 1.15789 -1.15789 1.08772 -1.08772 1.01754 -1.01754 0.947368 -0.947368 0.877193 -0.877193 0.807018 -0.807018 0.736842 -0.736842 0.666667 -0.666667 0.596491 -0.596491 0.526316 -0.526316 0.45614 -0.45614 0.385965 -0.385965 0.315789 -0.315789 0.245614 -0.245614 0.175439 -0.175439 0.105263 -0.105263 0.0350877 -0.0350877"); + std::string temp; + CPPUNIT_ASSERT_MESSAGE("Make certain image is not loaded as T1.", !cestImage->GetPropertyList()->GetStringProperty("CEST.TREC", temp)); + } + +}; + +MITK_TEST_SUITE_REGISTRATION(mitkCESTDICOMReaderService)