Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

mitkICVolume.h

00001 /*=========================================================================
00002 
00003   Program:   3DMed
00004   Date:      $Date: 2014-02-25 18:30:00 +0800 $
00005   Version:   $Version: 4.6.0 $
00006   Copyright: MIPG, Institute of Automation, Chinese Academy of Sciences
00007 
00008 =========================================================================*/
00009 
00010 
00011 #ifndef __mitkICVolume_h
00012 #define __mitkICVolume_h
00013 
00014 #include "mitkVolume.h"
00015 
00020 class MITK_COMMON_API mitkICVolume : public mitkVolume
00021 {
00022 public:
00023     MITK_TYPE(mitkICVolume, mitkVolume)
00024 
00025     virtual void PrintSelf(ostream& os);
00026 
00030     mitkICVolume();
00031 
00036     virtual int GetDataObjectType() const { return MITK_IC_VOLUME; }
00037 
00044     virtual void const* GetData() const { return m_Data; }
00045 
00054     virtual void* GetData() { return m_Data; }
00055 
00065     virtual void const* GetSliceForRead(int sliceIdx);
00066 
00078     virtual void* GetSliceForWrite(int sliceIdx);
00079 
00089     virtual void* GetSliceForReadWrite(int sliceIdx);
00090 
00099     virtual bool ReadSliceData(int sliceIdx, void *dst);
00100 
00109     virtual bool ReadYZSliceData(int xIdx, void *dst);
00110 
00119     virtual bool ReadXZSliceData(int yIdx, void *dst);
00120 
00136     virtual bool GetArbitrarySlice(int w, int h, double o[3], double ux[3], double uy[3], void *dst);
00137 
00146     virtual bool WriteSliceData(int sliceIdx, void const *src);
00147 
00168     virtual bool ReadSubVolume(int x, int y, int z, int w, int h, int d, int &tw, int &th, int &td, void *dst);
00169 
00170     virtual bool ReadSubVolume(int x, int y, int z, int w, int h, int d,
00171         int dstx, int dsty, int dstz, int dstw, int dsth, int dstd,
00172         void *dst, bool zeropad=true);
00173 
00174     virtual bool ReadSubVolume(int x, int y, int z, int w, int h, int d, void *dst, bool zeropad=true);
00175 
00196     virtual bool WriteSubVolume(int x, int y, int z, int w, int h, int d, int &tw, int &th, int &td, void const *src);
00197 
00206     virtual bool Allocate();
00207 
00212     virtual unsigned long long GetActualMemorySize() const;
00213 
00217     virtual void Initialize();
00218 
00222     virtual void ShallowCopy(mitkDataObject *src);
00223 
00227     virtual void DeepCopy(mitkDataObject *src);
00228 
00229 protected:
00230     virtual ~mitkICVolume();    
00231 
00232     void  *m_Data;
00233 
00234 private:
00235     mitkICVolume(const mitkICVolume&);
00236     void operator=(const mitkICVolume&);
00237 
00238 };
00239 
00240 #endif
00241 
00242 

Generated on Tue Feb 25 15:00:37 2014 for MITK (Medical Imaging ToolKit) by  doxygen 1.4.3