00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __mitkCUDASegmentedVolume_h
00011 #define __mitkCUDASegmentedVolume_h
00012
00013 #include "mitkCUDAVolumeRenderingIncludes.h"
00014 #include "mitkCUDAVolumeTexture.h"
00015
00016 #define BLOCK_SIZE 16
00017
00018 class MITK_CUDA_VOLUME_RENDERING_API mitkCUDASegmentedVolume : public mitkCUDAVolumeTexture
00019 {
00020 public:
00021 cudaArray *m_d_maskArray;
00022 cudaArray *m_d_interpolationArray;
00023
00024 mitkCUDASegmentedVolume();
00025 virtual ~mitkCUDASegmentedVolume();
00026
00027 void CopyMaskToTexture(unsigned char* mask);
00028 void CopyToTexture(mitkICVolume* vol,unsigned char* mask);
00029
00030 private:
00031 void InitInterpolationArray();
00032 };
00033
00034
00035 #endif