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

vuSphericLightfieldFourier.h

Go to the documentation of this file.
00001 #ifndef __VU_SPHERIC_LIGHTFIELD_FOURIER_H__
00002 #define __VU_SPHERIC_LIGHTFIELD_FOURIER_H__
00003 
00004 #include "vuSphericLightfieldBasicConverter.h"
00005 #include <fftw.h>
00006 
00007 template <int SI, class TI, int SO, class TO>
00008 class vuSphericLightfieldFourier : public vuSphericLightfieldBasicConverter<SI,TI,SO,TO>
00009 {
00010  public:
00011 
00012   vuSphericLightfieldFourier();
00013 
00014   virtual ~vuSphericLightfieldFourier();
00015 
00016   void _ensurePlan(dword width, dword height);  
00017 
00019   void _convert(vuSphericView<SI,TI> *in, vuSphericView<SO,TO> *out);
00020 
00021   protected:
00022     fftwnd_plan m_Plan;
00023     fftwnd_plan m_PlanForward;
00024     bool        m_PlanExists;
00025 
00026 };
00027 
00028 
00029 template class vuSphericLightfieldFourier<1,float,1,float>;
00030 template class vuSphericLightfieldFourier<1,float,2,float>;
00031 template class vuSphericLightfieldFourier<2,float,2,float>;
00032 template class vuSphericLightfieldFourier<1,byte,2,float>;
00033 
00034 typedef vuSphericLightfieldFourier<1,float,1,float> vuSphLFFourier1F1F;
00035 typedef vuSphericLightfieldFourier<1,float,2,float> vuSphLFFourier1F2F;
00036 typedef vuSphericLightfieldFourier<2,float,2,float> vuSphLFFourier2F2F;
00037 typedef vuSphericLightfieldFourier<1,byte,2,float>  vuSphLFFourier1B2F;
00038 
00039 
00040 class vuSphericLightfieldFourierFactory
00041 {
00042  public:
00043   static vuBasicLightfieldConverter *getConverter(vuString &name);
00044 };
00045 
00046 
00047 #endif /* __VU_SPHERIC_LIGHTFIELD_FOURIER_H__ */

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