MeVisLabToolboxReference
|
00001 // **InsertLicense** code 00002 //------------------------------------------------------------------------- 00004 00009 //------------------------------------------------------------------------- 00010 // Prevent multiple including of this file. 00011 #if !defined(__mlStdDeviationFilter_H) 00012 #define __mlStdDeviationFilter_H 00013 00014 // ML-includes 00015 #ifndef __mlInitSystemKernel_H 00016 #include "mlInitSystemKernel.h" 00017 #endif 00018 #ifndef __mlKernelModule_H 00019 #include "mlKernelModule.h" 00020 #endif 00021 00022 ML_START_NAMESPACE 00023 00024 //------------------------------------------------------------------------- 00032 //------------------------------------------------------------------------- 00033 class MLKERNELEXPORT StdDeviationFilter : public KernelModule{ 00034 00035 public: 00036 00037 //------------------------------------------------------------------- 00055 //------------------------------------------------------------------- 00056 StdDeviationFilter(); 00057 00060 BoolField *getCalcVarianceFld() { return _calcVarianceFld; } 00061 00062 protected: 00063 00065 virtual void calculateOutputImageProperties(int outIndex); 00066 00067 00073 CALC_ROW_H(); 00074 00077 template <typename DATATYPE> 00078 void calcRow(MLsoffset *indexTab, 00079 size_t indexTabSize, 00080 MLsoffset srcVoxelOffset, 00081 size_t numVox, 00082 DATATYPE *inCursor, 00083 DATATYPE *outCursor, 00084 const ImageVector &/*rowStart*/); 00085 00086 private: 00087 00090 BoolField *_calcVarianceFld; 00091 00092 00097 ML_MODULE_CLASS_HEADER(StdDeviationFilter); 00098 }; 00099 00100 ML_END_NAMESPACE 00101 00102 #endif //of __mlStdDeviationFilter_H 00103 00104