28 if (context ==
nullptr)
33 std::vector<us::ServiceReference<mitk::IDICOMTagsOfInterest>> toiRegisters =
35 if (!toiRegisters.empty())
37 if (toiRegisters.size() > 1)
39 MITK_WARN <<
"Multiple DICOM tags of interest services found. Using just one.";
50 std::vector<mitk::DICOMDatasetAccess::FindingsListType> findings;
51 for (
const auto &entry : pathsOfInterest)
53 findings.push_back(frames.front()->GetTagValueAsString(entry));
60 for (
const auto &finding : findings)
62 for (
const auto &entry : finding)
66 property->SetValue(entry.value);
MITKDICOMREADER_EXPORT FindingsListVectorType ExtractPathsOfInterest(const DICOMTagPathList &pathsOfInterest, const DICOMDatasetAccessingImageFrameList &frames)
Base of all data objects.
std::vector< mitk::DICOMDatasetAccess::FindingsListType > FindingsListVectorType
DataCollection - Class to facilitate loading/accessing structured data.
void * GetService(const ServiceReferenceBase &reference)
void SetProperty(const std::string &propertyKey, BaseProperty *property, const std::string &contextName="", bool fallBackOnDefaultContext=false) override
Add new or change existent property.
MITKDICOMREADER_EXPORT std::string DICOMTagPathToPropertyName(const DICOMTagPath &tagPath)
mitk::Image::Pointer image
std::vector< DICOMTagPath > DICOMTagPathList
MITKDICOMREADER_EXPORT void SetProperties(BaseDataPointer image, const FindingsListVectorType &findings)
std::vector< DICOMDatasetAccessingImageFrameInfo::Pointer > DICOMDatasetAccessingImageFrameList
MITKDICOMREADER_EXPORT mitk::IDICOMTagsOfInterest * GetDicomTagsOfInterestService()
static ModuleContext * GetModuleContext()
Returns the module context of the calling module.