00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __mitkCUDADecomposedVolume_h
00011 #define __mitkCUDADecomposedVolume_h
00012
00013 #include "mitkCUDAVolumeRenderingIncludes.h"
00014
00015 class mitkICVolume;
00016 struct cudaArray;
00017 class MITK_CUDA_VOLUME_RENDERING_API mitkCUDADecomposedVolume
00018 {
00019 public:
00021 int m_bsizeX,m_bsizeY,m_bsizeZ;
00022 int m_bnumX,m_bnumY,m_bnumZ;
00023
00024 float *m_MinMax;
00025 void CalculateMinMax(mitkICVolume* vol,int bsizeX=10,int bsizeY=10, int bsizeZ=10);
00026
00028 cudaArray *m_d_MapArray;
00029 cudaArray *m_d_DataArray;
00030
00031 float m_Spacings[3];
00032 float m_grey_scale;
00033 float m_grey_shift;
00034
00035 int m_texSize;
00036 unsigned int m_patching;
00037
00038 mitkCUDADecomposedVolume();
00039 ~mitkCUDADecomposedVolume();
00040
00041 void GenerateDataStructure(mitkICVolume* vol, unsigned char* occupyMask);
00042
00043 };
00044
00045
00046 #endif