]> Creatis software - cpPlugins.git/blobdiff - lib/cpExtensions/Visualization/ImageSliceActors.h
Widget integration (step 5/6): Just one step leftgit shortlog !
[cpPlugins.git] / lib / cpExtensions / Visualization / ImageSliceActors.h
index 4708e07f7bcb588cad04d52d84cf922154fb37b3..962c8f2b0cf0b2388981f949b1be19f85d768236 100644 (file)
@@ -36,6 +36,8 @@ namespace cpExtensions
     public:
       typedef ImageSliceActors Self;
 
+      typedef void ( *TCursorCommand )( double*, int, void* );
+
     public:
       vtkTypeMacro( ImageSliceActors, vtkPropCollection );
 
@@ -61,6 +63,9 @@ namespace cpExtensions
         LUTType lut = Self::LUTType_None );
       void Clear( );
 
+      void AssociateSlice( Self* other );
+      void SetSlicesCommand( TCursorCommand cmd, void* data );
+
       vtkInteractorStyle* GetStyle( );
       const vtkInteractorStyle* GetStyle( ) const;
 
@@ -104,6 +109,7 @@ namespace cpExtensions
       int GetSliceNumberMinValue( ) const;
       int GetSliceNumberMaxValue( ) const;
       void SetSliceNumber( const int& slice );
+      void SetSlice( double* pos );
       void UpdateText( );
       void UpdateText( double pos[ 3 ] );
       void UpdateText( const double& w, const double& l );
@@ -154,6 +160,11 @@ namespace cpExtensions
       std::vector< vtkSmartPointer< vtkImageActor > >       ImageActors;
       bool Interpolate;
 
+      // Other associated slices
+      std::vector< vtkSmartPointer< Self > > AssociatedSlices;
+      TCursorCommand SlicesCommand;
+      void* SlicesData;
+
       // Other associated actors
       typedef std::pair< vtkAlgorithm*, vtkActor* > TAssociatedActor;
       typedef std::vector< TAssociatedActor >       TAssociatedActors;