23#include "DPL_TypeDefs.h" 
   29  class ProcessingResult;
 
   36class DirectDicomImport;
 
   95                                                  const std::string &overrideName) 
const;
 
  121    EnumField   *_dplSpecialProcessorsFld=
nullptr;
 
  129    IntField    *_minimumNumFramesInVolumeFld=
nullptr;
 
  138    DoubleField *_dplRelativeDistanceToleranceFld=
nullptr;
 
  141    DoubleField *_dplAbsoluteDistanceToleranceFld=
nullptr;
 
  151    BoolField   *_dplSetSeriesBasedPreprocessingConditionFld=
nullptr;
 
  154    StringField *_dplSetForce2DPlusTConditionFld=
nullptr;
 
  157    BoolField   *_dplLogPartingAndSortingInformationOnFld=
nullptr;
 
  161    BoolField   *_dplScanRecursivelyFld=
nullptr;
 
  165    BoolField   *_decomposeMultiFrameFilesFld=
nullptr;
 
  169    BoolField   *_copyFullFunctionalGroupSequencesFld=
nullptr;
 
  174    BoolField   *_removePrivateMFSQTagFld=
nullptr;
 
  180    BoolField   *_forceOrthogonalWorldMatrixFld=
nullptr;
 
  185    BoolField   *_dplDecomposeTo3DVolumesFld=
nullptr;
 
  197    BoolField   *_allowMixedPixelTypesFld=
nullptr;
 
  204    BoolField   *_copyPrivateTopLevelSourceTagsFld=
nullptr;
 
  210    BoolField   *_disableDCMTreeNormalizationFld=
nullptr;
 
  216    BoolField   *_keepTopLevelOfDCMTreeNormalizationFld=
nullptr;
 
  227    BoolField   *_autoCreateMissingPrivateCreatorsFld=
nullptr;
 
  233    BoolField   *_doNotModifySMFTreeFld=
nullptr;
 
  236    enum { NUM_HARD_OVERWRITE_TAGS = 4 } HardOverWriteNumtags;
 
  239    BoolField  *_dplHardOverwriteTagOnFld[NUM_HARD_OVERWRITE_TAGS]={
nullptr};
 
  242    StringField *_dplHardOverwriteTagIdFld[NUM_HARD_OVERWRITE_TAGS]={
nullptr};
 
  245    StringField *_dplHardOverwriteTagStrFld[NUM_HARD_OVERWRITE_TAGS]={
nullptr};
 
  248    bool         _dplHardOverwriteIds[NUM_HARD_OVERWRITE_TAGS]={
false};
 
  251    EnumField   *_dplAllowSortingAccordingToDimensionIndexValuesFld={
nullptr};
 
  254    StringField *_dplWorkaroundValueForImageOrientationPatientTagFld=
nullptr;
 
  257    void         _logProcessingTags(DPL::Processor& processor, DPL::ErrorInfo* error );
 
  262    void _prefetchTags(
const FileListTools::FileList &fileList,
 
  263                       std::vector<std::string>      &goodDICOMFileHandles);
 
  267    DirectDicomImportDPLImporter();
 
  268    DirectDicomImportDPLImporter(
const DirectDicomImportDPLImporter&);
 
  269    DirectDicomImportDPLImporter &operator=(
const DirectDicomImportDPLImporter&);
 
  273    void _setUpTagValueProvider(DirectDicomImportDPLTagValueProvider &tagValueProvider);
 
  276    ImageToMultiFileVolumeConversionParameters _getConversionParameters();
 
  279    DirectDicomImportDPLLogger      _dplLogger;
 
  282    FileListTools::DPLConfiguration _configManager;
 
  286    std::string                     _importFilterProcessingSettings;
 
 
Project global and OS specific declarations.
 
#define MLDIRECTDICOMIMPORT_EXPORT
Only for diagnostic purposes.
 
Field to encapsulate a boolean value.
 
Class handling all DICOM Processor Library Import (DPL) stuff for the DirectDicomImport module.
 
void _setImportFilterProcessingSettings(const std::string &procSettings)
Returns the externally provided processing settings for the currently processed volume.
 
virtual bool copyFullFunctionalGroupSequences() const
Returns true if functional group sequences shall fully be copied during enhanced multi-frame decompos...
 
void appendFields(FieldContainer &fieldContainer) override
Appends all parameter fields related to DPL import to fieldContainer.
 
std::vector< DirectDicomImportDPLTagValueProvider::HardOverwriteTag > _getHardOverwriteTags()
Returns a vector of hardOverwrite tags either from input filter settings or from the DPL importer fie...
 
virtual bool decomposeMultiFrames() const
Returns true if (DICOM multi-frame) files shall be decomposed to single frames during imports,...
 
EnumField & getDplSpecialProcessorsFld() const
Provides access to some fields used outside.
 
DirectDicomImportDPLLogger & getDPLLogger()
Returns the used DPL logger instance.
 
std::string _getForce2DPlusTCondition()
Determines the force2DPlusTCondition either from input filters or from DPL fields; it is used by the ...
 
bool _doArgumentAndOverrideCheck(bool dplFlag, const std::string &overrideName) const
If overrideName is defined as 0 or non 0 in getImportFilterProcessingSettings(), then false or true i...
 
DicomToMLTools::CalculateMinMaxFromDicomModes _getUsedMinMaxScanMode()
Returns the used mode for the min/max calculations from input filters and field settings.
 
void handleNotification(Field &field) override
Handles all field changes related to fields created in appendDPLArgumentFields().
 
virtual bool scanRecursively() const
Returns true if settings require a recursive directory scan, otherwise it returns false for a flat sc...
 
DirectDicomImportDPLImporter(DirectDicomImport &ddiOp)
Constructor using a DirectDicomImport instance associated with.
 
~DirectDicomImportDPLImporter() override
Destructor.
 
const std::string & _getImportFilterProcessingSettings() const
Returns the externally provided processing settings for the currently processed volume.
 
Extended DPL logger class redirecting messages from the DPL to a DirectDicomImport instance.
 
Base importer class for the DirectDicomImport module.
 
Imports image files directly from DICOM or other file types without an intermediate representation.
 
Field to encapsulate a double value.
 
Field to encapsulate an enumerated value.
 
Defines the class FieldContainer to encapsulate a vector of fields (see class Field).
 
Base class for all fields used in the ML.
 
Field to encapsulate an integer value.
 
Field to encapsulate a string value.
 
Extended DPL logger class redirecting messages from the DPL to a DirectDicomImport instance.
 
Extended DPL TagValueProvider class for the ML module class DirectDicomImport.
 
Base importer class for the DirectDicomImport module.
 
Parameters used to convert a DPLImage to MultiFileVolumes.
 
Forward and includes of internally used DPL classes.