MeVisLab Toolbox Reference
mlConvolutionFilter.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
16
17#if !defined (__mlConvolutionFilter_H)
18#define __mlConvolutionFilter_H
19
20// ML-includes
21#include "mlInitSystemKernel.h"
22#include "mlKernel.h"
23#include "mlKernelModule.h"
24
25ML_START_NAMESPACE
26
27 //--------------------------------------------------
35 //--------------------------------------------------
37
38 public:
39
40 //--------------------------------------------------------------------------------------------------------
126 //--------------------------------------------------------------------------------------------------------
146
148 static const char* const ConvKernelNames[];
149
150 //-------------------------------------------------------------------
166 //-------------------------------------------------------------------
168
170 EnumField *getConvKernelFld() const { return _convKernelFld; }
171
172 protected:
174 void handleNotification(Field* field) override;
175
178 void _userKernelPostUpdate() override;
179
182 void calculateOutputImageProperties(int outputIndex, PagedImage* outputImage) override;
183
190
193 template <typename DATATYPE>
194 void calcRow(MLsoffset *indexTab,
195 size_t indexTabSize,
196 MLsoffset srcVoxelOffset,
197 size_t numVox,
198 DATATYPE *inCursor,
199 DATATYPE *outCursor,
200 const ImageVector &/*rowStart*/);
201
202 private:
204 EnumField *_convKernelFld;
205
211 };
212
213ML_END_NAMESPACE
214
215#endif //of __mlConvolutionFilter_H
216
217
EnumField * getConvKernelFld() const
Access to parameter field(s) See documentation of _convKernelFld.
void _userKernelPostUpdate() override
void calcRow(MLsoffset *indexTab, size_t indexTabSize, MLsoffset srcVoxelOffset, size_t numVox, DATATYPE *inCursor, DATATYPE *outCursor, const ImageVector &)
void calculateOutputImageProperties(int outputIndex, PagedImage *outputImage) override
void handleNotification(Field *field) override
Called when a parameter field is changed.
static const char *const ConvKernelNames[]
Strings for ConvKernelNames.
KernelModule(int inputNum=1, int outputNum=1)
#define ML_MODULE_CLASS_HEADER(className)
#define MLKERNELEXPORT
MLint MLsoffset
Signed ML offset type that is a 32-bit signed integer on 32-bit platforms and a 64-bit integer on 64-...
Definition mlTypeDefs.h:561
TImageVector< MLint > ImageVector
Defines the standard ImageVector type that is used by the ML for indexing and coordinates.