]> Creatis software - clitk.git/blobdiff - vv/vvROIActor.h
Mathieu Malaterre
[clitk.git] / vv / vvROIActor.h
index a7cbd5c03d62d7872c8244f3e302757f73ca4895..c690ae085953aa19a49f4b0d7a0aaecd4ad68fcd 100644 (file)
 #ifndef VVROIACTOR_H
 #define VVROIACTOR_H
 
+#include "vvBinaryImageOverlayActor.h"
+#include "vvImageContour.h"
 #include "clitkDicomRT_ROI.h"
 #include <QObject>
 
 class vvSlicerManager;
-class vvImageContour;
-class vvBinaryImageOverlayActor;
 class vtkActor;
 
 //------------------------------------------------------------------------------
@@ -38,7 +38,7 @@ class vvROIActor: public QObject {
   clitk::DicomRT_ROI * GetROI() { return mROI; }
   void SetSlicerManager(vvSlicerManager * s);
   void Update();
-  void Initialize();
+  void Initialize(bool IsVisible=true);
   void SetVisible(bool b);
   void SetContourVisible(bool b);
   bool IsVisible();
@@ -50,16 +50,18 @@ class vvROIActor: public QObject {
   int GetContourWidth() { return mContourWidth; }
   void SetContourColor(double r, double v, double b);
   std::vector<double> & GetContourColor();
+  void SetBGMode(bool b) { m_modeBG = b; }
 
 public slots:
   void UpdateSlice(int slicer, int slices);
   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;
@@ -67,6 +69,7 @@ public slots:
   bool mIsSelected;
   int mContourWidth;
   std::vector<double> mContourColor;
+  bool m_modeBG;
 
 }; // end class vvROIActor
 //------------------------------------------------------------------------------