diff --git a/Modules/Pharmacokinetics/CMakeLists.txt b/Modules/Pharmacokinetics/CMakeLists.txt index fabbaeb023..ee417b64e2 100644 --- a/Modules/Pharmacokinetics/CMakeLists.txt +++ b/Modules/Pharmacokinetics/CMakeLists.txt @@ -1,19 +1,18 @@ MITK_CREATE_MODULE(Pharmacokinetics INCLUDE_DIRS PUBLIC ${MITK_BINARY_DIR} PRIVATE src/Common src/Functors src/Models src/DescriptionParameters src/SimulationFramework DEPENDS PUBLIC MitkCore MitkModelFit - PRIVATE MitkMultilabel MitkDICOMQI + PRIVATE MitkMultilabel PACKAGE_DEPENDS PUBLIC ITK|ITKOptimizers PRIVATE Boost ) if(BUILD_TESTING) ADD_SUBDIRECTORY(test) endif(BUILD_TESTING) ADD_SUBDIRECTORY(autoload/Models) -ADD_SUBDIRECTORY(autoload/DICOMPMIO) ADD_SUBDIRECTORY(cmdapps) \ No newline at end of file diff --git a/Modules/Pharmacokinetics/autoload/DICOMPMIO/CMakeLists.txt b/Modules/Pharmacokinetics/autoload/DICOMPMIO/CMakeLists.txt deleted file mode 100644 index ba23494588..0000000000 --- a/Modules/Pharmacokinetics/autoload/DICOMPMIO/CMakeLists.txt +++ /dev/null @@ -1,6 +0,0 @@ -MITK_CREATE_MODULE( DICOMPMIO - DEPENDS MitkPharmacokinetics MitkDICOMQI - PACKAGE_DEPENDS - PRIVATE DCMQI DCMTK - AUTOLOAD_WITH MitkCore -) diff --git a/Modules/Pharmacokinetics/autoload/DICOMPMIO/files.cmake b/Modules/Pharmacokinetics/autoload/DICOMPMIO/files.cmake deleted file mode 100644 index 399de4a982..0000000000 --- a/Modules/Pharmacokinetics/autoload/DICOMPMIO/files.cmake +++ /dev/null @@ -1,5 +0,0 @@ -set(CPP_FILES - mitkDICOMPMIO.cpp - mitkDICOMPMIOActivator.cpp -) - diff --git a/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIO.cpp b/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIO.cpp deleted file mode 100644 index 6109020288..0000000000 --- a/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIO.cpp +++ /dev/null @@ -1,247 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#ifndef __mitkDICOMPharmacokineticsIO__cpp -#define __mitkDICOMPharmacokineticsIO__cpp - -#include "mitkDICOMPMIO.h" -#include "mitkDICOMQIIOMimeTypes.h" -#include "mitkDICOMPMConstants.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "mitkParamapPresetsParser.h" - - -// us -#include -#include - -// model fit parameters -#include "mitkModelFitConstants.h" - - -namespace mitk -{ - DICOMPMIO::DICOMPMIO() - : AbstractFileIO(Image::GetStaticNameOfClass(), - mitk::MitkDICOMQIIOMimeTypes::DICOMPM_MIMETYPE_NAME(), - "DICOM PM") - - { - AbstractFileWriter::SetRanking(10); - AbstractFileReader::SetRanking(10); - this->RegisterService(); - this->AddDICOMTagsToService(); - } - - void DICOMPMIO::AddDICOMTagsToService() - { - IDICOMTagsOfInterest *toiService = GetDicomTagsOfInterestService(); - if (toiService != nullptr) - { - toiService->AddTagOfInterest(DICOMPMConstants::RWVM_SEQUENCE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::UNITS_SEQUENCE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::UNITS_CODE_VALUE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::UNITS_CODE_SCHEME_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::UNITS_CODE_MEANING_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::QUANTITY_DEFINITION_SEQUENCE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::QUANTITY_DEFINITION_VALUE_TYPE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SEQUENCE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_VALUE_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SCHEME_PATH()); - toiService->AddTagOfInterest(DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_MEANING_PATH()); - } - } - - IFileIO::ConfidenceLevel DICOMPMIO::GetWriterConfidenceLevel() const - { - if (AbstractFileIO::GetWriterConfidenceLevel() == Unsupported) - return Unsupported; - - const Image *PMinput = static_cast(this->GetInput()); - if (PMinput) - { - auto modalityProperty = PMinput->GetProperty(mitk::GeneratePropertyNameForDICOMTag(0x0008, 0x0060).c_str()); - if (modalityProperty.IsNotNull()) - { - std::string modality = modalityProperty->GetValueAsString(); - if (modality == "PM") - { - return Supported; - } - else return Unsupported; - } - else return Unsupported; - } - else return Unsupported; - } - - void DICOMPMIO::Write() - { - ValidateOutputLocation(); - mitk::LocaleSwitch localeSwitch("C"); - LocalFile localFile(this); - const std::string path = localFile.GetFileName(); - - auto PMinput = dynamic_cast(this->GetInput()); - if (PMinput == nullptr) - mitkThrow() << "Cannot write non-image data"; - - // Get DICOM information from referenced image - vector> dcmDatasetsSourceImage; - std::unique_ptr readFileFormat(new DcmFileFormat()); - - try - { - // Generate dcmdataset witk DICOM tags from property list; ATM the source are the filepaths from the - // property list - mitk::StringLookupTableProperty::Pointer filesProp = - dynamic_cast(PMinput->GetProperty("referenceFiles").GetPointer()); - - if (filesProp.IsNull()) - { - mitkThrow() << "No property with dicom file path."; - return; - } - - // returns a list of all referenced files - StringLookupTable filesLut = filesProp->GetValue(); - const StringLookupTable::LookupTableType &lookUpTableMap = filesLut.GetLookupTable(); - for (auto it : lookUpTableMap) - { - const char *fileName = (it.second).c_str(); - if (readFileFormat->loadFile(fileName, EXS_Unknown).good()) - { - std::unique_ptr readDCMDataset(readFileFormat->getAndRemoveDataset()); - dcmDatasetsSourceImage.push_back(std::move(readDCMDataset)); - } - } - } - catch (const std::exception &e) - { - MITK_ERROR << "An error occurred while getting the dicom information: " << e.what() << endl; - return; - } - - mitk::Image *mitkPMImage = const_cast(PMinput); - // Cast input PMinput to itk image - ImageToItk::Pointer PMimageToItkFilter = ImageToItk::New(); - PMimageToItkFilter->SetInput(mitkPMImage); - - // Cast from original itk type to dcmqi input itk image type - typedef itk::CastImageFilter castItkImageFilterType; - castItkImageFilterType::Pointer castFilter = castItkImageFilterType::New(); - castFilter->SetInput(PMimageToItkFilter->GetOutput()); - castFilter->Update(); - PMitkInternalImageType::Pointer itkParamapImage = castFilter->GetOutput(); - - // Create PM meta information - const std::string tmpMetaInfoFile = this->CreateMetaDataJsonFilePM(); - - // Convert itk PM images to dicom image - MITK_INFO << "Writing PM image: " << path << std::endl; - try - { - vector rawVecDataset; - for (const auto& dcmDataSet : dcmDatasetsSourceImage) - rawVecDataset.push_back(dcmDataSet.get()); - std::unique_ptr PMconverter(new dcmqi::ParaMapConverter()); - std::unique_ptr PMresult (PMconverter->itkimage2paramap(itkParamapImage, rawVecDataset, tmpMetaInfoFile)); - // Write dicom file - DcmFileFormat dcmFileFormat(PMresult.get()); - std::string filePath = path.substr(0, path.find_last_of(".")); - filePath = filePath + ".dcm"; - dcmFileFormat.saveFile(filePath.c_str(), EXS_LittleEndianExplicit); - - } - catch (const std::exception &e) - { - MITK_ERROR << "An error occurred during writing the DICOM Paramap: " << e.what() << endl; - return; - } - - } - - const std::string mitk::DICOMPMIO::CreateMetaDataJsonFilePM() const - { - const mitk::Image *PMimage = dynamic_cast(this->GetInput()); - dcmqi::JSONParametricMapMetaInformationHandler PMhandler; - - // Get Metadata from modelFitConstants - std::string parameterName; - PMimage->GetPropertyList()->GetStringProperty(ModelFitConstants::PARAMETER_NAME_PROPERTY_NAME().c_str(), parameterName); - std::string modelName; - PMimage->GetPropertyList()->GetStringProperty(ModelFitConstants::MODEL_NAME_PROPERTY_NAME().c_str(), modelName); - - - mitk::ParamapPresetsParser* pmPresets = mitk::ParamapPresetsParser::New(); - // Here the mitkParamapPresets.xml file containing the Coding Schmeme Designator and Code Value are parsed and the relevant values extracted - pmPresets->LoadPreset(); - - auto pmType_parameterName = pmPresets->GetType(parameterName); - auto pmType_modelName = pmPresets->GetType(modelName); - - // Here some other - // mandatory - // TODO: where to get these from? - // TODO: AnatomicRegionSequence from Segmentation? - PMhandler.setAnatomicRegionSequence("T-9200B", "SRT", "Prostate"); - PMhandler.setDerivedPixelContrast("TCS"); - PMhandler.setFrameLaterality("U"); - // optional - PMhandler.setQuantityValueCode(pmType_parameterName.codeValue, pmType_parameterName.codeScheme, parameterName); - PMhandler.setMeasurementMethodCode(pmType_modelName.codeValue, pmType_modelName.codeScheme, modelName); - PMhandler.setSeriesNumber("1"); - PMhandler.setInstanceNumber("1"); - PMhandler.setDerivationCode("110816", "DCM", "Time Course of Signal"); - PMhandler.setMeasurementUnitsCode("/min", "UCUM", "/m"); - PMhandler.setRealWorldValueSlope(1); - - return PMhandler.getJSONOutputAsString(); - } - - - std::vector DICOMPMIO::Read() - { - mitk::LocaleSwitch localeSwitch("C"); - std::vector result; - - return result; - } - - IFileIO::ConfidenceLevel DICOMPMIO::GetReaderConfidenceLevel() const - { - return Unsupported; - } - - - - DICOMPMIO *DICOMPMIO::IOClone() const { return new DICOMPMIO(*this); } -} // namespace - - - - - - -#endif //__mitkDICOMPharmacokineticsIO__cpp diff --git a/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIO.h b/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIO.h deleted file mode 100644 index 898040e8df..0000000000 --- a/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIO.h +++ /dev/null @@ -1,72 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#ifndef __mitkDICOMPMIO_h -#define __mitkDICOMPMIO_h - -#include -#include -#include -#include -#include - - -namespace mitk -{ - /** - * Read and Writes a LabelSetImage to a dcm file - * @ingroup Process - */ - class DICOMPMIO : public mitk::AbstractFileIO - { - public: - - typedef mitk::Image PMInputType; - typedef itk::Image PMitkInputImageType; - typedef IODFloatingPointImagePixelModule::value_type PMFloatPixelType; // input type required for DCMQI - typedef itk::Image PMitkInternalImageType; - - DICOMPMIO(); - - // -------------- AbstractFileReader ------------- - - using AbstractFileReader::Read; - - /** - * @brief Reads a number of DICOM segmentation from the file system - * @return a vector of mitk::LabelSetImages - * @throws throws an mitk::Exception if an error ocurrs - */ - virtual std::vector Read() override; - virtual ConfidenceLevel GetReaderConfidenceLevel() const override; - - // -------------- AbstractFileWriter ------------- - - virtual void Write() override; - virtual ConfidenceLevel GetWriterConfidenceLevel() const override; - - private: - DICOMPMIO *IOClone() const override; - - // -------------- DICOMPMIO specific functions ------------- - - const std::string CreateMetaDataJsonFilePM() const; - - void AddDICOMTagsToService(); - }; -} // end of namespace mitk - -#endif // __mitkDICOMPMIO_h diff --git a/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIOActivator.cpp b/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIOActivator.cpp deleted file mode 100644 index 160895d71a..0000000000 --- a/Modules/Pharmacokinetics/autoload/DICOMPMIO/mitkDICOMPMIOActivator.cpp +++ /dev/null @@ -1,62 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#include -#include -#include -#include -#include - -#include "mitkDICOMPMIO.h" - -#include "mitkDICOMQIIOMimeTypes.h" - -namespace mitk -{ - /** - \brief Registers services for multilabel dicom module. - */ - class DICOMPMIOActivator : public us::ModuleActivator - { - std::vector m_FileIOs; - - public: - void Load(us::ModuleContext * context) override - { - us::ServiceProperties props; - props[us::ServiceConstants::SERVICE_RANKING()] = 10; - - std::vector mimeTypes = mitk::MitkDICOMQIIOMimeTypes::Get(); - for (std::vector::const_iterator mimeTypeIter = mimeTypes.begin(), - iterEnd = mimeTypes.end(); - mimeTypeIter != iterEnd; - ++mimeTypeIter) - { - context->RegisterService(*mimeTypeIter, props); - } - m_FileIOs.push_back(new DICOMPMIO()); - } - void Unload(us::ModuleContext *) override - { - for (auto &elem : m_FileIOs) - { - delete elem; - } - } - }; -} - -US_EXPORT_MODULE_ACTIVATOR(mitk::DICOMPMIOActivator) diff --git a/Modules/Pharmacokinetics/files.cmake b/Modules/Pharmacokinetics/files.cmake index bf1c5722b6..e2336be861 100644 --- a/Modules/Pharmacokinetics/files.cmake +++ b/Modules/Pharmacokinetics/files.cmake @@ -1,70 +1,65 @@ file(GLOB_RECURSE H_FILES RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "${CMAKE_CURRENT_SOURCE_DIR}/include/*") set(CPP_FILES Common/mitkAterialInputFunctionGenerator.cpp Common/mitkAIFParametrizerHelper.cpp Common/mitkConcentrationCurveGenerator.cpp Common/mitkDescriptionParameterImageGeneratorBase.cpp Common/mitkPixelBasedDescriptionParameterImageGenerator.cpp - Common/mitkDICOMPMConstants.cpp - Common/mitkDICOMPMPropertyHelper.cpp - Common/mitkParamapPresetsParser.cpp DescriptionParameters/mitkCurveDescriptionParameterBase.cpp DescriptionParameters/mitkAreaUnderTheCurveDescriptionParameter.cpp DescriptionParameters/mitkAreaUnderFirstMomentDescriptionParameter.cpp DescriptionParameters/mitkMeanResidenceTimeDescriptionParameter.cpp DescriptionParameters/mitkTimeToPeakCurveDescriptionParameter.cpp DescriptionParameters/mitkMaximumCurveDescriptionParameter.cpp Functors/mitkCurveParameterFunctor.cpp Models/mitkAIFBasedModelBase.cpp Models/mitkDescriptivePharmacokineticBrixModel.cpp Models/mitkDescriptivePharmacokineticBrixModelFactory.cpp Models/mitkDescriptivePharmacokineticBrixModelValueBasedParameterizer.cpp Models/mitkDescriptivePharmacokineticBrixModelParameterizer.cpp Models/mitkThreeStepLinearModel.cpp Models/mitkThreeStepLinearModelFactory.cpp Models/mitkThreeStepLinearModelParameterizer.cpp Models/mitkTwoCompartmentExchangeModel.cpp Models/mitkTwoCompartmentExchangeModelFactory.cpp Models/mitkTwoCompartmentExchangeModelParameterizer.cpp Models/mitkNumericTwoCompartmentExchangeModel.cpp Models/mitkNumericTwoCompartmentExchangeModelFactory.cpp Models/mitkNumericTwoCompartmentExchangeModelParameterizer.cpp Models/mitkExtendedToftsModel.cpp Models/mitkExtendedToftsModelFactory.cpp Models/mitkExtendedToftsModelParameterizer.cpp Models/mitkStandardToftsModel.cpp Models/mitkStandardToftsModelFactory.cpp Models/mitkStandardToftsModelParameterizer.cpp Models/mitkOneTissueCompartmentModel.cpp Models/mitkOneTissueCompartmentModelFactory.cpp Models/mitkOneTissueCompartmentModelParameterizer.cpp Models/mitkExtendedOneTissueCompartmentModel.cpp Models/mitkExtendedOneTissueCompartmentModelFactory.cpp Models/mitkExtendedOneTissueCompartmentModelParameterizer.cpp Models/mitkTwoTissueCompartmentModel.cpp Models/mitkTwoTissueCompartmentModelFactory.cpp Models/mitkTwoTissueCompartmentModelParameterizer.cpp Models/mitkTwoTissueCompartmentFDGModel.cpp Models/mitkTwoTissueCompartmentFDGModelFactory.cpp Models/mitkTwoTissueCompartmentFDGModelParameterizer.cpp Models/mitkNumericTwoTissueCompartmentModel.cpp Models/mitkNumericTwoTissueCompartmentModelFactory.cpp Models/mitkNumericTwoTissueCompartmentModelParameterizer.cpp SimulationFramework/mitkPerfusionDataGenerator.cpp SimulationFramework/mitkImageGenerationHelper.cpp ) set(HXX_FILES mitkDICOMSegmentationConstants.h ) set(MOC_H_FILES ) -set(RESOURCE_FILES -mitkParamapPresets.xml -) + diff --git a/Modules/Pharmacokinetics/include/mitkDICOMPMConstants.h b/Modules/Pharmacokinetics/include/mitkDICOMPMConstants.h deleted file mode 100644 index 431a051323..0000000000 --- a/Modules/Pharmacokinetics/include/mitkDICOMPMConstants.h +++ /dev/null @@ -1,43 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#ifndef MITKDICOMPMCONSTANTS_H_ -#define MITKDICOMPMCONSTANTS_H_ - -#include - -#include - - -namespace mitk -{ - namespace DICOMPMConstants - { - DICOMTagPath MITKPHARMACOKINETICS_EXPORT RWVM_SEQUENCE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT UNITS_SEQUENCE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT UNITS_CODE_VALUE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT UNITS_CODE_SCHEME_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT UNITS_CODE_MEANING_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT QUANTITY_DEFINITION_SEQUENCE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT QUANTITY_DEFINITION_VALUE_TYPE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT QUANTITY_DEFINITION_CONCEPT_CODE_SEQUENCE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT QUANTITY_DEFINITION_CONCEPT_CODE_VALUE_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT QUANTITY_DEFINITION_CONCEPT_CODE_SCHEME_PATH(); - DICOMTagPath MITKPHARMACOKINETICS_EXPORT QUANTITY_DEFINITION_CONCEPT_CODE_MEANING_PATH(); - }; -} - -#endif // MITKDICOMPMCONSTANTS_H_ diff --git a/Modules/Pharmacokinetics/include/mitkDICOMPMPropertyHelper.h b/Modules/Pharmacokinetics/include/mitkDICOMPMPropertyHelper.h deleted file mode 100644 index 790b7a727b..0000000000 --- a/Modules/Pharmacokinetics/include/mitkDICOMPMPropertyHelper.h +++ /dev/null @@ -1,34 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#ifndef DICOMSEGMENTATIONPROPERTYHELPER_H_ -#define DICOMSEGMENTATIONPROPERTYHELPER_H_ - -#include -#include - -#include - -namespace mitk -{ - class MITKPHARMACOKINETICS_EXPORT DICOMPMPropertyHelper - { - public: - static void DeriveDICOMPMProperties(BaseData *derivedDICOMImage); - - }; -} // namespace mitk -#endif diff --git a/Modules/Pharmacokinetics/include/mitkParamapPresetsParser.h b/Modules/Pharmacokinetics/include/mitkParamapPresetsParser.h deleted file mode 100644 index 25fc101dce..0000000000 --- a/Modules/Pharmacokinetics/include/mitkParamapPresetsParser.h +++ /dev/null @@ -1,79 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#ifndef PARAMAPRPRESETS_H_HEADER -#define PARAMAPPRESETS_H_HEADER - -#include -#include -#include -#include -#include - - - -namespace mitk { - - -class MITKPHARMACOKINETICS_EXPORT ParamapPresetsParser : public vtkXMLParser -{ -public: - struct Type - { - std::string codeValue; - std::string codeScheme; - Type() = default; - Type(std::string value, std::string scheme) : codeValue(value), codeScheme(scheme){} - }; - - using ParamapPrestsType = std::map; - static ParamapPresetsParser *New(); - vtkTypeMacro(ParamapPresetsParser,vtkXMLParser); - - - - bool LoadPreset(); - bool LoadPreset(const std::string& fileName); - Type GetType(const std::string& name); - ParamapPrestsType const GetTypePresets(); - void NewPresets(ParamapPrestsType & newType); - - -protected: - ParamapPresetsParser() = default; - ~ParamapPresetsParser() override = default; - -private: - //##Documentation - //## @brief method used in XLM-Reading; gets called when a start-tag is read - void StartElement (const char *elementName, const char **atts) override; - - - //##Documentation - //## @brief reads an XML-String-Attribute - std::string ReadXMLStringAttribute(const std::string& name, const char **atts); - - static const std::string PRESET; - static const std::string TYPE; - static const std::string CODE_VALUE; - static const std::string CODE_SCHEME; - - std::string m_presetName; - ParamapPrestsType m_Type; - std::string m_XmlFileName; -}; -} -#endif diff --git a/Modules/Pharmacokinetics/resource/mitkParamapPresets.xml b/Modules/Pharmacokinetics/resource/mitkParamapPresets.xml deleted file mode 100644 index 0e37758a9d..0000000000 --- a/Modules/Pharmacokinetics/resource/mitkParamapPresets.xml +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Modules/Pharmacokinetics/src/Common/mitkDICOMPMConstants.cpp b/Modules/Pharmacokinetics/src/Common/mitkDICOMPMConstants.cpp deleted file mode 100644 index f07f39458f..0000000000 --- a/Modules/Pharmacokinetics/src/Common/mitkDICOMPMConstants.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#include "mitkDICOMPMConstants.h" - -namespace mitk -{ - DICOMTagPath DICOMPMConstants::RWVM_SEQUENCE_PATH() - { - return DICOMTagPath().AddElement(0x0040, 0x9096); - } - DICOMTagPath DICOMPMConstants::UNITS_SEQUENCE_PATH() - { - return DICOMPMConstants::RWVM_SEQUENCE_PATH().AddElement(0x0040, 0x08EA); - } - DICOMTagPath DICOMPMConstants::UNITS_CODE_VALUE_PATH() - { - return DICOMPMConstants::UNITS_SEQUENCE_PATH().AddElement(0x0008, 0x0100); - } - DICOMTagPath DICOMPMConstants::UNITS_CODE_SCHEME_PATH() - { - return DICOMPMConstants::UNITS_SEQUENCE_PATH().AddElement(0x0008, 0x0102); - } - DICOMTagPath DICOMPMConstants::UNITS_CODE_MEANING_PATH() - { - return DICOMPMConstants::UNITS_SEQUENCE_PATH().AddElement(0x0008, 0x0104); - } - DICOMTagPath DICOMPMConstants::QUANTITY_DEFINITION_SEQUENCE_PATH() - { - return DICOMPMConstants::RWVM_SEQUENCE_PATH().AddElement(0x0040, 0x9220); - } - DICOMTagPath DICOMPMConstants::QUANTITY_DEFINITION_VALUE_TYPE_PATH() - { - return DICOMPMConstants::QUANTITY_DEFINITION_SEQUENCE_PATH().AddElement(0x0040, 0xA040); - } - DICOMTagPath DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SEQUENCE_PATH() - { - return DICOMPMConstants::QUANTITY_DEFINITION_SEQUENCE_PATH().AddElement(0x0040, 0xA168); - } - DICOMTagPath DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_VALUE_PATH() - { - return DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SEQUENCE_PATH().AddElement(0x0008, 0x0100); - } - DICOMTagPath DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SCHEME_PATH() - { - return DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SEQUENCE_PATH().AddElement(0x0008, 0x0102); - } - DICOMTagPath DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_MEANING_PATH() - { - return DICOMPMConstants::QUANTITY_DEFINITION_CONCEPT_CODE_SEQUENCE_PATH().AddElement(0x0008, 0x0104); - } -} diff --git a/Modules/Pharmacokinetics/src/Common/mitkDICOMPMPropertyHelper.cpp b/Modules/Pharmacokinetics/src/Common/mitkDICOMPMPropertyHelper.cpp deleted file mode 100644 index bf7e4a5290..0000000000 --- a/Modules/Pharmacokinetics/src/Common/mitkDICOMPMPropertyHelper.cpp +++ /dev/null @@ -1,71 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include - -#include - -// us -#include -#include - -namespace mitk -{ - void DICOMPMPropertyHelper::DeriveDICOMPMProperties(BaseData *derivedDICOMImage) - { - PropertyList::Pointer propertyList = derivedDICOMImage->GetPropertyList(); - - // Add DICOM Tag (0008, 0060) Modality "PM" - propertyList->SetProperty(GeneratePropertyNameForDICOMTag(0x0008, 0x0060).c_str(), - TemporoSpatialStringProperty::New("PM")); - - // Add DICOM Tag (0008,103E) Series Description - propertyList->SetProperty(GeneratePropertyNameForDICOMTag(0x0008, 0x103E).c_str(), - TemporoSpatialStringProperty::New("MITK Parameter Map")); - // Add DICOM Tag (0070,0084) Content Creator Name - propertyList->SetProperty(GeneratePropertyNameForDICOMTag(0x0070, 0x0084).c_str(), - TemporoSpatialStringProperty::New("MITK")); - // Add DICOM Tag (0012, 0071) Clinical Trial Series ID - propertyList->SetProperty(GeneratePropertyNameForDICOMTag(0x0012, 0x0071).c_str(), - TemporoSpatialStringProperty::New("Session 1")); - // Add DICOM Tag (0012,0050) Clinical Trial Time Point ID - propertyList->SetProperty(GeneratePropertyNameForDICOMTag(0x0012, 0x0050).c_str(), - TemporoSpatialStringProperty::New("0")); - // Add DICOM Tag (0012, 0060) Clinical Trial Coordinating Center Name - propertyList->SetProperty(GeneratePropertyNameForDICOMTag(0x0012, 0x0060).c_str(), - TemporoSpatialStringProperty::New("Unknown")); - - - - } - - - -} // namespace mitk - - - diff --git a/Modules/Pharmacokinetics/src/Common/mitkParamapPresetsParser.cpp b/Modules/Pharmacokinetics/src/Common/mitkParamapPresetsParser.cpp deleted file mode 100644 index 753d943fb8..0000000000 --- a/Modules/Pharmacokinetics/src/Common/mitkParamapPresetsParser.cpp +++ /dev/null @@ -1,129 +0,0 @@ -/*=================================================================== - -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. - -===================================================================*/ - -#include "mitkParamapPresetsParser.h" -#include - -#include "usGetModuleContext.h" -#include "usModuleContext.h" -#include "usModule.h" -#include "usModuleResource.h" -#include "usModuleResourceStream.h" - -namespace mitk { - - const std::string ParamapPresetsParser::PRESET = "preset"; - const std::string ParamapPresetsParser::TYPE = "type"; - const std::string ParamapPresetsParser::CODE_VALUE = "code_value"; - const std::string ParamapPresetsParser::CODE_SCHEME = "coding_scheme"; - - vtkStandardNewMacro(ParamapPresetsParser); - - bool ParamapPresetsParser::LoadPreset() - { - us::ModuleResource presetResource = us::GetModuleContext()->GetModule()->GetResource("mitkParamapPresets.xml"); - if (!presetResource) return false; - - us::ModuleResourceStream presetStream(presetResource); - vtkXMLParser::SetStream(&presetStream); - if (!vtkXMLParser::Parse()) - { -#ifdef INTERDEBUG - MITK_INFO<<"ParamapPresetsParser::LoadPreset xml file cannot parse!"< const ParamapPresetsParser::GetTypePresets() - { - return m_Type; - } - - - - - - void ParamapPresetsParser::NewPresets(std::map& newType) - { - m_Type = newType; - //this->Save(); - } - -}