MeVisLab Toolbox Reference
mlLocalMaximaFilter.h
Go to the documentation of this file.
1 /*************************************************************************************
2 **
3 ** Copyright 2007, MeVis Medical Solutions AG
4 **
5 ** The user may use this file in accordance with the license agreement provided with
6 ** the Software or, alternatively, in accordance with the terms contained in a
7 ** written agreement between the user and MeVis Medical Solutions AG.
8 **
9 ** For further information use the contact form at https://www.mevislab.de/contact
10 **
11 **************************************************************************************/
12 
13 #ifndef ML_LOCAL_MAXIMA_FILTER_H
14 #define ML_LOCAL_MAXIMA_FILTER_H
15 
16 
18 
19 // ML-includes
20 #include "mlInitSystemKernel.h"
21 #include "mlKernelModule.h"
22 
23 ML_START_NAMESPACE
24 
25  //--------------------------------------------------------------------------------
35  //--------------------------------------------------------------------------------
37 
38  public:
39 
40  //-------------------------------------------------------------------
62  //-------------------------------------------------------------------
64 
65  //-------------------------------------------------------------------
68  //-------------------------------------------------------------------
69  inline BoolField &getReturnSourceValueField () const { return *_returnSourceValueFld ; }
70  inline BoolField &getCalculateMinimaField () const { return *_calculateMinimaFld ; }
71  inline BoolField &getCalculateRealMaximaField () const { return *_calculateRealMaximaFld; }
73 
74  protected:
75 
77  void calculateOutputImageProperties(int outputIndex, PagedImage* outputImage) override;
78 
85 
88  template <typename DATATYPE>
89  void calcRow(MLsoffset *indexTab,
90  size_t indexTabSize,
91  MLsoffset srcVoxelOffset,
92  size_t numVox,
93  DATATYPE *inCursor,
94  DATATYPE *outCursor,
95  const ImageVector &/*rowStart*/);
96 
97 
98  private:
99 
101  BoolField *_returnSourceValueFld;
102 
104  BoolField *_calculateMinimaFld;
105 
108  BoolField *_calculateRealMaximaFld;
109 
115  };
116 
117 ML_END_NAMESPACE
118 
119 #endif //of __mlLocalMaximaFilter_H
120 
121 
Field to encapsulate a boolean value.
Definition: mlFields.h:62
The typically used convenience class to apply a kernel to an image.
Class searching local maxima in images using a kernel based filtering.
LocalMaximaFilter()
Constructor.
BoolField & getCalculateMinimaField() const
void calculateOutputImageProperties(int outputIndex, PagedImage *outputImage) override
Computes the output image properties for output outIndex.
CALC_ROW_H()
Macro which needs to be added to the implementation of a class derived from KernelModule or KernelBas...
BoolField & getReturnSourceValueField() const
void calcRow(MLsoffset *indexTab, size_t indexTabSize, MLsoffset srcVoxelOffset, size_t numVox, DATATYPE *inCursor, DATATYPE *outCursor, const ImageVector &)
In this template method the filtering of one row needs to be implemented.
BoolField & getCalculateRealMaximaField() const
Class which represents an image, which manages properties of an image and image data which is located...
Definition: mlPagedImage.h:70
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
#define MLKERNELEXPORT
Includes files used in many parts of the dll, defined dll-specific macros and controls any system dep...
MLint MLsoffset
Signed ML offset type which is a 32 bit signed integer on 32 bit platforms and a 64 bit integer on 64...
Definition: mlTypeDefs.h:650