MeVisLab Toolbox Reference
ml::FileListFilterPlugin Class Reference

A concrete module class for file and DCMTree filtering which can be used by FileList importers to filter, classify and label files. More...

#include <mlFileListFilterPlugin.h>

Inheritance diagram for ml::FileListFilterPlugin:
ml::FileListFilterPluginBase ml::Module ml::FieldContainer ml::Base

Public Types

enum  LabellingEnumModes {
  DoNotChangeLabel = 0 , SetLabelIfExpressionMatches , SetLabelIfExpressionDoesNotMatch , SetLabelIfPassFlagIsTrue ,
  SetLabelIfPassFlagIsFalse , SetLabelIfPassFlagIsSet , SetLabelIfPassFlagIsCleared , SetLabelIfPassFlagIsUnchanged ,
  NumLabellingEnumModes
}
 Enumerator defining how label values are assigned to the file/DCMTree attribute structures. More...
 
enum  ConfigurationAssignmentEnumModes {
  DoNotChangeConfig = 0 , SetConfigIfExpressionMatches , SetConfigIfExpressionDoesNotMatch , SetConfigIfPassFlagIsTrue ,
  SetConfigIfPassFlagIsFalse , SetConfigIfPassFlagIsSet , SetConfigIfPassFlagIsCleared , SetConfigIfPassFlagIsUnchanged ,
  NumConfigurationAssignmentEnumModes
}
 Enumerator defining how configurations are assigned to the file/DCMTree attribute structures. More...
 
enum  ProcessingSettingsAssignmentEnumModes {
  DoNotChangeProcSettings = 0 , SetProcSettingsIfExpressionMatches , SetProcSettingsIfExpressionDoesNotMatch , SetProcSettingsIfPassFlagIsTrue ,
  SetProcSettingsIfPassFlagIsFalse , SetProcSettingsIfPassFlagIsSet , SetProcSettingsIfPassFlagIsCleared , SetProcSettingsIfPassFlagIsUnchanged ,
  NumProcSettingsAssignmentEnumModes
}
 Enumerator defining how processing settings are assigned to the file attribute structures. More...
 
- Public Types inherited from ml::FileListFilterPluginBase
typedef std::map< std::string, FileListTools::FileAttributeFileAttributeMap
 A map type assigning an attribute container to file paths. More...
 
- Public Types inherited from ml::Module
enum  PERMITTED_TYPES {
  ONLY_SCALAR_TYPES , ONLY_DEFAULT_TYPES , ALL_REGISTERED_TYPES , ONLY_STANDARD_TYPES = ONLY_SCALAR_TYPES ,
  FULLY_OPERATIONAL = ONLY_DEFAULT_TYPES , MINIMUM_OPERATIONAL = 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...
 

Public Member Functions

 FileListFilterPlugin (int numIns=0, int numOuts=0)
 Constructor. Input and out images are probably not used. More...
 
 ~FileListFilterPlugin () override
 Destructor. More...
 
virtual void filterFile (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList) const override
 Evaluates the regular expression given by field _pathFilterRegExFld on the filterAttributes.filePath. More...
 
BoolFieldgetClearPassFlagBeforeFilteringFld () const
 Provide programming access to field interface, see corresponding member for documentation. More...
 
StringFieldgetVolumeLabelFld () const
 
StringFieldgetVolumeConfigFld () const
 
StringFieldgetProcessingSettingsFld () const
 
EnumFieldgetLabelAssignModeFld () const
 
EnumFieldgetConfigAssignModeFld () const
 
EnumFieldgetProcessingSettingsAssignModeFld () const
 
BoolFieldgetAllowRecursiveTagSearchFld () const
 
BoolFieldgetApplyFilePathFilterFld () const
 
StringFieldgetPathFilterRegExFld () const
 
BoolFieldgetInvertPathFilterRegExFld () const
 
BoolFieldgetSetPassFlagOnPathMatchesFld () const
 
BoolFieldgetClearPassFlagOnPathMismatchesFld () const
 
StringFieldgetRegExStatusFld () const
 
BoolFieldgetApplyTagStringFilterFld () const
 
StringFieldgetTagStringFilterTagIdFld () const
 
IntFieldgetTagStringFilterTagValueIndexFld () const
 
StringFieldgetTagStringFilterPrivateCreatorFld () const
 
BoolFieldgetCheckOnlyFirstRecursiveTagStringFld () const
 
StringFieldgetTagStringEvalRegExFld () const
 
BoolFieldgetInvertTagStringEvalRegExFld () const
 
BoolFieldgetSetTagStrEvalPassFlagOnPathMatchesFld () const
 
BoolFieldgetClearTagStrEvalPassFlagOnPathMismatchesFld () const
 
StringFieldgetTagFilterRegExStatusFld () const
 
BoolFieldgetApplyTagValueFilterFld () const
 
StringFieldgetTreeFilterExFld () const
 
StringFieldgetTagId0Fld () const
 
StringFieldgetTagId1Fld () const
 
StringFieldgetTagId2Fld () const
 
StringFieldgetTagId3Fld () const
 
IntFieldgetTagId0ValueIndexFld () const
 
IntFieldgetTagId1ValueIndexFld () const
 
IntFieldgetTagId2ValueIndexFld () const
 
IntFieldgetTagId3ValueIndexFld () const
 
StringFieldgetTagId0PrivateCreatorFld () const
 
StringFieldgetTagId1PrivateCreatorFld () const
 
StringFieldgetTagId2PrivateCreatorFld () const
 
StringFieldgetTagId3PrivateCreatorFld () const
 
DoubleFieldgetConst0Fld () const
 
DoubleFieldgetConst1Fld () const
 
DoubleFieldgetConst2Fld () const
 
DoubleFieldgetConst3Fld () const
 
DoubleFieldgetRangeMinFld () const
 
DoubleFieldgetRangeMaxFld () const
 
BoolFieldgetSetPassFlagOnTagValueMatchesFld () const
 
BoolFieldgetClearPassFlagOnTagValueMismatchesFld () const
 
StringFieldgetTreeFilterStatusFld () const
 
- Public Member Functions inherited from ml::FileListFilterPluginBase
 FileListFilterPluginBase (int numIns=0, int numOuts=0)
 Constructor. Input and out images are probably not used. More...
 
virtual const FileListFilterPluginBasegetConnectedInputFilterPlugin () const
 Returns a connected input plugin if there is one; otherwise nullptr is returned. More...
 
virtual void filterFile (FileListTools::FileAttribute &filterAttributes) const
 This virtual function is called by the FileListTools to check whether a file shall be imported. More...
 
virtual void postFilterAll (FileAttributeMap &filterAttributeMap) const
 This virtual function is called by the FileListTools to provide the option of a post classification of all imported files by modifying the filter attributes of the files in the filterAttributeMap. More...
 
virtual void postFilterAll (FileAttributeMap &filterAttributeMap, FilterMessageList *messageList) const
 Alternative version of postFilterAll(FileAttributeMap &filterAttributeMap) which allows passing a list which is filled with messages occurring during the filter process; normally these messages would be posted to the ML error handler and in this way they can be collected silently by the caller. More...
 
BaseFieldgetInputFilterPluginFld () const
 Provide programming access to field interface, see corresponding fields for documentation. More...
 
BaseFieldgetOutputFilterPluginFld () const
 
- Public Member Functions inherited from ml::Module
MLMetaProfilePtrgetMetaProfile () const
 Returns the meta profile for the base operator. More...
 
const char * getTypeNameFast () const
 Macro to declare methods for the ML runtime type system (see mlRuntimeSubClass.h). More...
 
 Module (int numInputImages, int numOutputImages)
 Constructor: Initializes numInputImages input images and numOutputImages output images of the module. More...
 
 ~Module () override
 Destructor: Destroys this module. More...
 
InputConnectorFieldgetInputImageField (MLint i) const
 Returns the field representing input image i. i must be a valid index. More...
 
OutputConnectorFieldgetOutputImageField (MLint i=0) const
 Returns field representing output image i. i must be a valid index. More...
 
MLint getNumInputImages () const
 Returns number of input images of this module. More...
 
MLint getNumOutputImages () const
 Returns number of output images of this module. More...
 
PagedImagegetOutputImage (MLint outputIndex=0) const
 Returns output image outputIndex. The index needs to be in the range [0, getNumOutputImages()-1]. More...
 
InputConnectorFieldaddInputImage (const char *name=nullptr)
 Adds a new input image with name to the module. More...
 
OutputConnectorFieldaddOutputImage (const char *name=nullptr)
 Adds a new output image with name to the module. More...
 
PagedImagegetInputImage (MLint inputIndex, bool getReal=false) const
 Returns the output image of the module connected to input inputIndex. More...
 
PagedImagegetUpdatedInputImage (MLint inputIndex, bool getReal=false) const
 Convenience method for safe access to the input image at index inputIndex. More...
 
MLErrorCode processAllPages (int outputIndex=-1, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
 Processes all pages of a module for easy implementation of page-based image processing of complete images. More...
 
MLErrorCode processAllPages (ProcessAllPagesHandler &handler, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
 Process input images with a ProcessAllPagesHandler handler on a temporary output image (which allocates no data) For details, see processAllPages(-1) above. More...
 
MLErrorCode processMissingPages (int outputIndex=0, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
 Processes all missing pages on the given output image. More...
 
void clearOutputImage (MLint i=0)
 Clear cached output image pages of output image i. More...
 
InputConnectorFieldaddInputConnector (const char *name, Module *module, MLint i) override
 
OutputConnectorFieldaddOutputConnector (const char *name, Module *module, MLint i) override
 
MLint getOutputImageInplace (MLint outputIndex=0) const
 Return optimization flag: Return index of input image whose input tile is used also as output page for output outputIndex in calculateOutputSubImage() (instead of allocating its own memory). More...
 
MLint getBypass (MLint outputIndex=0) const
 Returns the currently bypass index or -1 if bypassing is disabled (default). More...
 
THREAD_SUPPORT getThreadSupport () const
 Returns the multithreading mode supported by this module, default is NO_THREAD_SUPPORT. More...
 
bool areRecursiveHandleNotificationsPermitted () const
 Returns if recursive entries in handleNotification are permitted. More...
 
MLint getHandleNotificationEntryCounter () const
 A counter returning the current number of (recursive re)entries in handleNotification. More...
 
PERMITTED_TYPES getVoxelDataTypeSupport () const
 Returns the current state of supported voxel data types. More...
 
bool isSupportedVoxelDataType (MLDataType dt) const
 Check if a given data type is supported on the module as configured with setVoxelDataTypeSupport. More...
 
virtual INPUT_HANDLE handleInput (int, INPUT_STATE) const
 This method may be reimplemented to enable support for invalid input images on the module. More...
 
INPUT_STATE getInputState (MLint index)
 Returns the current state of the input connection. More...
 
INPUT_STATE getUpdatedInputState (MLint index)
 Returns the updated state of the input image by calling updateImageProperties(index) and returning getInputState(index) afterwards. More...
 
bool isInputImageField (Field *field) const
 Returns if the given field is an input image field. This can be used in handleNotification(), to check if one of the input images has changed. More...
 
void touchOutputImageFields () const
 Touch all output image fields to indicate that the images have changed. More...
 
FieldContainergetFieldContainer ()
 Returns a pointer to the container of all the module's fields. More...
 
const FieldContainergetFieldContainer () const
 Returns a constant pointer to the container of all the module's fields. More...
 
virtual void beginSaveFields ()
 Called before all fields data contents of this modules are saved. More...
 
virtual void endSaveFields ()
 Called after saving all field contents of this module. More...
 
- Public Member Functions inherited from ml::FieldContainer
 FieldContainer ()
 Constructor. More...
 
 ~FieldContainer () override
 Destructor: Deletes all added fields. More...
 
std::string whoAmI (bool withInstanceName=true) const
 Returns type and instance name of format "ClassTypeName(instanceName)" if the instance name is not empty and withInstanceName is true. More...
 
FieldaddField (const char *name, const char *type, const char *value)
 Adds a new field with name name, type type and value value (coded as string) to the container. More...
 
FieldaddField (Field *field)
 Adds a field, the ownership of the field is passed to the FieldContainer. More...
 
BoolFieldaddBool (const char *name)
 Creates a BoolField with name and adds it to the container. Default value is false. More...
 
BoolFieldaddBool (const char *name, bool value)
 Creates a BoolField with name and adds it to the container. More...
 
IntFieldaddInt (const char *name)
 Creates an IntField with name and adds it to the container. Default value is 0. More...
 
IntFieldaddInt (const char *name, MLint value)
 Creates an IntField with name and adds it to the container. More...
 
EnumFieldaddEnum (const char *name, const char *const *enumerationItemNames, MLint numEnumerationItems)
 Creates an EnumField field with name and adds it to the container. More...
 
EnumFieldaddEnum (const char *name, const std::vector< std::string > &enumerationItemNames)
 Creates an EnumField field with name and adds it to the container. More...
 
template<typename EnumType >
TypedEnumField< EnumType > * addEnum (const char *name, const EnumValues< EnumType > &values, EnumType initialValue)
 Creates a TypedEnumField field with name and adds it to the container. More...
 
FloatFieldaddFloat (const char *name)
 Creates a FloatField with name and adds it to the container. Default value is 0.f. More...
 
FloatFieldaddFloat (const char *name, float value)
 Creates a FloatField with name and adds it to the container. More...
 
ProgressFieldaddProgress (const char *name)
 Creates a float ProgressField with name and adds it to the container. Default value is 0.f. More...
 
ProgressFieldaddProgress (const char *name, float value)
 Creates a float ProgressField with name and adds it to the container. More...
 
DoubleFieldaddDouble (const char *name)
 Creates a DoubleField with name and adds it to the container. Default value is 0. More...
 
DoubleFieldaddDouble (const char *name, double value)
 Creates a DoubleField with name and adds it to the container. More...
 
StringFieldaddString (const char *name)
 Creates a StringField with name and adds it to the container. Default value is empty string. More...
 
StringFieldaddString (const char *name, const std::string &value)
 Creates a StringField with name and adds it to the container. More...
 
NotifyFieldaddNotify (const char *name)
 Creates a NotifyField field with name and adds it to the container. More...
 
TriggerFieldaddTrigger (const char *name)
 Creates a TriggerField field with name and adds it to the container. More...
 
BaseFieldaddBase (const char *name)
 Creates a Base field with name and adds it to the container. Default value is NULL. More...
 
BaseFieldaddBase (const char *name, Base *value)
 Creates a Base field with name and adds it to the container. More...
 
BaseFieldaddBase (const char *name, const RefCountedBasePtr &value)
 Creates a Base field with name and adds it to the container. Sets the value from intrusive pointer. More...
 
template<typename T >
BaseFieldaddBaseWithAllowedType (const char *name, T *value=nullptr)
 As above, but also sets the allowed type of the field. More...
 
template<typename T >
BaseFieldaddBaseWithAllowedType (const char *name, const ::boost::intrusive_ptr< T > &value)
 As above, but also sets the allowed type of the field. More...
 
template<typename T >
TypedBaseField< T > * addTypedBase (const char *name)
 Creates a TypedBaseField with name and adds it to the container. Default value is NULL. More...
 
template<typename T >
TypedBaseField< T > * addTypedBase (const char *name, T *value)
 Creates a TypedBaseField with name and adds it to the container. More...
 
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. More...
 
SoNodeFieldaddSoNode (const char *name)
 Creates a SoNodeField with name and adds it to the container. Default value is NULL. More...
 
SoNodeFieldaddSoNode (const char *name, SoNode *value)
 Creates a SoNodeField with name and adds it to the container. More...
 
PointerFieldaddPointer (const char *name)
 Creates a PointerField with name and adds it to the container. More...
 
Vector2FieldaddVector2 (const char *name)
 Creates a Vector2Field with name and adds it to the container. More...
 
Vector2FieldaddVector2 (const char *name, const Vector2 &value)
 Creates a Vector2Field with name and adds it to the container. More...
 
Vector2FieldaddVector2 (const char *name, double x, double y)
 Creates a Vector2Field with name and adds it to the container. More...
 
Vector3FieldaddVector3 (const char *name)
 Creates a Vector3Field with name and adds it to the container. More...
 
Vector3FieldaddVector3 (const char *name, const Vector3 &value)
 Creates a Vector3Field with name and adds it to the container. More...
 
Vector3FieldaddVector3 (const char *name, double x, double y, double z)
 Creates a Vector3Field with name and adds it to the container. More...
 
Vector4FieldaddVector4 (const char *name)
 Creates a Vector4Field with name and adds it to the container. More...
 
Vector4FieldaddVector4 (const char *name, const Vector4 &value)
 Creates a Vector4Field with name and adds it to the container. More...
 
Vector4FieldaddVector4 (const char *name, double x, double y, double z, double w)
 Creates a Vector4Field with name and adds it to the container. More...
 
Vector5FieldaddVector5 (const char *name)
 Creates a Vector5Field with name and adds it to the container. More...
 
Vector5FieldaddVector5 (const char *name, const Vector5 &value)
 Creates a Vector5Field with name and adds it to the container. More...
 
Vector6FieldaddVector6 (const char *name)
 Creates a Vector6Field with name and adds it to the container. More...
 
Vector6FieldaddVector6 (const char *name, const Vector6 &value)
 Creates a Vector6Field with name and adds it to the container. More...
 
Vector10FieldaddVector10 (const char *name)
 Creates a Vector10Field with name and adds it to the container. More...
 
Vector10FieldaddVector10 (const char *name, const Vector10 &value)
 Creates a Vector10Field with name and adds it to the container. More...
 
ImageVectorFieldaddImageVector (const char *name)
 Creates a ImageVectorField with name and adds it to the container. More...
 
ImageVectorFieldaddImageVector (const char *name, const ImageVector &value)
 Creates a ImageVectorField with name and adds it to the container. More...
 
ImageVectorFieldaddImageVector (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. More...
 
SubImageBoxFieldaddSubImageBox (const char *name)
 Creates a SubImageBoxField with name and adds it to the container. More...
 
SubImageBoxFieldaddSubImageBox (const char *name, const SubImageBox &value)
 Creates a SubImageBoxField with name and adds it to the container. More...
 
SubImageBoxdFieldaddSubImageBoxd (const char *name)
 Creates a SubImageBoxd field with name and adds it to the container. More...
 
SubImageBoxdFieldaddSubImageBoxd (const char *name, const SubImageBoxd &value)
 Creates a SubImageBoxd field with name and adds it to the container. More...
 
ColorFieldaddColor (const char *name)
 Creates a ColorField with name and adds it to the container. More...
 
ColorFieldaddColor (const char *name, float r, float g, float b)
 Creates a ColorField with name and adds it to the container. More...
 
ColorFieldaddColor (const char *name, const Vector3 &value)
 Creates a ColorField with name and adds it to the container. More...
 
PlaneFieldaddPlane (const char *name)
 Creates a PlaneField with name and adds it to the container. More...
 
PlaneFieldaddPlane (const char *name, double f0, double f1, double f2, double f3)
 Creates a PlaneField with name and adds it to the container. More...
 
PlaneFieldaddPlane (const char *name, const Plane &value)
 Creates a PlaneField with name and adds it to the container. More...
 
RotationFieldaddRotation (const char *name)
 Creates a RotationField with name and adds it to the container. More...
 
RotationFieldaddRotation (const char *name, const Rotation &value)
 Creates a RotationField with name and adds it to the container. More...
 
Matrix2FieldaddMatrix2 (const char *name)
 Creates a Matrix2Field with name and adds it to the container. More...
 
Matrix2FieldaddMatrix2 (const char *name, const Matrix2 &value)
 Creates a Matrix2Field with name and adds it to the container. More...
 
Matrix3FieldaddMatrix3 (const char *name)
 Creates a Matrix3Field with name and adds it to the container. More...
 
Matrix3FieldaddMatrix3 (const char *name, const Matrix3 &value)
 Creates a Matrix3Field with name and adds it to the container. More...
 
Matrix4FieldaddMatrix4 (const char *name)
 Creates a Matrix4Field with name and adds it to the container. More...
 
Matrix4FieldaddMatrix4 (const char *name, const Matrix4 &value)
 Creates a Matrix4Field with name and adds it to the container. More...
 
Matrix5FieldaddMatrix5 (const char *name)
 Creates a Matrix5Field with name and adds it to the container. More...
 
Matrix5FieldaddMatrix5 (const char *name, const Matrix5 &value)
 Creates a Matrix5Field with name and adds it to the container. More...
 
Matrix6FieldaddMatrix6 (const char *name)
 Creates a Matrix6Field with name and adds it to the container. More...
 
Matrix6FieldaddMatrix6 (const char *name, const Matrix6 &value)
 Creates a Matrix6Field with name and adds it to the container. More...
 
MatrixFieldaddMatrix (const char *name)
 Creates a MatrixField with name and adds it to the container. More...
 
MatrixFieldaddMatrix (const char *name, const Matrix4 &value)
 Creates a MatrixField with name and adds it to the container. More...
 
MLDataTypeFieldaddMLDataType (const char *name)
 Creates a MTDataTypeField with name and adds it to the container. More...
 
MLDataTypeFieldaddMLDataType (const char *name, MLDataType value)
 Creates a MTDataTypeField with name and adds it to the container. More...
 
UniversalTypeFieldaddUniversalType (const char *name)
 Creates an UniversalTypeField field with name and adds it to the container. More...
 
IntListFieldaddIntList (const char *name)
 Creates an IntListField field with name and empty list value and adds it to the container. More...
 
IntListFieldaddIntList (const char *name, const std::vector< MLint > &value)
 Creates an IntListField field with name and given list value and adds it to the container. More...
 
DoubleListFieldaddDoubleList (const char *name)
 Creates an DoubleListField field with name and empty list value and adds it to the container. More...
 
DoubleListFieldaddDoubleList (const char *name, const std::vector< double > &value)
 Creates an DoubleListField field with name and given list value and adds it to the container. More...
 
Vector2ListFieldaddVector2List (const char *name)
 Creates an Vector2ListField field with name and empty list value and adds it to the container. More...
 
Vector2ListFieldaddVector2List (const char *name, const std::vector< Vector2 > &value)
 Creates an Vector2ListField field with name and given list value and adds it to the container. More...
 
Vector3ListFieldaddVector3List (const char *name)
 Creates an Vector3ListField field with name and empty list value and adds it to the container. More...
 
Vector3ListFieldaddVector3List (const char *name, const std::vector< Vector3 > &value)
 Creates an Vector3ListField field with name and given list value and adds it to the container. More...
 
Vector4ListFieldaddVector4List (const char *name)
 Creates an Vector4ListField field with name and empty list value and adds it to the container. More...
 
Vector4ListFieldaddVector4List (const char *name, const std::vector< Vector4 > &value)
 Creates an Vector4ListField field with name and given list value and adds it to the container. More...
 
size_t getNumFields () const
 Returns the number of added fields. More...
 
bool hasField (const std::string &name) const
 Returns true if the field with name name exists; otherwise false is returned. More...
 
FieldgetField (const std::string &name) const
 Returns the pointer to the field with name name. More...
 
FieldgetField (MLint index) const
 Returns pointer of field at index if it exists. If not, -1 is returned. More...
 
MLint getFieldIndex (Field *field) const
 Returns index of field if it exists. If not, -1 is returned. More...
 
void setFieldStringValue (const std::string &name, const std::string &value)
 Sets the value of the field with name if it exists. More...
 
std::string getFieldStringValue (const std::string &name) const
 Returns the string value of the field with name if it is found. More...
 
virtual void deactivateAttachments ()
 Disables notification handling, i.e., all fields of this module will not send notifications to attached sensors and fields any more if their values are set or changed. More...
 
- Public Member Functions inherited from ml::Base
 Base ()
 Constructor. More...
 
virtual ~Base ()
 Destructor. More...
 
virtual BasedeepCopy () const
 Set addStateToTree version number that can be accessed via getAddStateVersion() More...
 
bool isOfAllowedType (const std::vector< const RuntimeType * > &types) const
 Check if this object's type is equal to or derived from one of the types given in the argument. More...
 
virtual bool isRefCountedBase () const
 Returns if the instance is derived from RefCountedBase. More...
 
virtual std::string detailString () const
 Return a string describing this object. More...
 
virtual bool implementsPersistence (PersistenceInterface) const
 Override this method to declare which persistence interfaces are implemented by your derived class. More...
 
virtual std::string persistentState () const
 Returns a string describing the object's internal state. More...
 
virtual void setPersistentState (const std::string &state)
 Restores the object's internal state from a string that had been previously generated using persistentState(). More...
 
virtual void addStateToTree (TreeNode *) const
 Attaches the object state as children of the given parent node. More...
 
virtual void readStateFromTree (TreeNode *)
 Reads the object state from the children of the given parent node. More...
 
virtual void writeTo (AbstractPersistenceOutputStream *) const
 Write the objects state to the data stream object. More...
 
virtual void readFrom (AbstractPersistenceInputStream *, int)
 Read the objects state from the data stream object. More...
 

Static Public Attributes

static const char *const LabellingEnumStrings [NumLabellingEnumModes]
 Strings according to LabellingEnumModes. More...
 
static const char *const ConfigurationAssignmentEnumStrings [NumConfigurationAssignmentEnumModes]
 Strings according to ConfigurationAssignmentEnumModes. More...
 
static const char *const ProcessingSettingsAssignmentEnumStrings [NumProcSettingsAssignmentEnumModes]
 Strings according to ProcessingSettingsAssignmentEnumModes. More...
 

Protected Member Functions

void activateAttachments () override
 Update internal state after field reload or clone.. More...
 
void handleNotification (Field *field) override
 Handle field changes of the field field, typically of the input field where changes are passes as notification to the _outputFilterPluginFld. More...
 
virtual bool _handleNotificationForPathStringFiltering (Field *field)
 Do the notification handling for path string filtering, return true if output notification is needed. More...
 
virtual void _applyFilePathFiltering (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList, bool &wasDisabled, bool &wasEnabled, bool &expMatches) const
 Applies path filtering. More...
 
virtual bool _handleNotificationForTagStringFiltering (Field *field)
 Do the notification handling for tag string filtering, return true if output notification is needed. More...
 
virtual void _applyTagStringFiltering (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList, bool &wasDisabled, bool &wasEnabled, bool &expMatches, DCMTree::Const_TreePtr &dcmTree) const
 Applies filtering of tag values as strings. More...
 
void _updateFlagsAccordingToTagStringValues (const std::vector< std::string > &tagStringValues, bool &passFlag, bool &wasDisabled, bool &wasEnabled, bool &expMatches) const
 Apply tag string expression on all values in tagStringValues and update the flags. More...
 
virtual bool _handleNotificationForTagValueFiltering (Field *field)
 Do the notification handling for tag value filtering, return true if output notification is needed. More...
 
virtual void _applyTagValueFiltering (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList, bool &wasDisabled, bool &wasEnabled, bool &expMatches, DCMTree::Const_TreePtr dcmTree) const
 Applies filtering of tag values as numeric values. More...
 
virtual void _applyLabelling (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList, bool &wasDisabled, bool &wasEnabled, bool &expMatches) const
 Sets volume label if parameters and filter results require that. More...
 
virtual void _applyConfigAssignment (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList, bool &wasDisabled, bool &wasEnabled, bool &expMatches) const
 Sets volume configuration if parameters and filter results require that. More...
 
virtual void _applyProcessingSettingsAssignment (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList, bool &wasDisabled, bool &wasEnabled, bool &expMatches) const
 Sets processing settings if parameters and filter results require that. More...
 
DCMTree::Const_TagPtr _searchOneOrMultipleTags (DCMTree::Const_TreePtr dcmTree, DCMTree::RawTagId rawTagId, std::vector< DCMTree::Const_TagPtr > *foundTags) const
 Dependent on _allowRecursiveTagSearchFld and _checkOnlyFirstRecursiveTagStringFld one or multiple tags with id rawTagId are searched in dcmTree, if possible the first one is returned as return values, foundTags are filled with all found values if passed non-nullptr. More...
 
DCMTree::Const_TagPtr _getNormalOrPrivateTag (DCMTree::Const_TreePtr dcmTree, DCMTree::RawTagId rawTagId, const std::string &privateCreatorStr, std::vector< DCMTree::Const_TagPtr > *foundTags=nullptr) const
 Function to get as many normal or private tag values from the given DCIOM tree dependent on whether tagId has an even (normal) or an odd (private) group id and whether tags shall be searched recursively or not and whether only the first recursively found tag shall be used or all. More...
 
void _getTagStringValues (DCMTree::Const_TreePtr dcmTree, std::vector< std::string > &foundValues) const
 Retrieves as many string values from dcmTree as possible and specified by _allowRecursiveTagSearchFld and _checkOnlyFirstRecursiveStringTagFld and returns them in foundValues. More...
 
double _getTagValueForTagValueFilter (DCMTree::Const_TreePtr dcmTree, MLint tagValueFilterId, const std::string &privateCreatorString, MLint valueIndex) const
 Read tag tagValueFilterId from dcmTree, take its double value and return it. More...
 
- Protected Member Functions inherited from ml::FileListFilterPluginBase
void handleNotification (Field *field) override
 Handle field changes of the field field, typically of the input field where changes are passes as notification to the _outputFilterPluginFld. More...
 
virtual BaseField_getInputFilterPluginFld ()
 Return a reference to the _inputFilterPluginFld. More...
 
virtual BaseField_getOutputFilterPluginFld ()
 Return a reference to the _outputFilterPluginFld. More...
 
virtual void _touchOutputFilterPluginFld ()
 Convenience method to touch the output fields. More...
 
virtual void _callInputFileFilter (FileListTools::FileAttribute &filterAttributes, FilterMessageList *messageList=nullptr) const
 Calls filterFile-functionality of connected plugins and is already called by the base class implementation of filterFile(). More...
 
virtual void _callInputPostFilter (FileAttributeMap &filterAttributeMap, FilterMessageList *messageList=nullptr) const
 Calls postFilterAll-functionality of connected plugins and is already called by the base class implementation of postFilterAll(). More...
 
- Protected Member Functions inherited from ml::Module
void handleNotificationInternal (Field *field, FieldSensor::Strength strength) override
 Called from FieldContainer whenever a field changes. More...
 
virtual void provideCustomPage (int, const SubImageBox &, MLMemoryBlockHandle &)
 This method allows a Module to provide its own pages to the Host for the outputIndex output image. More...
 
void handleNotificationOff ()
 Decreases lock counter for handleNotification calls. More...
 
void handleNotificationOn ()
 Increases lock counter for handleNotification calls. More...
 
bool isHandleNotificationOn ()
 Returns true if handleNotification calls are permitted, otherwise false. More...
 
void setOutputImageInplace (MLint outputIndex=0, MLint inputIndex=0)
 Set optimization flag: If calculating a page in calculateOutputSubImage(), the output image page of output outputIndex shall use the same memory as the input page of input inputIndex. More...
 
void unsetOutputImageInplace (MLint outputIndex=0)
 Clear optimization flag: output page of output at outputIndex and input tile shall use different memory buffers in calculateOutputSubImage(). More...
 
void setBypass (MLint outputIndex=0, MLint inputIndex=0)
 Sets the input image whose pages can also be used instead of output pages for the output image at outputIndex to avoid recalculations. More...
 
void setClampPagesToImageExtent (bool flag=true)
 Enables/disables page clamping on all output images. More...
 
void setThreadSupport (THREAD_SUPPORT supportMode)
 Pass any THREAD_SUPPORT supportMode to decide whether and what type of multithreading is supported by this module. More...
 
void permitRecursiveHandleNotifications (bool enable)
 If this flag is set to enable =true, recursive entries in handleNotification are permitted. More...
 
void setVoxelDataTypeSupport (PERMITTED_TYPES permTypes)
 Specifies which types this module supports. More...
 
virtual CalculateOutputImageHandlercreateCalculateOutputImageHandler (PagedImage *outputImage)
 Creates the CalculateOutputImageHandler for the given output image outputImage. More...
 
virtual void calculateOutputImageProperties (int outputIndex, PagedImage *)
 Set properties of output image outputImage with output index outputIndex. More...
 
virtual SubImageBox calculateInputSubImageBox (int, const SubImageBox &outputSubImageBox, int)
 Called by the Host to determine which input image region (tile) of input inputIndex is required to calculate a certain output image region (page) of output outputIndex. More...
 
virtual void calculateOutputSubImage (SubImage *outputSubImage, int outputIndex, SubImage *inputSubImages)
 Calculate page outputSubImage of output image with index outputIndex given the input image tiles in array inputSubImages. More...
 
- Protected Member Functions inherited from ml::Base
virtual char * getPersistentState () const
 Returns a C string describing the object's internal state. More...
 
virtual void setPersistentState (const char *)
 Restores the object's internal state from a string that had been previously generated using getPersistentState(). More...
 
virtual void clearPersistentState (char *) const
 Disposes a string previously allocated by getPersistentState(). More...
 

Additional Inherited Members

- 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)
 For documentation see Host::getTile() function with same signature. More...
 
static MLErrorCode getTile (PagedImage *image, SubImage &subimg, const ScaleShiftData &scaleShiftData=ScaleShiftData(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr)
 For documentation see Host::getTile() function with same signature and Module passed as reference. More...
 
static MLErrorCode updateImageProperties (PagedImage *image)
 For documentation see Host::updateImageProperties() function with same signature. More...
 
static void freeTile (void *data)
 For documentation see Host::freeTile(). More...
 
static void updateProgress (const char *info1, const char *info2)
 For documentation see Host::updateProgress(). More...
 
static bool shouldTerminate ()
 For documentation see Host::shouldTerminate(). More...
 
static FieldgetPressedNotifyField ()
 For documentation see Host::getPressedNotifyField(). More...
 
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))
 Adapt page size. More...
 
static std::string getVoxelValueAsString (PagedImage *image, const ImageVector &position, MLErrorCode *errorCode=nullptr, const std::string &errorResult="")
 Returns the voxel value at position position of the image image. More...
 
static size_t getNumModules ()
 Returns number of instantiated modules. More...
 
static ModulegetModule (size_t index)
 Returns pointer to instantiated module index. More...
 
static MLint findModuleIndex (Module &module)
 Returns index of Module module. If not found -1 is returned. More...
 
static void destroyModule ()
 Destroys static allocated tables to avoid memory leaks. More...
 
- 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_CALCULATEOUTPUTSUBIMAGE_ON_STD_TYPES = PagedImage::MULTITHREADED ,
  ML_CALCULATEOUTPUTSUBIMAGE_ON_ALL_TYPES = PagedImage::MULTITHREADED
}
 Enumerator deciding whether and which type of multithreading is supported by this module. More...
 

Detailed Description

A concrete module class for file and DCMTree filtering which can be used by FileList importers to filter, classify and label files.

Definition at line 34 of file mlFileListFilterPlugin.h.

Member Enumeration Documentation

◆ ConfigurationAssignmentEnumModes

Enumerator defining how configurations are assigned to the file/DCMTree attribute structures.

Enumerator
DoNotChangeConfig 

Configuration selection of attributes is not changed at all.

SetConfigIfExpressionMatches 

The configuration is assigned if any expression matches.

SetConfigIfExpressionDoesNotMatch 

The configuration is assigned if any expression matches.

SetConfigIfPassFlagIsTrue 

The configuration is assigned if after filtering the pass flag is true or if it was already true before.

SetConfigIfPassFlagIsFalse 

The configuration is assigned if after filtering the pass flag is false or if it was false before.

SetConfigIfPassFlagIsSet 

The configuration is assigned if the pass flag is set to true (independent of its previous state).

SetConfigIfPassFlagIsCleared 

The configuration is assigned if the pass flag is set to false (independent of its previous state).

SetConfigIfPassFlagIsUnchanged 

The configuration is assigned if the pass flag is neither set nor cleared by the filter.

NumConfigurationAssignmentEnumModes 

Number of available modes, not to be used as mode.

Definition at line 53 of file mlFileListFilterPlugin.h.

◆ LabellingEnumModes

Enumerator defining how label values are assigned to the file/DCMTree attribute structures.

Enumerator
DoNotChangeLabel 

Label of attributes are not changed at all.

SetLabelIfExpressionMatches 

The label is assigned if any expression matches.

SetLabelIfExpressionDoesNotMatch 

The label is assigned if any expression matches.

SetLabelIfPassFlagIsTrue 

The label is assigned if after filtering the pass flag is true or if it was already true before.

SetLabelIfPassFlagIsFalse 

The label is assigned if after filtering the pass flag is false or if it was false before.

SetLabelIfPassFlagIsSet 

The label is assigned if the pass flag is set to true (independent of its previous state).

SetLabelIfPassFlagIsCleared 

The label is assigned if the pass flag is set to false (independent of its previous state).

SetLabelIfPassFlagIsUnchanged 

The label is assigned if the pass flag is neither set nor cleared by the filter.

NumLabellingEnumModes 

Number of available modes, not to be used as mode.

Definition at line 39 of file mlFileListFilterPlugin.h.

◆ ProcessingSettingsAssignmentEnumModes

Enumerator defining how processing settings are assigned to the file attribute structures.

Enumerator
DoNotChangeProcSettings 

Processing settings of attributes is not changed at all.

SetProcSettingsIfExpressionMatches 

The processing settings are assigned if any expression matches.

SetProcSettingsIfExpressionDoesNotMatch 

The processing settings are assigned if any expression matches.

SetProcSettingsIfPassFlagIsTrue 

The processing settings are assigned if after filtering the pass flag is true or if it was already true before.

SetProcSettingsIfPassFlagIsFalse 

The processing settings are assigned if after filtering the pass flag is false or if it was false before.

SetProcSettingsIfPassFlagIsSet 

The processing settings are assigned if the pass flag is set to true (independent of its previous state).

SetProcSettingsIfPassFlagIsCleared 

The processing settings are assigned if the pass flag is set to false (independent of its previous state).

SetProcSettingsIfPassFlagIsUnchanged 

The processing settings are assigned if the pass flag is neither set nor cleared by the filter.

NumProcSettingsAssignmentEnumModes 

Number of available modes, not to be used as mode.

Definition at line 67 of file mlFileListFilterPlugin.h.

Constructor & Destructor Documentation

◆ FileListFilterPlugin()

ml::FileListFilterPlugin::FileListFilterPlugin ( int  numIns = 0,
int  numOuts = 0 
)

Constructor. Input and out images are probably not used.

◆ ~FileListFilterPlugin()

ml::FileListFilterPlugin::~FileListFilterPlugin ( )
override

Destructor.

Member Function Documentation

◆ _applyConfigAssignment()

virtual void ml::FileListFilterPlugin::_applyConfigAssignment ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches 
) const
protectedvirtual

Sets volume configuration if parameters and filter results require that.

It is denoted by wasDisabled if pass flag was overwritten with false, by wasEnabled if pass flag was overwritten with true, and by sets expMatches if the expression was evaluated and matches. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

◆ _applyFilePathFiltering()

virtual void ml::FileListFilterPlugin::_applyFilePathFiltering ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches 
) const
protectedvirtual

Applies path filtering.

Sets wasDisabled if pass flag was overwritten with false, sets wasEnabled if pass flag was overwritten with true, and sets expMatches if the expression was evaluated and matches. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

◆ _applyLabelling()

virtual void ml::FileListFilterPlugin::_applyLabelling ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches 
) const
protectedvirtual

Sets volume label if parameters and filter results require that.

It is denoted by wasDisabled if pass flag was overwritten with false, by wasEnabled if pass flag was overwritten with true, and by sets expMatches if the expression was evaluated and matches. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

◆ _applyProcessingSettingsAssignment()

virtual void ml::FileListFilterPlugin::_applyProcessingSettingsAssignment ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches 
) const
protectedvirtual

Sets processing settings if parameters and filter results require that.

It is denoted by wasDisabled if pass flag was overwritten with false, by wasEnabled if pass flag was overwritten with true, and by sets expMatches if the expression was evaluated and matches. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

◆ _applyTagStringFiltering()

virtual void ml::FileListFilterPlugin::_applyTagStringFiltering ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches,
DCMTree::Const_TreePtr dcmTree 
) const
protectedvirtual

Applies filtering of tag values as strings.

Sets wasDisabled if pass flag was overwritten with false, sets wasEnabled if pass flag was overwritten with true, and sets expMatches if the expression was evaluated and matches. If DICOM tree accesses took place then the tree is also returned in dcmTree and can be reused to reduce tree load operations. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

◆ _applyTagValueFiltering()

virtual void ml::FileListFilterPlugin::_applyTagValueFiltering ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches,
DCMTree::Const_TreePtr  dcmTree 
) const
protectedvirtual

Applies filtering of tag values as numeric values.

Sets wasDisabled if pass flag was overwritten with false, sets wasEnabled if pass flag was overwritten with true, and sets expMatches if the expression was evaluated and matches. If DCMTree is passed then it should be the DICOM tree already loaded by _applyTagStringFiltering which can be reused to avoid that reloading costs performance. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

◆ _getNormalOrPrivateTag()

DCMTree::Const_TagPtr ml::FileListFilterPlugin::_getNormalOrPrivateTag ( DCMTree::Const_TreePtr  dcmTree,
DCMTree::RawTagId  rawTagId,
const std::string &  privateCreatorStr,
std::vector< DCMTree::Const_TagPtr > *  foundTags = nullptr 
) const
protected

Function to get as many normal or private tag values from the given DCIOM tree dependent on whether tagId has an even (normal) or an odd (private) group id and whether tags shall be searched recursively or not and whether only the first recursively found tag shall be used or all.

If necessary the higher byte (bits 8-15) of the private element tag id is replaced by the correct private slot determined from privateCreatorStr.

Parameters
dcmTreeThe DICOM tree the tag is read from.
rawTagIdThe id of the tag which shall be retrieved; on private tag ids (if the group id is odd) the highest byte of the element id is ignored and replaced by the private slot determined from privateCreatorStr.
privateCreatorStrUsed only if the rawTagId has an odd group id, otherwise ignored. On an odd group id in rawTagId the private slot for the rawTagIs is determined from privateCreatorStr and used to replace the value in bits 8-15 in rawTagId.
foundTagsIgnored if nullptr, otherwise all found tags found in the tree are returned in *foundTags which is resized appropriately. The maximum number of searched tags depend on whether the tag is searched recursively and whether only the first or all found tags shall be used.
Returns
If the actual tag id can be determined successfully from rawTagId and privateCreatorStr as described above then the pointer to the corresponding tag is returned. In case of multiply found tags the first one is returned. Otherwise or if the tag or dcmTree does not exist nullptr is returned.

◆ _getTagStringValues()

void ml::FileListFilterPlugin::_getTagStringValues ( DCMTree::Const_TreePtr  dcmTree,
std::vector< std::string > &  foundValues 
) const
protected

Retrieves as many string values from dcmTree as possible and specified by _allowRecursiveTagSearchFld and _checkOnlyFirstRecursiveStringTagFld and returns them in foundValues.

◆ _getTagValueForTagValueFilter()

double ml::FileListFilterPlugin::_getTagValueForTagValueFilter ( DCMTree::Const_TreePtr  dcmTree,
MLint  tagValueFilterId,
const std::string &  privateCreatorString,
MLint  valueIndex 
) const
protected

Read tag tagValueFilterId from dcmTree, take its double value and return it.

Parameters
dcmTreeThe DICOM tree the tag is read from.
tagValueFilterIdThe id of the tag which shall be retrieved; on private tag ids (if the group id is odd) the highest byte of the element id is ignored and replaced by the private slot determined from privateCreatorStr.
privateCreatorStringUsed only if the rawTagId has an odd group id, otherwise ignored. On an odd group id in rawTagId the private slot for the rawTagIs is determined from privateCreatorStr and used to replace the value in bits 8-15 in rawTagId.
valueIndexthe first value is returned if smaller or equal 0, otherwise the valueIndex's value if it exist; if it does not exist always 0 is returned.

◆ _handleNotificationForPathStringFiltering()

virtual bool ml::FileListFilterPlugin::_handleNotificationForPathStringFiltering ( Field field)
protectedvirtual

Do the notification handling for path string filtering, return true if output notification is needed.

◆ _handleNotificationForTagStringFiltering()

virtual bool ml::FileListFilterPlugin::_handleNotificationForTagStringFiltering ( Field field)
protectedvirtual

Do the notification handling for tag string filtering, return true if output notification is needed.

◆ _handleNotificationForTagValueFiltering()

virtual bool ml::FileListFilterPlugin::_handleNotificationForTagValueFiltering ( Field field)
protectedvirtual

Do the notification handling for tag value filtering, return true if output notification is needed.

◆ _searchOneOrMultipleTags()

DCMTree::Const_TagPtr ml::FileListFilterPlugin::_searchOneOrMultipleTags ( DCMTree::Const_TreePtr  dcmTree,
DCMTree::RawTagId  rawTagId,
std::vector< DCMTree::Const_TagPtr > *  foundTags 
) const
protected

Dependent on _allowRecursiveTagSearchFld and _checkOnlyFirstRecursiveTagStringFld one or multiple tags with id rawTagId are searched in dcmTree, if possible the first one is returned as return values, foundTags are filled with all found values if passed non-nullptr.

Parameters
dcmTreeThe tree in which the tags shall be searched.
rawTagIdThe id of the tag(s) to be searched.
foundTagsIgnored if nullptr, otherwise resized to number of found tags and filled with the tag pointers.

◆ _updateFlagsAccordingToTagStringValues()

void ml::FileListFilterPlugin::_updateFlagsAccordingToTagStringValues ( const std::vector< std::string > &  tagStringValues,
bool &  passFlag,
bool &  wasDisabled,
bool &  wasEnabled,
bool &  expMatches 
) const
protected

Apply tag string expression on all values in tagStringValues and update the flags.

Parameters
tagStringValuesThe string values on which the expression shall be applied.
passFlagThe pass flag which may be reset or cleared depending of expression results and field configuration.
wasDisabledThe flag which may be set if all expression evaluation mismatched and _clearTagStrEvalPassFlagOnPathMismatchesFld is on.
wasEnabledThe flag which may be set if at least on expression evaluation matched and _setTagStrEvalPassFlagOnPathMatchesFld is on.
expMatchesThe flag which may be set if at least on expression evaluation matched.

◆ activateAttachments()

void ml::FileListFilterPlugin::activateAttachments ( )
overrideprotectedvirtual

Update internal state after field reload or clone..

Reimplemented from ml::FieldContainer.

◆ filterFile()

virtual void ml::FileListFilterPlugin::filterFile ( FileListTools::FileAttribute filterAttributes,
FilterMessageList messageList 
) const
overridevirtual

Evaluates the regular expression given by field _pathFilterRegExFld on the filterAttributes.filePath.

On matches filterAttributes.pass is left unchanged, otherwise it is set to false. Then it calls connected plugins is there are any. If messageList is passed nullptr then messages are posted to the ML error handler, otherwise they are appended to message list.

Reimplemented from ml::FileListFilterPluginBase.

◆ getAllowRecursiveTagSearchFld()

BoolField& ml::FileListFilterPlugin::getAllowRecursiveTagSearchFld ( ) const
inline

Definition at line 112 of file mlFileListFilterPlugin.h.

◆ getApplyFilePathFilterFld()

BoolField& ml::FileListFilterPlugin::getApplyFilePathFilterFld ( ) const
inline

Definition at line 113 of file mlFileListFilterPlugin.h.

◆ getApplyTagStringFilterFld()

BoolField& ml::FileListFilterPlugin::getApplyTagStringFilterFld ( ) const
inline

Definition at line 119 of file mlFileListFilterPlugin.h.

◆ getApplyTagValueFilterFld()

BoolField& ml::FileListFilterPlugin::getApplyTagValueFilterFld ( ) const
inline

Definition at line 129 of file mlFileListFilterPlugin.h.

◆ getCheckOnlyFirstRecursiveTagStringFld()

BoolField& ml::FileListFilterPlugin::getCheckOnlyFirstRecursiveTagStringFld ( ) const
inline

Definition at line 123 of file mlFileListFilterPlugin.h.

◆ getClearPassFlagBeforeFilteringFld()

BoolField& ml::FileListFilterPlugin::getClearPassFlagBeforeFilteringFld ( ) const
inline

Provide programming access to field interface, see corresponding member for documentation.

Definition at line 105 of file mlFileListFilterPlugin.h.

◆ getClearPassFlagOnPathMismatchesFld()

BoolField& ml::FileListFilterPlugin::getClearPassFlagOnPathMismatchesFld ( ) const
inline

Definition at line 117 of file mlFileListFilterPlugin.h.

◆ getClearPassFlagOnTagValueMismatchesFld()

BoolField& ml::FileListFilterPlugin::getClearPassFlagOnTagValueMismatchesFld ( ) const
inline

Definition at line 150 of file mlFileListFilterPlugin.h.

◆ getClearTagStrEvalPassFlagOnPathMismatchesFld()

BoolField& ml::FileListFilterPlugin::getClearTagStrEvalPassFlagOnPathMismatchesFld ( ) const
inline

Definition at line 127 of file mlFileListFilterPlugin.h.

◆ getConfigAssignModeFld()

EnumField& ml::FileListFilterPlugin::getConfigAssignModeFld ( ) const
inline

Definition at line 110 of file mlFileListFilterPlugin.h.

◆ getConst0Fld()

DoubleField& ml::FileListFilterPlugin::getConst0Fld ( ) const
inline

Definition at line 143 of file mlFileListFilterPlugin.h.

◆ getConst1Fld()

DoubleField& ml::FileListFilterPlugin::getConst1Fld ( ) const
inline

Definition at line 144 of file mlFileListFilterPlugin.h.

◆ getConst2Fld()

DoubleField& ml::FileListFilterPlugin::getConst2Fld ( ) const
inline

Definition at line 145 of file mlFileListFilterPlugin.h.

◆ getConst3Fld()

DoubleField& ml::FileListFilterPlugin::getConst3Fld ( ) const
inline

Definition at line 146 of file mlFileListFilterPlugin.h.

◆ getInvertPathFilterRegExFld()

BoolField& ml::FileListFilterPlugin::getInvertPathFilterRegExFld ( ) const
inline

Definition at line 115 of file mlFileListFilterPlugin.h.

◆ getInvertTagStringEvalRegExFld()

BoolField& ml::FileListFilterPlugin::getInvertTagStringEvalRegExFld ( ) const
inline

Definition at line 125 of file mlFileListFilterPlugin.h.

◆ getLabelAssignModeFld()

EnumField& ml::FileListFilterPlugin::getLabelAssignModeFld ( ) const
inline

Definition at line 109 of file mlFileListFilterPlugin.h.

◆ getPathFilterRegExFld()

StringField& ml::FileListFilterPlugin::getPathFilterRegExFld ( ) const
inline

Definition at line 114 of file mlFileListFilterPlugin.h.

◆ getProcessingSettingsAssignModeFld()

EnumField& ml::FileListFilterPlugin::getProcessingSettingsAssignModeFld ( ) const
inline

Definition at line 111 of file mlFileListFilterPlugin.h.

◆ getProcessingSettingsFld()

StringField& ml::FileListFilterPlugin::getProcessingSettingsFld ( ) const
inline

Definition at line 108 of file mlFileListFilterPlugin.h.

◆ getRangeMaxFld()

DoubleField& ml::FileListFilterPlugin::getRangeMaxFld ( ) const
inline

Definition at line 148 of file mlFileListFilterPlugin.h.

◆ getRangeMinFld()

DoubleField& ml::FileListFilterPlugin::getRangeMinFld ( ) const
inline

Definition at line 147 of file mlFileListFilterPlugin.h.

◆ getRegExStatusFld()

StringField& ml::FileListFilterPlugin::getRegExStatusFld ( ) const
inline

Definition at line 118 of file mlFileListFilterPlugin.h.

◆ getSetPassFlagOnPathMatchesFld()

BoolField& ml::FileListFilterPlugin::getSetPassFlagOnPathMatchesFld ( ) const
inline

Definition at line 116 of file mlFileListFilterPlugin.h.

◆ getSetPassFlagOnTagValueMatchesFld()

BoolField& ml::FileListFilterPlugin::getSetPassFlagOnTagValueMatchesFld ( ) const
inline

Definition at line 149 of file mlFileListFilterPlugin.h.

◆ getSetTagStrEvalPassFlagOnPathMatchesFld()

BoolField& ml::FileListFilterPlugin::getSetTagStrEvalPassFlagOnPathMatchesFld ( ) const
inline

Definition at line 126 of file mlFileListFilterPlugin.h.

◆ getTagFilterRegExStatusFld()

StringField& ml::FileListFilterPlugin::getTagFilterRegExStatusFld ( ) const
inline

Definition at line 128 of file mlFileListFilterPlugin.h.

◆ getTagId0Fld()

StringField& ml::FileListFilterPlugin::getTagId0Fld ( ) const
inline

Definition at line 131 of file mlFileListFilterPlugin.h.

◆ getTagId0PrivateCreatorFld()

StringField& ml::FileListFilterPlugin::getTagId0PrivateCreatorFld ( ) const
inline

Definition at line 139 of file mlFileListFilterPlugin.h.

◆ getTagId0ValueIndexFld()

IntField& ml::FileListFilterPlugin::getTagId0ValueIndexFld ( ) const
inline

Definition at line 135 of file mlFileListFilterPlugin.h.

◆ getTagId1Fld()

StringField& ml::FileListFilterPlugin::getTagId1Fld ( ) const
inline

Definition at line 132 of file mlFileListFilterPlugin.h.

◆ getTagId1PrivateCreatorFld()

StringField& ml::FileListFilterPlugin::getTagId1PrivateCreatorFld ( ) const
inline

Definition at line 140 of file mlFileListFilterPlugin.h.

◆ getTagId1ValueIndexFld()

IntField& ml::FileListFilterPlugin::getTagId1ValueIndexFld ( ) const
inline

Definition at line 136 of file mlFileListFilterPlugin.h.

◆ getTagId2Fld()

StringField& ml::FileListFilterPlugin::getTagId2Fld ( ) const
inline

Definition at line 133 of file mlFileListFilterPlugin.h.

◆ getTagId2PrivateCreatorFld()

StringField& ml::FileListFilterPlugin::getTagId2PrivateCreatorFld ( ) const
inline

Definition at line 141 of file mlFileListFilterPlugin.h.

◆ getTagId2ValueIndexFld()

IntField& ml::FileListFilterPlugin::getTagId2ValueIndexFld ( ) const
inline

Definition at line 137 of file mlFileListFilterPlugin.h.

◆ getTagId3Fld()

StringField& ml::FileListFilterPlugin::getTagId3Fld ( ) const
inline

Definition at line 134 of file mlFileListFilterPlugin.h.

◆ getTagId3PrivateCreatorFld()

StringField& ml::FileListFilterPlugin::getTagId3PrivateCreatorFld ( ) const
inline

Definition at line 142 of file mlFileListFilterPlugin.h.

◆ getTagId3ValueIndexFld()

IntField& ml::FileListFilterPlugin::getTagId3ValueIndexFld ( ) const
inline

Definition at line 138 of file mlFileListFilterPlugin.h.

◆ getTagStringEvalRegExFld()

StringField& ml::FileListFilterPlugin::getTagStringEvalRegExFld ( ) const
inline

Definition at line 124 of file mlFileListFilterPlugin.h.

◆ getTagStringFilterPrivateCreatorFld()

StringField& ml::FileListFilterPlugin::getTagStringFilterPrivateCreatorFld ( ) const
inline

Definition at line 122 of file mlFileListFilterPlugin.h.

◆ getTagStringFilterTagIdFld()

StringField& ml::FileListFilterPlugin::getTagStringFilterTagIdFld ( ) const
inline

Definition at line 120 of file mlFileListFilterPlugin.h.

◆ getTagStringFilterTagValueIndexFld()

IntField& ml::FileListFilterPlugin::getTagStringFilterTagValueIndexFld ( ) const
inline

Definition at line 121 of file mlFileListFilterPlugin.h.

◆ getTreeFilterExFld()

StringField& ml::FileListFilterPlugin::getTreeFilterExFld ( ) const
inline

Definition at line 130 of file mlFileListFilterPlugin.h.

◆ getTreeFilterStatusFld()

StringField& ml::FileListFilterPlugin::getTreeFilterStatusFld ( ) const
inline

Definition at line 151 of file mlFileListFilterPlugin.h.

◆ getVolumeConfigFld()

StringField& ml::FileListFilterPlugin::getVolumeConfigFld ( ) const
inline

Definition at line 107 of file mlFileListFilterPlugin.h.

◆ getVolumeLabelFld()

StringField& ml::FileListFilterPlugin::getVolumeLabelFld ( ) const
inline

Definition at line 106 of file mlFileListFilterPlugin.h.

◆ handleNotification()

void ml::FileListFilterPlugin::handleNotification ( Field field)
overrideprotectedvirtual

Handle field changes of the field field, typically of the input field where changes are passes as notification to the _outputFilterPluginFld.

Reimplemented from ml::Module.

Member Data Documentation

◆ ConfigurationAssignmentEnumStrings

const char* const ml::FileListFilterPlugin::ConfigurationAssignmentEnumStrings[NumConfigurationAssignmentEnumModes]
static

Strings according to ConfigurationAssignmentEnumModes.

Definition at line 84 of file mlFileListFilterPlugin.h.

◆ LabellingEnumStrings

const char* const ml::FileListFilterPlugin::LabellingEnumStrings[NumLabellingEnumModes]
static

Strings according to LabellingEnumModes.

Definition at line 81 of file mlFileListFilterPlugin.h.

◆ ProcessingSettingsAssignmentEnumStrings

const char* const ml::FileListFilterPlugin::ProcessingSettingsAssignmentEnumStrings[NumProcSettingsAssignmentEnumModes]
static

Strings according to ProcessingSettingsAssignmentEnumModes.

Definition at line 87 of file mlFileListFilterPlugin.h.


The documentation for this class was generated from the following file: