Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

SpecFVR/TorstensFilters.h

Go to the documentation of this file.
00001 #ifndef _TORSTENSFILTERS_H_
00002 #define _TORSTENSFILTERS_H_
00003 
00004 #include "Filter.h"
00005 #include "tfilters.h"
00006 
00007 
00008 namespace SpecFVRNS 
00009 {
00010     
00011 
00012 // max extent of a filter for things to work
00013 #define MAX_TFILTER_EXTENT      10
00014 
00015 class TorstensFilters : public Filter
00016 {
00017 public:
00018     TorstensFilters();
00019     TorstensFilters(TorstensFilters& l);
00020     TorstensFilters(int (*filter)(float a, float t, float *coeff), float a = 0.0f);
00021     virtual ~TorstensFilters();
00022 
00023     void SetFilter(int (*filter)(float a, float t, float *coeff), float a = 0.0f);
00024 
00025         virtual dword getWidth(void);
00026 
00027     TorstensFilters& operator=(TorstensFilters& rhs);
00028 
00029 protected:
00030         virtual void MakeWeights(void);
00031 
00032 private:
00033     void MakeWeightCube(float* w, float ti, float tj, float tk);
00034 
00035 private:
00036     int (*m_Filter)(float a, float t, float *coeff);
00037     dword m_FilterWidth;
00038         float m_a;
00039 };
00040 
00041 } // endof namespace
00042 
00043 #endif

Generated on Wed Dec 15 21:20:32 2004 for vuVolume by  doxygen 1.3.9.1