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 __mitkOoCConeBeamProjectData_h 00012 #define __mitkOoCConeBeamProjectData_h 00013 00014 #include "mitkConeBeamProjectData.h" 00015 #include "mitkOoCVolume.h" 00016 00017 00022 00023 00024 class MITK_RECONSTRUCTION_API mitkOoCConeBeamProjectData : public mitkConeBeamProjectData 00025 { 00026 public: 00027 MITK_TYPE(mitkOoCConeBeamProjectData,mitkConeBeamProjectData) 00028 00029 virtual void PrintSelf(ostream& os); 00030 00031 mitkOoCConeBeamProjectData(); 00032 00038 virtual unsigned long long GetActualMemorySize() const ; 00039 00043 virtual void ShallowCopy(mitkDataObject *src); 00044 00048 virtual void DeepCopy(mitkDataObject *src); 00049 00050 void SetPathOfDiskBuffer(char const *path); 00051 00052 void SetBufferedSliceNum(unsigned int n); 00053 00054 unsigned int GetBufferedSliceNum(); 00055 00056 char const* GetPathOfDiskBuffer(); 00057 00061 virtual void const* GetAngleSliceForRead(int sliceIdx); 00062 00063 virtual void* GetAngleSliceForWrite(int sliceIdx); 00064 00065 virtual void* GetAngleSliceForReadWrite(int sliceIdx); 00066 00067 virtual bool Allocate(); 00068 00069 virtual void Initialize(); 00070 00071 protected: 00072 virtual ~mitkOoCConeBeamProjectData(); 00073 private: 00074 mitkOoCConeBeamProjectData(const mitkOoCConeBeamProjectData&); 00075 void operator = (const mitkOoCConeBeamProjectData&); 00076 00077 00078 }; 00079 00080 //#define DEFINED_mitkOoCConeBeamProjectData 00081 00082 00083 00084 00085 #endif 00086