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 __mitkOoCFanBeamProjectData_h 00012 #define __mitkOoCFanBeamProjectData_h 00013 00014 #include "mitkFanBeamProjectData.h" 00015 #include "mitkOoCVolume.h" 00016 00021 00022 00023 class MITK_RECONSTRUCTION_API mitkOoCFanBeamProjectData : public mitkFanBeamProjectData 00024 { 00025 public: 00026 MITK_TYPE(mitkOoCFanBeamProjectData,mitkFanBeamProjectData) 00027 00028 virtual void PrintSelf(ostream& os); 00029 00030 mitkOoCFanBeamProjectData(); 00031 00037 virtual unsigned long long GetActualMemorySize() const ; 00038 00042 virtual void ShallowCopy(mitkDataObject *src); 00043 00047 virtual void DeepCopy(mitkDataObject *src); 00048 00049 virtual void Initialize(); 00050 00054 virtual void const* GetSliceForRead(int sliceIdx) ; 00055 00056 virtual void* GetSliceForWrite(int sliceIdx); 00057 00058 virtual void* GetSliceForReadWrite(int sliceIdx) ; 00059 00060 00061 void SetPathOfDiskBuffer(char const *path); 00062 00063 void SetBufferedSliceNum(unsigned int n); 00064 00065 unsigned int GetBufferedSliceNum(); 00066 00067 char const* GetPathOfDiskBuffer(); 00068 00069 virtual bool Allocate(); 00070 00071 protected: 00072 virtual ~mitkOoCFanBeamProjectData(); 00073 private: 00074 00075 mitkOoCFanBeamProjectData(const mitkOoCFanBeamProjectData&); 00076 void operator = (const mitkOoCFanBeamProjectData&); 00077 00078 00079 }; 00080 00081 //#define DEFINED_mitkOoCFanBeamProjectData 00082 00083 00084 00085 00086 #endif 00087