|
MeVisLab Toolbox Reference
|
#include <mlDicomModifyMultiFileVolumeExport.h>
Public Member Functions | |
| DicomModifyMultiFileVolumeExport () | |
| Public Member Functions inherited from ml::Module | |
| MLMetaProfilePtr & | getMetaProfile () const |
| Returns the metaprofile for the base operator. | |
| const char * | getTypeNameFast () const |
| Module (int numInputImages, int numOutputImages) | |
| ~Module () override | |
| InputConnectorField * | getInputImageField (MLint i) const |
Returns the field representing input image i. i must be a valid index. | |
| OutputConnectorField * | getOutputImageField (MLint i=0) const |
Returns the field representing output image i. i must be a valid index. | |
| MLint | getNumInputImages () const |
| Returns the number of input images of this module. | |
| MLint | getNumOutputImages () const |
| Returns the number of output images of this module. | |
| PagedImage * | getOutputImage (MLint outputIndex=0) const |
Returns the output image outputIndex. The index needs to be in the range [0, getNumOutputImages()-1]. | |
| InputConnectorField * | addInputImage (const char *name=nullptr) |
| OutputConnectorField * | addOutputImage (const char *name=nullptr) |
| PagedImage * | getInputImage (MLint inputIndex, bool getReal=false) const |
| PagedImage * | getUpdatedInputImage (MLint inputIndex, bool getReal=false) const |
| MLErrorCode | processAllPages (int outputIndex=-1, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| MLErrorCode | processAllPages (ProcessAllPagesHandler &handler, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| MLErrorCode | processMissingPages (int outputIndex=0, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| void | clearOutputImage (MLint i=0) |
Clears cached output image pages of output image i. | |
| MLint | getOutputImageInplace (MLint outputIndex=0) const |
| MLint | getBypass (MLint outputIndex=0) const |
| THREAD_SUPPORT | getThreadSupport () const |
| bool | areRecursiveHandleNotificationsPermitted () const |
| MLint | getHandleNotificationEntryCounter () const |
| PERMITTED_TYPES | getVoxelDataTypeSupport () const |
| bool | isSupportedVoxelDataType (MLDataType dt) const |
| virtual INPUT_HANDLE | handleInput (int, INPUT_STATE) const |
| INPUT_STATE | getInputState (MLint index) |
| INPUT_STATE | getUpdatedInputState (MLint index) |
| bool | isInputImageField (Field *field) const |
| void | touchOutputImageFields () const |
| Touches all output image fields to indicate that the images have changed. | |
| virtual void | beginSaveFields () |
| virtual void | endSaveFields () |
| Public Member Functions inherited from ml::FieldContainer | |
| FieldContainer () | |
| Constructor. | |
| ~FieldContainer () override | |
| Destructor: Deletes all added fields. | |
| std::string | whoAmI (bool withInstanceName=true) const |
| Field * | addField (const char *name, const char *type, const char *value) |
| Field * | addField (Field *field) |
Adds a field, the ownership of the field is passed to the FieldContainer. | |
| BoolField * | addBool (const char *name) |
Creates a BoolField with name and adds it to the container. Default value is false. | |
| BoolField * | addBool (const char *name, bool value) |
Creates a BoolField with name and adds it to the container. | |
| IntField * | addInt (const char *name) |
Creates an IntField with name and adds it to the container. Default value is 0. | |
| IntField * | addInt (const char *name, MLint value) |
Creates an IntField with name and adds it to the container. | |
| EnumField * | addEnum (const char *name, const char *const *enumerationItemNames, MLint numEnumerationItems) |
| EnumField * | addEnum (const char *name, const std::vector< std::string > &enumerationItemNames) |
| template<typename EnumType> | |
| TypedEnumField< EnumType > * | addEnum (const char *name, const EnumValues< EnumType > &values, EnumType initialValue) |
| FloatField * | addFloat (const char *name) |
Creates a FloatField with name and adds it to the container. Default value is 0.f. | |
| FloatField * | addFloat (const char *name, float value) |
Creates a FloatField with name and adds it to the container. | |
| ProgressField * | addProgress (const char *name) |
Creates a float ProgressField with name and adds it to the container. Default value is 0.f. | |
| ProgressField * | addProgress (const char *name, float value) |
Creates a float ProgressField with name and adds it to the container. | |
| DoubleField * | addDouble (const char *name) |
Creates a DoubleField with name and adds it to the container. Default value is 0. | |
| DoubleField * | addDouble (const char *name, double value) |
Creates a DoubleField with name and adds it to the container. | |
| StringField * | addString (const char *name) |
Creates a StringField with name and adds it to the container. Default value is empty string. | |
| StringField * | addString (const char *name, const std::string &value) |
Creates a StringField with name and adds it to the container. | |
| NotifyField * | addNotify (const char *name) |
Creates a NotifyField field with name and adds it to the container. | |
| TriggerField * | addTrigger (const char *name) |
| BaseField * | addBase (const char *name) |
Creates a Base field with name and adds it to the container. Default value is NULL. | |
| BaseField * | addBase (const char *name, Base *value) |
Creates a Base field with name and adds it to the container. | |
| BaseField * | addBase (const char *name, const RefCountedBasePtr &value) |
Creates a Base field with name and adds it to the container. Sets the value from intrusive pointer. | |
| template<typename T> | |
| BaseField * | addBaseWithAllowedType (const char *name, T *value=nullptr) |
| As above, but also sets the allowed type of the field. | |
| template<typename T> | |
| BaseField * | addBaseWithAllowedType (const char *name, const ::boost::intrusive_ptr< T > &value) |
| As above, but also sets the allowed type of the field. | |
| template<typename T> | |
| TypedBaseField< T > * | addTypedBase (const char *name) |
Creates a TypedBaseField with name and adds it to the container. Default value is NULL. | |
| template<typename T> | |
| TypedBaseField< T > * | addTypedBase (const char *name, T *value) |
Creates a TypedBaseField with name and adds it to the container. | |
| template<typename T> | |
| TypedBaseField< T > * | addTypedBase (const char *name, const ::boost::intrusive_ptr< T > &value) |
Creates a TypedBaseField with name and adds it to the container. Sets the value from intrusive pointer. | |
| SoNodeField * | addSoNode (const char *name) |
Creates a SoNodeField with name and adds it to the container. Default value is NULL. | |
| SoNodeField * | addSoNode (const char *name, SoNode *value) |
Creates a SoNodeField with name and adds it to the container. | |
| PointerField * | addPointer (const char *name) |
Creates a PointerField with name and adds it to the container. | |
| Vector2Field * | addVector2 (const char *name) |
Creates a Vector2Field with name and adds it to the container. | |
| Vector2Field * | addVector2 (const char *name, const Vector2 &value) |
Creates a Vector2Field with name and adds it to the container. | |
| Vector2Field * | addVector2 (const char *name, double x, double y) |
Creates a Vector2Field with name and adds it to the container. | |
| Vector3Field * | addVector3 (const char *name) |
Creates a Vector3Field with name and adds it to the container. | |
| Vector3Field * | addVector3 (const char *name, const Vector3 &value) |
Creates a Vector3Field with name and adds it to the container. | |
| Vector3Field * | addVector3 (const char *name, double x, double y, double z) |
Creates a Vector3Field with name and adds it to the container. | |
| Vector4Field * | addVector4 (const char *name) |
Creates a Vector4Field with name and adds it to the container. | |
| Vector4Field * | addVector4 (const char *name, const Vector4 &value) |
Creates a Vector4Field with name and adds it to the container. | |
| Vector4Field * | addVector4 (const char *name, double x, double y, double z, double w) |
Creates a Vector4Field with name and adds it to the container. | |
| Vector5Field * | addVector5 (const char *name) |
Creates a Vector5Field with name and adds it to the container. | |
| Vector5Field * | addVector5 (const char *name, const Vector5 &value) |
Creates a Vector5Field with name and adds it to the container. | |
| Vector6Field * | addVector6 (const char *name) |
Creates a Vector6Field with name and adds it to the container. | |
| Vector6Field * | addVector6 (const char *name, const Vector6 &value) |
Creates a Vector6Field with name and adds it to the container. | |
| Vector10Field * | addVector10 (const char *name) |
Creates a Vector10Field with name and adds it to the container. | |
| Vector10Field * | addVector10 (const char *name, const Vector10 &value) |
Creates a Vector10Field with name and adds it to the container. | |
| ImageVectorField * | addImageVector (const char *name) |
Creates a ImageVectorField with name and adds it to the container. | |
| ImageVectorField * | addImageVector (const char *name, const ImageVector &value) |
Creates a ImageVectorField with name and adds it to the container. | |
| ImageVectorField * | addImageVector (const char *name, MLint x, MLint y, MLint z, MLint c, MLint t, MLint u) |
Creates a ImageVectorField with name and adds it to the container. | |
| SubImageBoxField * | addSubImageBox (const char *name) |
Creates a SubImageBoxField with name and adds it to the container. | |
| SubImageBoxField * | addSubImageBox (const char *name, const SubImageBox &value) |
Creates a SubImageBoxField with name and adds it to the container. | |
| SubImageBoxdField * | addSubImageBoxd (const char *name) |
Creates a SubImageBoxd field with name and adds it to the container. | |
| SubImageBoxdField * | addSubImageBoxd (const char *name, const SubImageBoxd &value) |
Creates a SubImageBoxd field with name and adds it to the container. | |
| ColorField * | addColor (const char *name) |
Creates a ColorField with name and adds it to the container. | |
| ColorField * | addColor (const char *name, float r, float g, float b) |
Creates a ColorField with name and adds it to the container. | |
| ColorField * | addColor (const char *name, const Vector3 &value) |
Creates a ColorField with name and adds it to the container. | |
| PlaneField * | addPlane (const char *name) |
Creates a PlaneField with name and adds it to the container. | |
| PlaneField * | addPlane (const char *name, double f0, double f1, double f2, double f3) |
Creates a PlaneField with name and adds it to the container. | |
| PlaneField * | addPlane (const char *name, const Plane &value) |
Creates a PlaneField with name and adds it to the container. | |
| RotationField * | addRotation (const char *name) |
Creates a RotationField with name and adds it to the container. | |
| RotationField * | addRotation (const char *name, const Rotation &value) |
Creates a RotationField with name and adds it to the container. | |
| Matrix2Field * | addMatrix2 (const char *name) |
Creates a Matrix2Field with name and adds it to the container. | |
| Matrix2Field * | addMatrix2 (const char *name, const Matrix2 &value) |
Creates a Matrix2Field with name and adds it to the container. | |
| Matrix3Field * | addMatrix3 (const char *name) |
Creates a Matrix3Field with name and adds it to the container. | |
| Matrix3Field * | addMatrix3 (const char *name, const Matrix3 &value) |
Creates a Matrix3Field with name and adds it to the container. | |
| Matrix4Field * | addMatrix4 (const char *name) |
Creates a Matrix4Field with name and adds it to the container. | |
| Matrix4Field * | addMatrix4 (const char *name, const Matrix4 &value) |
Creates a Matrix4Field with name and adds it to the container. | |
| Matrix5Field * | addMatrix5 (const char *name) |
Creates a Matrix5Field with name and adds it to the container. | |
| Matrix5Field * | addMatrix5 (const char *name, const Matrix5 &value) |
Creates a Matrix5Field with name and adds it to the container. | |
| Matrix6Field * | addMatrix6 (const char *name) |
Creates a Matrix6Field with name and adds it to the container. | |
| Matrix6Field * | addMatrix6 (const char *name, const Matrix6 &value) |
Creates a Matrix6Field with name and adds it to the container. | |
| MatrixField * | addMatrix (const char *name) |
Creates a MatrixField with name and adds it to the container. | |
| MatrixField * | addMatrix (const char *name, const Matrix4 &value) |
Creates a MatrixField with name and adds it to the container. | |
| MLDataTypeField * | addMLDataType (const char *name) |
Creates a MTDataTypeField with name and adds it to the container. | |
| MLDataTypeField * | addMLDataType (const char *name, MLDataType value) |
Creates a MTDataTypeField with name and adds it to the container. | |
| UniversalTypeField * | addUniversalType (const char *name) |
Creates an UniversalTypeField field with name and adds it to the container. | |
| IntListField * | addIntList (const char *name) |
Creates an IntListField field with name and empty list value and adds it to the container. | |
| IntListField * | addIntList (const char *name, const std::vector< MLint > &value) |
Creates an IntListField field with name and given list value and adds it to the container. | |
| DoubleListField * | addDoubleList (const char *name) |
Creates an DoubleListField field with name and empty list value and adds it to the container. | |
| DoubleListField * | addDoubleList (const char *name, const std::vector< double > &value) |
Creates an DoubleListField field with name and given list value and adds it to the container. | |
| Vector2ListField * | addVector2List (const char *name) |
Creates an Vector2ListField field with name and empty list value and adds it to the container. | |
| Vector2ListField * | addVector2List (const char *name, const std::vector< Vector2 > &value) |
Creates an Vector2ListField field with name and given list value and adds it to the container. | |
| Vector3ListField * | addVector3List (const char *name) |
Creates an Vector3ListField field with name and empty list value and adds it to the container. | |
| Vector3ListField * | addVector3List (const char *name, const std::vector< Vector3 > &value) |
Creates an Vector3ListField field with name and given list value and adds it to the container. | |
| Vector4ListField * | addVector4List (const char *name) |
Creates an Vector4ListField field with name and empty list value and adds it to the container. | |
| Vector4ListField * | addVector4List (const char *name, const std::vector< Vector4 > &value) |
Creates an Vector4ListField field with name and given list value and adds it to the container. | |
| size_t | getNumFields () const |
| Returns the number of added fields. | |
| bool | hasField (const std::string &name) const |
Returns true if the field with name name exists; otherwise, false is returned. | |
| Field * | getField (const std::string &name) const |
| Field * | getField (MLint index) const |
Returns pointer of field at index if it exists. If not, -1 is returned. | |
| MLint | getFieldIndex (Field *field) const |
Returns index of field if it exists. If not, -1 is returned. | |
| void | setFieldStringValue (const std::string &name, const std::string &value) |
| std::string | getFieldStringValue (const std::string &name) const |
| virtual void | deactivateAttachments () |
| Public Member Functions inherited from ml::Base | |
| Base () | |
| Constructor. | |
| virtual | ~Base () |
| Destructor. | |
| virtual Base * | deepCopy () const |
| bool | isOfAllowedType (const std::vector< const RuntimeType * > &types) const |
| virtual bool | isRefCountedBase () const |
| Returns whether the instance is derived from RefCountedBase. | |
| virtual std::string | detailString () const |
| virtual bool | implementsPersistence (PersistenceInterface) const |
| virtual std::string | persistentState () const |
| Returns a string describing the object's internal state. | |
| virtual void | setPersistentState (const std::string &state) |
| virtual void | addStateToTree (TreeNode *) const |
| Attaches the object state as children of the given parent node. | |
| virtual void | readStateFromTree (TreeNode *) |
| Reads the object state from the children of the given parent node. | |
| virtual void | writeTo (AbstractPersistenceOutputStream *) const |
| virtual void | readFrom (AbstractPersistenceInputStream *, int) |
Protected Member Functions | |
| void | activateAttachments () override |
| Handles changes which were applied without notifications. | |
| void | handleNotification (Field *field) override |
| Handles field changes. | |
| const ZTUFileNameSet * | _getInputVolumeFileSet (Matrix4 *w2vMatrix=nullptr, bool *validMatrix=nullptr) const |
| bool | _requiresModifications () const |
| DICOMTagTools::ZTUIndex | _getZTUPos (const DICOMCachedIOFileHandle &fileHandle, const ZTUFileNameSet &fileSet, DicomMessageCollector &dcmMsgCollector) |
| DICOMTagTools::ZTUVector | _getZTUSuppressions (std::string &parseInfo, const ZTUFileNameSet &inFileSet) const |
| void | _export () |
| Stores the (modified) DICOM frames in the destination directory. | |
| void | _exportFilteredDicomBaseObject (DCMTree::Const_TreePtr inDCMTree, std::string &oldToNewSOPInstanceUIDList, const Matrix4 *w2vMatrix, DicomMessageCollector &dcmMsgCollector) |
| void | _exportFilteredFileSet (const std::vector< DICOMCachedIOFileHandle > &allFiles, std::string &oldToNewSOPInstanceUIDList, const Matrix4 *w2vMatrix, const ZTUFileNameSet &originalInFileSet, DicomMessageCollector &dcmMsgCollector) |
| void | _createExportTree (const DICOMCachedIOFileHandle &inOrigFilePath, DCMTree::Const_TreePtr inDCMTree, DICOMCachedIOFileHandle &recentMFFileHandle, DCMTree::Const_TreePtr &recentMFTree, DCMTree::TreePtr &modifiableExportTree, DCMTree::Const_TreePtr &constExportTree, DicomMessageCollector &dcmMsgCollector) |
| void | _appendExportedPath (const DICOMCachedIOFileHandle &pathOfNewlyExportedFile) |
| Appends a newly exported file path to _exportedFramePathsFld. | |
| void | _exportFile (const DICOMCachedIOFileHandle &inOrigFilePath, DCMTree::Const_TreePtr inDCMTree, size_t inFileIdx, BaseField *inFilterBase, const std::string &dstDirBase, const std::string &dstFileNameSuffix, std::string &oldSOPInstanceUID, std::string &newSOPInstanceUID, DICOMCachedIOFileHandle &recentMFFileHandle, DCMTree::Const_TreePtr &recentMFTree, const Matrix4 *w2vMatrix, const DICOMTagTools::ZTUIndex *ztuPos, DicomMessageCollector &dcmMsgCollector) |
| std::string | _applyDCMTreeChanges (DCMTree::TreePtr dcmTree, std::string &oldSOPInstanceUID, std::string &newSOPInstanceUID) |
| void | _setUpImageTypeTag (DCMTree::TreePtr dcmTree, std::string &errStr) |
| void | _saveDCMTree (DCMTree::Const_TreePtr dcmTree, const DICOMCachedIOFileHandle &srcFilePath, size_t fileIdx, const std::string &dstDirBase, const std::string &dstFileNameSuffix, std::string &dstFilePath, DicomMessageCollector &dcmMsgCollector) |
| Protected Member Functions inherited from ml::Module | |
| void | handleNotificationInternal (Field *field, FieldSensor::Strength strength) override |
| virtual CalculateOutputImageHandler * | createCalculateOutputImageHandler (PagedImage *outputImage) |
| virtual void | calculateOutputImageProperties (int outputIndex, PagedImage *outputImage) |
| virtual SubImageBox | calculateInputSubImageBox (int, const SubImageBox &outputSubImageBox, int) |
| virtual void | calculateOutputSubImage (SubImage *outputSubImage, int outputIndex, SubImage *inputSubImages) |
| virtual void | provideCustomPage (int, const SubImageBox &, MLMemoryBlockHandle &) |
| void | handleNotificationOff () |
| void | handleNotificationOn () |
| bool | isHandleNotificationOn () |
Returns true if handleNotification calls are permitted; otherwise, it returns false. | |
| void | setOutputImageInplace (MLint outputIndex=0, MLint inputIndex=0) |
| void | unsetOutputImageInplace (MLint outputIndex=0) |
| void | setBypass (MLint outputIndex=0, MLint inputIndex=0) |
| void | setClampPagesToImageExtent (bool flag=true) |
| void | setThreadSupport (THREAD_SUPPORT supportMode) |
| void | permitRecursiveHandleNotifications (bool enable) |
| void | setVoxelDataTypeSupport (PERMITTED_TYPES permTypes) |
Static Protected Member Functions | |
| static std::string | _filterDCMTree (DCMTree::TreePtr dcmTree, BaseField *inFilterBase, const Matrix4 *w2vMatrix, const DICOMTagTools::ZTUIndex *ztuPos) |
Additional Inherited Members | |
| Public Types inherited from ml::Module | |
| enum | PERMITTED_TYPES { ONLY_SCALAR_TYPES , ONLY_DEFAULT_TYPES , ALL_REGISTERED_TYPES } |
| See documentation of setVoxelDataTypeSupport. More... | |
| enum | INPUT_STATE { DISCONNECTED = 0 , CONNECTED_BUT_INVALID = 1 , CONNECTED_AND_VALID = 2 , CONNECTED_BUT_NEEDS_UPDATE = 3 } |
| See documentation of handleInput. More... | |
| enum | INPUT_HANDLE { INVALIDATE = 0 , ALLOW_INVALID_INPUT = 2 } |
| See documentation of handleInput. More... | |
| Public Types inherited from ml::Base | |
| enum | PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream } |
| This enum describes the different persistence interfaces available. More... | |
| Static Public Member Functions inherited from ml::Module | |
| static MLErrorCode | getTile (PagedImage *image, SubImageBox loc, MLDataType datatype, void **data, const ScaleShiftData &scaleShiftData=ScaleShiftData(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| static MLErrorCode | getTile (PagedImage *image, SubImage &subimg, const ScaleShiftData &scaleShiftData=ScaleShiftData(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| static MLErrorCode | updateImageProperties (PagedImage *image) |
| static void | freeTile (void *data) |
| For documentation see Host::freeTile(). | |
| static void | updateProgress (const char *info1, const char *info2) |
| For documentation see Host::updateProgress(). | |
| static bool | shouldTerminate () |
| For documentation see Host::shouldTerminate(). | |
| static Field * | getPressedNotifyField () |
| For documentation see Host::getPressedNotifyField(). | |
| static void | adaptPageExtent (ImageVector &pageExtent, MLDataType imageType, const ImageVector &newImgExtent, const ImageVector &oldImgExtent, const ImageVector &pageUnit=ImageVector(0), const ImageVector &minPageExtent=ImageVector(0), const ImageVector &maxPageExtent=ImageVector(0)) |
| static std::string | getVoxelValueAsString (PagedImage *image, const ImageVector &position, MLErrorCode *errorCode=nullptr, const std::string &errorResult="") |
| static size_t | getNumModules () |
| Returns the number of instantiated modules. | |
| static Module * | getModule (size_t index) |
Returns a pointer to instantiated module index. | |
| static MLint | findModuleIndex (Module &module) |
Returns the index of Module module. If not found, -1 is returned. | |
| static void | destroyModule () |
| Protected Types inherited from ml::Module | |
| enum | THREAD_SUPPORT { NO_THREAD_SUPPORT = PagedImage::NO_THREAD_SUPPORT , MULTITHREADED = PagedImage::MULTITHREADED , IO_THREAD = PagedImage::IO_THREAD } |
ML module class DicomModifyMultiFileVolumeExport which exports a MultiFileVolume composed of DICOM frames as files with modified DICOM information into a destination directory.
Definition at line 53 of file mlDicomModifyMultiFileVolumeExport.h.
| ml::DicomModifyMultiFileVolumeExport::DicomModifyMultiFileVolumeExport | ( | ) |
Referenced by _saveDCMTree().
|
protected |
Appends a newly exported file path to _exportedFramePathsFld.
|
protected |
Applies all necessary DICOM tree changes to dcmTree before writing it to disk.
| dcmTree | The tree to be modified. |
| oldSOPInstanceUID | Returns the value of the SOPInstanceUID of the file before modifying it. |
| newSOPInstanceUID | Returns the value of the new SOPInstanceUID of the file after modifying it; if is not changed then the old one is returned. |
|
protected |
Creates/determines the DICOM tree which can be modified and exported. If a modification of the returned tree is not necessary, because the module settings does not require it, then only a constant version of the tree is returned, otherwise only a modifiable version is returned. The routine loads the DICOM file from origFilePath if that is non empty, otherwise it uses inDCMTree. If necessary the tree is cloned to create a modifiable tree to ensure that no cached content is modified. In some cases special preparations are performed on the returned tree, for example the appropriate pixel data region from a multi-frame pixel source might be translated into a normal pixel data tag of the returned tree.
| inOrigFilePath | The file handle URL/path to the original DICOM file whose content to export; if it is empty then inDCMTree is exported alternatively. |
| inDCMTree | The DICOM tree to use/modify/export instead of origFilePath if that is "". |
| recentMFFileHandle | If not empty then this indicates the handle of the last opened decomposed multi-frame file to be able to reuse it for faster access; it is updated synchronously with recentMFTree. |
| recentMFTree | If non nullptr then this is the last opened non-decomposed tree of the decomposed multi-frame tree to be able to reuse it for faster access; it is updated synchronously with recentMFFileHandle. |
| modifiableExportTree | If a modification of DICOM tag is necessary then this tree is returned as non nullptr pointer. Modification can be applied to it safely without overwriting cached contents. If no modifications on the tree are needed then this tree is returned as nullptr pointer. |
| constExportTree | If modifications are not necessary then this tree is returned as non nullptr tree and it can be exported without further modifications. This tree might be from a cache, it is constant and therefore cannot be modified. |
| dcmMsgCollector | Collects error, info and issue messages (typically related to a handle). The success state of the call should be identified by non nullptr modifiableExportTree or constExportTree pointers. |
|
protected |
Stores the (modified) DICOM frames in the destination directory.
|
protected |
Loads the DICOM file from origFilePath, filters it with a DicomModifyTagsPluginBase possible connected to inFilterBase, and writes it into a new file built from dstDirBase and fileIdx.
| inOrigFilePath | The file handle URL/path to the original DICOM file from which a modified copy shall be created; if it is empty then inDCMTree is exported alternatively. |
| inDCMTree | The DICOM tree to use/modify/export instead of inOrigFilePath if that is "". |
| inFileIdx | The index of the file to be modified; used for the creation of result file names. |
| inFilterBase | The base field where a DicomModifyTagsPluginBase might be connected. |
| dstDirBase | The destination directory in which the modified files shall be written. |
| dstFileNameSuffix | Suffix added to destination file name. |
| oldSOPInstanceUID | Returns the value of the SOPInstanceUID of the file before modifying it. |
| newSOPInstanceUID | Returns the value of the new SOPInstanceUID of the file after modifying it; if is not changed then the old one is returned. |
| recentMFFileHandle | If not empty then this indicates the handle of the last opened decomposed multi-frame file to be able to reuse it for faster access; it is updated synchronously with recentMFTree. |
| recentMFTree | If non nullptr then this is the last opened non-decomposed tree of the decomposed multi-frame tree to be able to reuse it for faster access; it is updated synchronously with recentMFFileHandle. |
| w2vMatrix | The world-to-voxel transformation matrix the frame belongs to; it will be passed as additional treeInfo to manipulated DICOM trees if available, otherwise it is ignored. |
| ztuPos | If non nullptr then it contains the ztu frame position of the DICOM frame inside of a MultiFileVolume. |
| dcmMsgCollector | Collects error, info and issue messages (typically related to a handle). |
|
protected |
If necessary then modify the passed DICOM tree and write it into the destination directory where the file name is build only from destinationDirectoryFld, destinationFileNameSuffixFld, and the index.
| inDCMTree | The DICOM tree to export. |
| oldToNewSOPInstanceUIDList | A newline separated list of mappings between SOPInstanceUIDs before and after modification of each file from allFiles. |
| w2vMatrix | The world-to-voxel transformation matrix the frame belongs to; it will be passed as additional treeInfo to manipulated DICOM trees if available, otherwise (if nullptr) it is ignored. |
| dcmMsgCollector | Collects error, info and issue messages (typically related to a handle). |
|
protected |
Get all DCMFiles from the given file set and writes the files into the destination directory.
| allFiles | A set of paths of DICOM files whose content shall be read, filtered and written. |
| oldToNewSOPInstanceUIDList | A newline separated list of mappings between SOPInstanceUIDs before and after modification of each file from allFiles. |
| w2vMatrix | The world-to-voxel transformation matrix the frame belongs to; it will be passed as additional treeInfo to manipulated DICOM trees if available, otherwise (if nullptr) it is ignored. |
| originalInFileSet | The set of files from which allFiles have been extracted. |
| dcmMsgCollector | Collects error, info and issue messages (typically related to a handle). |
|
staticprotected |
If a DicomModifyTagsPluginBase at inFilterBase is connected then it is applied to dcmTree.
| dcmTree | The tree to be filtered if a DicomModifyTagsPluginBase is appended otherwise it is left unchanged. |
| inFilterBase | The base field where a DicomModifyTagsPluginBase might be connected. |
| w2vMatrix | The world-to-voxel transformation matrix the frame belongs to; it will be passed as additional treeInfo to manipulated DICOM trees if available, otherwise it is ignored. |
| ztuPos | If non nullptr then it contains the ztu position of the DICOM frame. |
|
protected |
Return the input ZTUFileNameSet either from the currently connected MultiFileVolume or from the specified file name; return nullptr if none is available.
| w2vMatrix | If non nullptr then it will be set to either the getWorldToVoxelMatrix() of the image properties of the MultiFileVolume the file comes from or to the identity if it does not come from a MultiFileVolume. It will be ignored if it is nullptr. |
| validMatrix | If non nullptr then the validity state of the matrix is returned, and ignored if nullptr. |
|
protected |
Gets the SOPInstanceUID of fileHandle, searches it in fileSet and returns the ztu position of the fileHandle with "VALID" as value if found, otherwise ztuPos 0,0,0 with value "INVALID".
| fileHandle | The handle of the file whose SOPInstanceUID shall be searched. |
| fileSet | The fileSet in which the SOPInstanceUID of fileHandle shall be searched. |
| dcmMsgCollector | Collects error, info and issue messages (typically related to a handle). |
|
protected |
Returns a list of ztu positions which are described in _ztuFrameSuppressionsFld. If inFileSet a valid set of file handles the index range is also checked and handled as error, otherwise no out of range range checks are performed.
| parseInfo | is returned empty if complains about errors shall be returned. |
| inFileSet | The set of file handles from which some can be suppressed. |
|
protected |
Returns true if any modification is implied by the module parameters, for example by a connected filter plugin, or by enabled series or study instance UID changes; otherwise false is returned.
|
protected |
Stores dcmTree in file dstFileName.
| dcmTree | The DICOM tree to be stored on disk. |
| srcFilePath | The file name handle from which dcmTree was loaded, will be used as a base to determine the file name for storage; if it is passed as empty string then a file name is built from dstDirBase, dstFileNameSuffix, and fileIdx. |
| fileIdx | The index of the source file; used to generate the output file name. |
| dstDirBase | The destination directory in which the modified files shall be written. |
| dstFileNameSuffix | Suffix added to destination file name. |
| dstFilePath | If non-nullptr it will be set to the file name in which the dcmTree is stored, otherwise ignored. |
| dcmMsgCollector | Collects error, info and issue messages (typically related to a handle). |
References DicomModifyMultiFileVolumeExport().
|
protected |
Sets up the value(s) of the ImageType tag in dcmTree according to the field settings, possible errors and issues are appended to errStr.
|
overrideprotectedvirtual |
Handles changes which were applied without notifications.
Reimplemented from ml::FieldContainer.
|
overrideprotectedvirtual |
Handles field changes.
Reimplemented from ml::Module.