volume_pixel_view.h

Go to the documentation of this file.
00001 //--------------------------------------------------
00011 //---------------------------------------------------
00012 
00013 #ifndef IMEDGINE_VOLUME_PIXEL_VIEW_H
00014 #define IMEDGINE_VOLUME_PIXEL_VIEW_H
00015 
00016 #include "pixel_view.h"
00017 #include "../global/global_definitions.h"
00018 #include "../datasets/volume_pixel_dataset.h"
00019 
00020 namespace imedgine 
00021 {
00022   
00023   //--------------------------------------------------
00034   //--------------------------------------------------
00035   
00036   class VolumePixelView : public PixelView
00037   {
00038   public:
00039     
00040     //--------------------------------------------------
00043     
00044     VolumePixelView(view_type type);
00045 
00046     //--------------------------------------------------
00049      
00050     virtual ~VolumePixelView();
00051           
00052     //--------------------------------------------------
00056     
00057     virtual void setDataset(dataset_pointer_type dataset)
00058         throw(NullPointerException, InvalidCastException);
00059 
00060     //--------------------------------------------------
00064     
00065     void setSecondDataset(dataset_pointer_type second_dataset)
00066         throw(NullPointerException, InvalidCastException);
00067         
00068     //--------------------------------------------------
00071 
00072     void unsetSecondDataset();
00073     
00074     //--------------------------------------------------
00079     
00080     dataset_key_type getDatasetKey() const;      
00081     
00082     //--------------------------------------------------
00087     
00088     dataset_key_type getSecondDatasetKey() const;
00089     
00090     //--------------------------------------------------
00098     
00099     void lockWithDataset(dataset_key_type dataset_key);
00100     
00101     //--------------------------------------------------
00109     
00110     void unlockFromDataset(dataset_key_type dataset_key);
00111     
00112     //--------------------------------------------------
00116     
00117     bool isLockedWithDataset(dataset_key_type dataset_key);
00118     
00119     //--------------------------------------------------
00123     volume_pixel_dataset_pointer_type getVolumeDataset();
00124     
00125     //--------------------------------------------------
00129     
00130     dataset_position_type const& getCurrentFocusPoint() const;
00131     
00132     //----------------------------------------------------
00136     virtual double getMinPixelValue() const;
00137 
00138     //----------------------------------------------------
00142     virtual double getMaxPixelValue() const;
00143     
00144     //--------------------------------------------------
00150      
00151     virtual void setIntensity(double window, double level)
00152         throw(NullPointerException);
00153     
00154     //--------------------------------------------------
00158     
00159     virtual double getIntensityWindow() const;
00160      
00161     //--------------------------------------------------
00165     
00166     virtual double getIntensityLevel() const;
00167     
00168     //----------------------------------------------------
00174     
00175     void setTransformationMatrix(matrix_type const& matrix);
00176 
00177     //----------------------------------------------------
00180 
00181     matrix_type getTransformationMatrix() const;
00182     
00183     //----------------------------------------------------
00189     
00190     void setOffsetVector(offset_vector_type const& offset);
00191 
00192     //----------------------------------------------------
00195 
00196     virtual offset_vector_type getOffsetVector() const;
00197 
00198     //--------------------------------------------------
00202     virtual unsigned char getNumBytesPerPixel() const;
00203 
00204     
00205   protected:
00206   
00207     //--------------------------------------------------
00210     VolumePixelView(VolumePixelView const& src);   
00211     
00212     //--------------------------------------------------
00214     
00215     volume_pixel_dataset_pointer_type volume_dataset_;
00216         
00217     //--------------------------------------------------
00221     
00222     volume_pixel_dataset_pointer_type second_volume_dataset_;  
00223     
00224     //--------------------------------------------------
00226     
00227     dataset_position_type current_focus_point_;
00228     
00229     
00230   };
00231 }
00232 
00233 #endif

Generated on Sun Aug 13 18:19:41 2006 for iMEDgine by  doxygen 1.4.6