MeVisLab Toolbox Reference
mlCompassFilter.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
15
16#if !defined (__mlCompassFilter_H)
17#define __mlCompassFilter_H
18
19// ML-includes
20#include "mlInitSystemKernel.h"
21#include "mlKernelModule.h"
22
23ML_START_NAMESPACE
24
25 //--------------------------------------------------
34 //--------------------------------------------------
36
37 public:
38 //-------------------------------------------------------------------
41 //-------------------------------------------------------------------
48
49 //-------------------------------------------------------------------
52 //-------------------------------------------------------------------
53 static const char* const CompassFilterSelectNames[];
54
55
56
57 //-------------------------------------------------------------------
59 //-------------------------------------------------------------------
73
74 //-------------------------------------------------------------------
77 //-------------------------------------------------------------------
78 static const char* const DirectionNames[];
79
80
81 //-------------------------------------------------------------------
89 //-------------------------------------------------------------------
91
92 //-------------------------------------------------------------------
95 //-------------------------------------------------------------------
96 inline EnumField* getCompassFilterSelectFld() const { return _compassFilterSelectFld; }
97 inline EnumField* getDirectionFld () const { return _directionFld ; }
98 inline IntField * getDirectionIntFld () const { return _directionIntFld ; }
100
101
102 private:
103
105 void handleNotification(Field* field) override;
106
109 void activateAttachments() override;
110
112 void calculateOutputImageProperties(int outputIndex, PagedImage* outputImage) override;
113
119 CALC_ROW_H();
120
123 template <typename DATATYPE>
124 void calcRow(MLsoffset *indexTab,
125 size_t indexTabSize,
126 MLsoffset /*srcVoxelOffset*/,
127 size_t numVox,
128 DATATYPE *inCursor,
129 DATATYPE *outCursor,
130 const ImageVector &/*rowStart*/);
131
132
133 //-----------------------------------members--------------------------------------
134 private:
135
137 EnumField* _compassFilterSelectFld;
138
140 EnumField* _directionFld;
141
143 IntField* _directionIntFld;
144
150 };
151
152ML_END_NAMESPACE
153
154#endif //of __mlCompassFilter_H
155
static const char *const DirectionNames[]
static const char *const CompassFilterSelectNames[]
IntField * getDirectionIntFld() const
DirectionSelect
Directions in which the compass filtering can take place.
EnumField * getDirectionFld() const
EnumField * getCompassFilterSelectFld() const
void handleNotification(Field *field) override
KernelModule(int inputNum=1, int outputNum=1)
void calculateOutputImageProperties(int outputIndex, PagedImage *outputImage) override
void activateAttachments() override
#define ML_MODULE_CLASS_HEADER(className)
#define MLKERNELEXPORT
#define CALC_ROW_H()
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.