MeVisLabToolboxReference
MeVisLab/Standard/Sources/ML/MLKernel/mlStdDeviationFilter.h
Go to the documentation of this file.
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