]> Creatis software - clitk.git/blobdiff - vv/vvROIActor.h
Debug RTStruct conversion with empty struc
[clitk.git] / vv / vvROIActor.h
index f6a7b2f4d773d11b784f3e176818222beaf0b78b..799d339288fa52e82e0b9a2178f71d45a833bc58 100644 (file)
@@ -3,7 +3,7 @@
 
   Authors belong to: 
   - University of LYON              http://www.universite-lyon.fr/
-  - Léon Bérard cancer center       http://oncora1.lyon.fnclcc.fr
+  - Léon Bérard cancer center       http://www.centreleonberard.fr
   - CREATIS CNRS laboratory         http://www.creatis.insa-lyon.fr
 
   This software is distributed WITHOUT ANY WARRANTY; without even
 
   - BSD        See included LICENSE.txt file
   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
-======================================================================-====*/
+===========================================================================**/
 
 #ifndef VVROIACTOR_H
 #define VVROIACTOR_H
 
+#include "vvBinaryImageOverlayActor.h"
+#include "vvImageContour.h"
 #include "clitkDicomRT_ROI.h"
+
 #include <QObject>
+#include <QSharedPointer>
 
 class vvSlicerManager;
-class vvImageContour;
-class vvBinaryImageOverlayActor;
 class vtkActor;
 
 //------------------------------------------------------------------------------
@@ -37,8 +39,8 @@ class vvROIActor: public QObject {
   void SetROI(clitk::DicomRT_ROI * r);
   clitk::DicomRT_ROI * GetROI() { return mROI; }
   void SetSlicerManager(vvSlicerManager * s);
-  void Update();
-  void Initialize();
+  void Update(bool force=false);
+  void Initialize(double d=1.0, bool IsVisible=true);
   void SetVisible(bool b);
   void SetContourVisible(bool b);
   bool IsVisible();
@@ -49,25 +51,34 @@ class vvROIActor: public QObject {
   void SetContourWidth(int n);
   int GetContourWidth() { return mContourWidth; }
   void SetContourColor(double r, double v, double b);
-  std::vector<double> & GetContourColor();
+  std::vector<double> & GetContourColor();  
+  void SetOverlayColor(double r, double v, double b);
+  std::vector<double> & GetOverlayColor();
+  void SetBGMode(bool b) { m_modeBG = b; }
+  void SetDepth(double d);
+  double GetDepth() { return mDepth; }
+  void CopyParameters(QSharedPointer<vvROIActor> roi);
+  void RemoveActors();
 
 public slots:
-  void UpdateSlice(int slicer, int slices);
+  void UpdateSlice(int slicer, int slices, int force=0);
   void UpdateColor();
   void UpdateImage();
 
  protected:
-  clitk::DicomRT_ROI * mROI;
+  clitk::DicomRT_ROI::Pointer mROI;
   vvSlicerManager * mSlicerManager;
-  std::vector<vvImageContour *> mImageContour;
-  std::vector<vvBinaryImageOverlayActor *> mOverlayActors;
-  
+  std::vector<vvImageContour::Pointer> mImageContour;
+  std::vector< vvBinaryImageOverlayActor::Pointer > mOverlayActors;
+
   bool mIsVisible;
   bool mIsContourVisible;
   double mOpacity;
   bool mIsSelected;
   int mContourWidth;
   std::vector<double> mContourColor;
+  bool m_modeBG;
+  double mDepth;
 
 }; // end class vvROIActor
 //------------------------------------------------------------------------------