MeVisLab Toolbox Reference
mlMultiFrameTools.h
Go to the documentation of this file.
1// Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2// **InsertLicense** code
3//----------------------------------------------------------------------------------
6
11//----------------------------------------------------------------------------------
12#pragma once
13
14#include "MLDICOMTagsSystem.h"
15
16// ML includes
17#include <mlTypeDefs.h>
18
19#include <FMEThirdPartyWarningsDisable.h>
20#include <string>
21#include <FMEThirdPartyWarningsRestore.h>
22
23// DCMTree pointers etc.
24#include <FMEThirdPartyWarningsDisable.h>
25#include "DCMTree_Lib.h"
26#include <FMEThirdPartyWarningsRestore.h>
28
29ML_START_NAMESPACE
30
31// Forwards
32class DicomMessageCollector;
33
34//----------------------------------------------------------------------------------
36//----------------------------------------------------------------------------------
38{
45
49
55
59
64
82 DCMTree::TreePtr dstTree,
83 const DICOMTagTools::TagIdDesc *tagsToCopy,
84 bool alsoCopySequenceTags,
85 DicomMessageCollector *dcmMsgCollector=nullptr);
86
98 std::vector<DCMTree::RawTagId> *copyTagIds,
100 size_t frameIdx,
101 DCMTree::TreePtr &dstTree,
102 DicomMessageCollector &dcmMsgCollector);
103
112 size_t pffgItemIdx,
113 DCMTree::TreePtr dstFramePtr,
114 DicomMessageCollector &dcmMsgCollector);
115
141 std::vector<DCMTree::TreePtr> &singleFrameList,
142 const DICOMTagTools::TagIdDesc *tagsToCopy,
143 const DICOMTagTools::TagIdDesc *tagsToRemove,
144 bool addFullFunctionalGroupSequences,
145 DicomMessageCollector &dcmMsgCollector);
146
167 std::vector<DCMTree::TreePtr> &singleFrameList,
168 const DICOMTagTools::TagIdDesc *tagsToCopy,
169 const DICOMTagTools::TagIdDesc *tagsToRemove,
170 bool addFullFunctionalGroupSequences,
171 DicomMessageCollector &dcmMsgCollector);
172};
173
174ML_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.
A collection of tools related to DICOM tags and tree removal and modifications.
boost::shared_ptr< const Tree > Const_TreePtr
Definition DCMTree_Lib.h:67
boost::shared_ptr< Tree > TreePtr
Shared pointer to a DCMTree::Tree.
Definition DCMTree_Lib.h:66
unsigned int RawTagId
struct ml::DICOMTagTools::DcmTagIdToRemove TagIdDesc
< Small structure describing a tag to be removed from a DCMTree tree with the helper function - see r...
A tool library with useful functions to detect, analyze, decompose multi-frame DICOM trees.
MLDICOMTags_EXPORT bool isEnhanced(DCMTree::Const_TreePtr dcmTree)
MLDICOMTags_EXPORT void copyTopLevelTags(DCMTree::Const_TreePtr mfTree, DCMTree::TreePtr dstTree, const DICOMTagTools::TagIdDesc *tagsToCopy, bool alsoCopySequenceTags, DicomMessageCollector *dcmMsgCollector=nullptr)
MLDICOMTags_EXPORT bool extractSingleFramesFromMultiFrameTree(DCMTree::Const_TreePtr dcmMFTree, std::vector< DCMTree::TreePtr > &singleFrameList, const DICOMTagTools::TagIdDesc *tagsToCopy, const DICOMTagTools::TagIdDesc *tagsToRemove, bool addFullFunctionalGroupSequences, DicomMessageCollector &dcmMsgCollector)
MLDICOMTags_EXPORT bool wasOrIsEnhancedDCMTree(DCMTree::Const_TreePtr dcmTree)
MLDICOMTags_EXPORT bool doMultiFrameDecomposition(DCMTree::Const_TreePtr mfTree, std::vector< DCMTree::TreePtr > &singleFrameList, const DICOMTagTools::TagIdDesc *tagsToCopy, const DICOMTagTools::TagIdDesc *tagsToRemove, bool addFullFunctionalGroupSequences, DicomMessageCollector &dcmMsgCollector)
MLDICOMTags_EXPORT bool isSingleFrame(DCMTree::Const_TreePtr dcmTree)
MLDICOMTags_EXPORT bool isDecomposedEnhancedDCMTree(DCMTree::Const_TreePtr dcmTree)
MLDICOMTags_EXPORT void addSubSequenceTags(DCMTree::RawTagId sequenceTagId, std::vector< DCMTree::RawTagId > *copyTagIds, DCMTree::Const_TreePtr srcTree, size_t frameIdx, DCMTree::TreePtr &dstTree, DicomMessageCollector &dcmMsgCollector)
MLDICOMTags_EXPORT const DICOMTagTools::TagIdDesc BaseTagsToRemove[]
MLDICOMTags_EXPORT void addSequenceContents(DCMTree::Const_TreePtr srcFrameTree, size_t pffgItemIdx, DCMTree::TreePtr dstFramePtr, DicomMessageCollector &dcmMsgCollector)