MeVisLab Toolbox Reference
mlDicomSCMultiframeImageModuleTagInterface.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 
15 
16 ML_START_NAMESPACE
17 
18 //----------------------------------------------------------------------------------
24 //----------------------------------------------------------------------------------
26 {
27 public:
32  bool autoCreateSOPInstanceUID=true);
33 
35  inline void setInputPagedImage(PagedImage &inImg){ _inImg = &inImg; }
36 
38  inline PagedImage *getInputPagedImage() const { return _inImg; }
39 
41  inline void setIsDigitizedFilm(bool isDigiFilm){ _isDigitizedFilm = isDigiFilm; }
42 
44  void addFields() override;
45 
47  void inheritValues(DCMTree::Const_TreePtr dcmTree) override;
48 
50  std::string applyModifications(DCMTree::TreePtr dcmTree,
51  const FieldContainer *treeInfos=nullptr) override;
52 
54  std::string checkConsistency() const override;
55 
66 
69 private:
71  PagedImage *_inImg;
72 
74  bool _isDigitizedFilm;
75 
77  const bool _autoCreateSOPInstanceUID;
78 
79 };
80 
81 ML_END_NAMESPACE
Project global and OS specific declarations.
#define MLDICOMTAGINTERFACES_EXPORT
DLL export macro definition.
The class DicomModifyFieldAddOnBase is dedicated to manage fields for ML modules and instances derive...
Manages the module field interface according to DICOM SC-Multi-frame Image, C.8.6....
void inheritValues(DCMTree::Const_TreePtr dcmTree) override
Implements the copy of tag values from the given dcmTree to the fields.
void setInputPagedImage(PagedImage &inImg)
Sets the input image from which the vector grid data shall be retrieved.
PagedImage * getInputPagedImage() const
Returns the currently set input image from which the vector grid data shall be retrieved.
DicomSCMultiframeImageModuleTagInterface(Module &modRef, bool autoCreateSOPInstanceUID=true)
Constructor, setting the reference of the module for which the fields shall be managed; autoCreateSOP...
void addFields() override
Add fields to field container of module.
void setIsDigitizedFilm(bool isDigiFilm)
If set to true then tags are written assuming that the conversion type is DigitizedFilm.
std::string checkConsistency() const override
Checks for invalid parameters; return textual description on error, or empty string on success.
DoubleField * _rescaleSlopeFld
Rescale Intercept for the image data to be written.
std::string applyModifications(DCMTree::TreePtr dcmTree, const FieldContainer *treeInfos=nullptr) override
See DicomModifyFieldAddOnBase::applyModifications() for documentation.
StringField * _rescaleTypeFld
Rescale Intercept for the image data to be written.
DoubleField * _rescaleInterceptFld
Rescale Intercept for the image data to be written.
Vector2Field * _nominalScannedPixelSpacingFld
The NominalScannedPixelSpacing tag to be written in case of ConversionType==DigitizedFilm.
Field to encapsulate a double value.
Definition: mlFields.h:806
Field to encapsulate an enumerated value.
Definition: mlFields.h:363
Defines the class FieldContainer to encapsulate a vector of fields for (see class Field).
Base class for an image processing module of the ML.
Definition: mlModule.h:156
Class which represents an image, which manages properties of an image and image data which is located...
Definition: mlPagedImage.h:70
Field to encapsulate a string value.
Definition: mlFields.h:1000
Field to encapsulate a vector of 2 double values.
Definition: mlFields.h:1428
Header file of the DicomModifyFieldAddOnBase class dedicated to manage fields for ML modules and inst...
boost::shared_ptr< const Tree > Const_TreePtr
Definition: DCMTree_Lib.h:73
boost::shared_ptr< Tree > TreePtr
shared pointer to a DCMTree::Tree
Definition: DCMTree_Lib.h:70