00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef __mitkVolumeToMeshFilter_h
00013 #define __mitkVolumeToMeshFilter_h
00014
00015 #include "mitkFilter.h"
00016 #include "mitkRCPtr.h"
00017 #include "mitkVolume.h"
00018 #include "mitkMesh.h"
00019 #include "mitkOoCGlobalSettings.h"
00020
00026 class MITK_COMMON_API mitkVolumeToMeshFilter : public mitkFilter
00027 {
00028 public:
00029 MITK_TYPE(mitkVolumeToMeshFilter,mitkFilter)
00030
00031 virtual void PrintSelf(ostream& os);
00032
00037 void SetInput(mitkVolume *inData) {m_InData = inData;}
00038
00043 mitkVolume* GetInput() {return m_InData;}
00044
00054 void SetOoCSupport(char const *diskPath=mitkOoCGlobalSettings::DiskCachePath, unsigned int bufBlockNum = mitkOoCGlobalSettings::BufferedSliceNumber, bool supportOoC = true);
00055
00060 mitkMesh* GetOutput();
00061
00066 void SetOutputMesh(mitkMesh *mesh);
00067
00068 protected:
00069 mitkVolumeToMeshFilter();
00070 virtual ~mitkVolumeToMeshFilter();
00071
00072 mitkRCPtr<mitkVolume> m_InData;
00073 mitkMesh *m_OutData;
00074
00075 mitkString *m_DiskPath;
00076 unsigned int m_BufferedBlockNum;
00077
00078 bool m_NeedOoC;
00079
00080 private:
00081 mitkVolumeToMeshFilter(const mitkVolumeToMeshFilter&);
00082 void operator=(const mitkVolumeToMeshFilter&);
00083 };
00084
00085
00086
00087
00088
00089
00090 #endif
00091
00092