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

mitkConeBeamPD.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 __mitkConeBeamPD_h
00012 #define __mitkConeBeamPD_h
00013 
00014 #include "mitkCTProjectionData.h"
00015 #include "mitkVolume.h"
00016 
00039 
00040 class MITK_RECONSTRUCTION_API mitkConeBeamPD : public mitkCTProjectionData  
00041 {
00042 public:
00043     MITK_TYPE(mitkConeBeamPD,mitkCTProjectionData)
00044     
00045     virtual void PrintSelf(ostream& os);
00046 
00047     void SetColumnNum(int m){mColNum=m;}
00048     int GetColumnNum() const {return mColNum;}
00049 
00050     void SetRowNum(int m){mRow=m;}
00051     int GetRowNum() const {return mRow;}
00052 
00053     void SetFrameNum(int m){mFrameNum=m;}
00054     int GetFrameNum() const {return mFrameNum;}
00055 
00056     void SetHRes(float m){mHRes=m;}
00057     float GetHRes() const {return mHRes;}
00058 
00059     void SetVRes(float m){mVRes = m;}
00060     float GetVRes() const {return mVRes;}
00061 
00062     void SetFrameRes(float m){mFrameRes = m;}
00063     float GetFrameRes() const {return mFrameRes;}
00064 
00065     
00066     virtual void const* GetFrameForRead(int frameIdx)=0;
00067     virtual void* GetFrameForWrite(int frameIdx)=0;
00068     virtual void* GetFrameForReadWrite(int frameIdx)=0 ;
00069 
00070     
00078     virtual unsigned long long GetActualMemorySize() const=0;
00079     
00083     virtual void ShallowCopy(mitkDataObject *src)=0;
00087     virtual void DeepCopy(mitkDataObject *src)=0;  
00088 
00092     virtual void const* GetVolumeData() const {return m_Data;}
00093 
00097     virtual void* GetVolumeData() {return m_Data;}
00098 
00102     void SetVolumeData(mitkVolume *);
00103 
00104     virtual void Initialize();
00105     virtual bool Allocate()=0;
00106 
00107     /*
00108 
00112     void SetSourceToCenterDistance(double m){sod = m;}
00113 
00117     double GetSourceToCenterDistance() const {return sod;}
00118 
00122     void SetSourceToDetectorDistance(double m){sdd = m;}
00123 
00127     double GetSourceToDetectorDistance() const {return sdd;}
00128  
00129     */
00130 
00131 
00132 protected:
00133     
00134     mitkConeBeamPD();
00135     virtual ~mitkConeBeamPD();  
00136 private:
00137 
00138     int mColNum;
00139     int mRow;
00140     int mFrameNum;
00141     float mHRes;
00142     float mVRes;
00143     float mFrameRes;
00144 /*
00145     double lengthDetectorx;
00146     double lengthDetectorz;
00147 
00148     int numXrayx;
00149     int numXrayz;
00150     double sod;
00151     double sdd;
00152     double v[8];
00153     float detectormovex;
00154     float detectormovez;
00155     */
00156 };
00157  
00158 //#define DEFINED_mitkConeBeamPD
00159  
00160 
00161 
00162 #endif 
00163 

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