MeVisLab Toolbox Reference
mlMultiFileVolumeListSMImageOutput.h
Go to the documentation of this file.
1 // Copyright (c) Fraunhofer MEVIS, Germany. All rights reserved.
2 // **InsertLicense** code
3 //----------------------------------------------------------------------------------
6 
13 
14 //----------------------------------------------------------------------------------
15 #pragma once
16 
18 
19 // Overlay handling stuff.
20 #include <mlDicomToMLTools.h>
21 
22 ML_START_NAMESPACE
23 
24 // Forward to internally used classes.
25 class MultiFileVolume;
26 
27 //----------------------------------------------------------------------------------
30 //----------------------------------------------------------------------------------
32 {
33 public:
34 
44  int numOutputs=3,
45  bool autoInstallTagDumpFieldAddOn=true,
46  bool installInputAccessConnector=true,
47  bool installInputMessageFilterPlugin=true,
48  bool installOutputAccessConnector=true);
49 
51 
52 public:
53 
57  void updateToVolume(MultiFileVolume *outVolToUse) override;
58 
59 protected:
60 
62  void calculateOutputImageProperties (int outIndex, PagedImage* outImg) override;
63 
69  void calculateOutputSubImage (SubImage *outSubImg, int outIndex, SubImage *inSubImgs) override;
70 
73  void _updateVolumeInformation(MultiFileVolume *currVol) override;
74 
75 private:
76 
79  void _calculateFrameOrigins(DCMTree::Const_TreePtr dcmTree);
80 
82  void _initializeFieldsAndMembers();
83 
86 
88  OutputImageProperties _imageOutput2Properties;
89 
92  NotifyField *_updateSMImageOutputInformationDoneFld;
94 
97 
98 };
99 
100 ML_END_NAMESPACE
#define MLDIRECTDICOMIMPORTOUTPUTS_EXPORT
DLL export macro definition.
The ML module class MultiFileVolumeListImageOutput for extending the number of image outputs of Multi...
ML modules class implementing an additional image output for MultiFileVolumeLists for an extended dis...
void calculateOutputSubImage(SubImage *outSubImg, int outIndex, SubImage *inSubImgs) override
Calculates page outSubImg of output image with index outIndex by using inSubimgs.
void _updateVolumeInformation(MultiFileVolume *currVol) override
This is called by the super class if the volume has changed.
MultiFileVolumeListSMImageOutput(int numInputs=0, int numOutputs=3, bool autoInstallTagDumpFieldAddOn=true, bool installInputAccessConnector=true, bool installInputMessageFilterPlugin=true, bool installOutputAccessConnector=true)
Constructor.
void calculateOutputImageProperties(int outIndex, PagedImage *outImg) override
Sets properties of the output image at output outIndex.
void updateToVolume(MultiFileVolume *outVolToUse) override
Update image output and internal pointer to the passed MultiFileVolume.
Management class used by DirectDicomImport to create, represent and describe volumes composed of mult...
Field without value for notifications.
Definition: mlFields.h:1049
Class which represents an image, which manages properties of an image and image data which is located...
Definition: mlPagedImage.h:70
This class manages/represents a rectangular 6d image region which is organized linearly in memory.
Definition: mlSubImage.h:75
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
Tool class with many tool functions for the conversion of DICOM information and tag values to compara...
The ML module class MultiFileVolumeListImageOutput for extending the number of image outputs of Multi...
boost::shared_ptr< const Tree > Const_TreePtr
Definition: DCMTree_Lib.h:73
Helper container to manage fields related to an image output.