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

vuFourierClusterN.h

Go to the documentation of this file.
00001 #ifndef _FVR_vuFourierClusterN_H_
00002 #define _FVR_vuFourierClusterN_H_
00003 
00004 #include "vuFourierCluster.h"
00005 #include "General/vuMisc/vuProgressHandler.h"
00006 
00007 template <int SIZE, class TYPE>
00008 class vuFourierClusterN
00009 {
00010  public:
00011     void preprocess(dword numberOfViews,
00012                     vuSphericView<SIZE,TYPE> **view,
00013                     vuProgressHandler *handler=NULL);
00014 
00015     void prepareForInteractive(dword width, dword height);
00016     void addView(vuSphericView<1,TYPE> *view);
00017 
00018     void setSliceFilter(vuSliceFilter *sliceFilter);
00019     vuSliceFilter *getSliceFilter();
00020 
00021     void setFilter(vuFourierFilter* filter);
00022 
00023     dword getImageWidth();
00024     dword getImageHeight();
00025 
00027     bool isPreprocessed();
00028 
00030     bool isPreparedForInteractive();
00031 
00033     void setNoInteractiveMode();
00034 
00036     bool writeFourierToFile(const char *fileName,
00037                             vuProgressHandler *handler = NULL);
00038 
00040     bool writeSpatialVolume(const char *fileName,
00041                             vuProgressHandler *handler = NULL);
00042 
00043 
00044     void setCamera(vuCamera *camera);
00045 
00046     void computeSlice();
00047 
00048     void scaleAndBias(TYPE *byte);
00049 
00050     void computeUnscaledImage(vuCamera *camera, vuFixelMap<SIZE,float>* &image,
00051                               float &minVal, float &maxVal, word method);
00052 
00053  private:
00054     void _preprocess(dword num, vuSphericView<SIZE,TYPE> **views);
00055 
00056  private:
00057     vuFourierCluster<TYPE> m_Volume[SIZE]; // one volume for each channel
00058 };
00059 
00060 template vuFourierClusterN<1,byte>;
00061 template vuFourierClusterN<2,byte>;
00062 template vuFourierClusterN<3,byte>;
00063 template vuFourierClusterN<1,float>;
00064 template vuFourierClusterN<2,float>;
00065 template vuFourierClusterN<3,float>;
00066 
00067 typedef vuFourierClusterN<1,byte>  vuFourierClusterN1B;
00068 typedef vuFourierClusterN<2,byte>  vuFourierClusterN2B;
00069 typedef vuFourierClusterN<3,byte>  vuFourierClusterN3B;
00070 typedef vuFourierClusterN<1,float> vuFourierClusterN1F;
00071 typedef vuFourierClusterN<2,float> vuFourierClusterN2F;
00072 typedef vuFourierClusterN<3,float> vuFourierClusterN3F;
00073 
00074 #endif

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