MeVisLab Toolbox Reference
mlDICOMSOPClassAndModalityTools.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
5
10//----------------------------------------------------------------------------------
11#pragma once
12
13#include "MLDICOMTagsSystem.h"
14
15#include <FMEThirdPartyWarningsDisable.h>
16#include <string>
17#include <tuple>
18#include <FMEThirdPartyWarningsRestore.h>
19
20#include <mlUtilsSystem.h>
21
22// DICOM Tree prototypes.
23#include <DCMTree_Lib.h>
24
25ML_START_NAMESPACE
26
27class DicomMessageCollector;
28
29//----------------------------------------------------------------------------------
31//----------------------------------------------------------------------------------
32namespace DICOMTagTools {
33
39MLDICOMTags_EXPORT std::string getModalityTagValue(DCMTree::Const_TreePtr treePtr) ML_RETURN_VALUE_SHOULD_BE_USED;
40
47 const bool tryEnhancedReconstruction=false) ML_RETURN_VALUE_SHOULD_BE_USED;
48
51MLDICOMTags_EXPORT bool hasTrueModality(DCMTree::Const_TreePtr treePtr,
52 const std::string &modality) ML_RETURN_VALUE_SHOULD_BE_USED;
53
58MLDICOMTags_EXPORT bool hasSOPClassUID(DCMTree::Const_TreePtr dcmTree,
59 const std::string &sopClassUID,
60 bool doDeepSearch=false) ML_RETURN_VALUE_SHOULD_BE_USED;
61
65MLDICOMTags_EXPORT bool hasNMSOPClassUID(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
66
70MLDICOMTags_EXPORT bool hasStandardMRSpectroscopyClassUID(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
71
78MLDICOMTags_EXPORT bool hasRetiredPETCurveStorageSOPClassUID(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
79
81MLDICOMTags_EXPORT bool hasSCSOPClassUID(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
82
84MLDICOMTags_EXPORT bool hasParametricMapSOPClassUID(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
85
94MLDICOMTags_EXPORT bool hasSOPClassUIDOfModality(DCMTree::Const_TreePtr dcmTree,
95 const std::string &modality) ML_RETURN_VALUE_SHOULD_BE_USED;
96
98MLDICOMTags_EXPORT bool isKnownRetiredModality(const std::string &modality) ML_RETURN_VALUE_SHOULD_BE_USED;
99
102MLDICOMTags_EXPORT bool isKnownModality(const std::string &modality, bool includeRetired) ML_RETURN_VALUE_SHOULD_BE_USED;
103
107MLDICOMTags_EXPORT std::string getModalityForSOPClassUID(const std::string &sopClassUID) ML_RETURN_VALUE_SHOULD_BE_USED;
108
119MLDICOMTags_EXPORT bool isMultiFrameSOPClassUID(const std::string &SOPClassUID) ML_RETURN_VALUE_SHOULD_BE_USED;
120
122MLDICOMTags_EXPORT bool isEnhancedSOPClassUID(const std::string &enhancedSOPClassUID) ML_RETURN_VALUE_SHOULD_BE_USED;
123
125MLDICOMTags_EXPORT bool hasSharedOrPerFrameFunctionalGroupSequences(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
126
131// Examples such as ProbandT1.dcm have NumberOfFrames tags but no FrameincrementPointer.
132MLDICOMTags_EXPORT bool hasMultiFrameModule(DCMTree::Const_TreePtr dcmTree) ML_RETURN_VALUE_SHOULD_BE_USED;
133
137MLDICOMTags_EXPORT std::string translateToSingleFrameSOPClassUID(const std::string &enhancedSOPClassUID) ML_RETURN_VALUE_SHOULD_BE_USED;
138
143MLDICOMTags_EXPORT std::string reconstructEnhancedSOPClassUID(DCMTree::Const_TreePtr dcmMFTree,
144 std::string classicSOPClassUID) ML_RETURN_VALUE_SHOULD_BE_USED;
145
149MLDICOMTags_EXPORT void setUpSingleFrameImageStorageSOPClassUIDDerivedFromEnhancedOne(DCMTree::Const_TreePtr dcmMFTree,
150 DCMTree::TreePtr singleFrame,
151 DicomMessageCollector &dcmMsgCollector);
152
154MLDICOMTags_EXPORT std::pair<bool,bool> isClassicOrEnhancedMultiFrameSOPClass(const std::string &sopClassUID);
155
156};
157
158ML_END_NAMESPACE
Project global and OS specific declarations.
#define MLDICOMTags_EXPORT
If included by external modules, exported symbols are declared as import symbols.
Class to collect messages and errors related to a given frame handle.
Class to dump a DCMTree DICOM message into a human-readable file.
boost::shared_ptr< const Tree > Const_TreePtr
Definition DCMTree_Lib.h:67
MLDICOMTags_EXPORT std::string getSOPClassUIDTagValue(DCMTree::Const_TreePtr treePtr, const bool tryEnhancedReconstruction=false) ML_RETURN_VALUE_SHOULD_BE_USED
Returns a string with value of the SOPClassUID tag if it can be determined from the passed tree or an...
MLDICOMTags_EXPORT std::string getModalityTagValue(DCMTree::Const_TreePtr treePtr) ML_RETURN_VALUE_SHOULD_BE_USED
Returns a string with value of the modality tag if it can be determined from the passed tree or an em...
STL namespace.