#ifndef __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__ #define __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__ #include #include #include #include #include namespace cpExtensions { namespace Visualization { /** */ class cpExtensions_EXPORT MPRObjects : public vtkObject { public: typedef MPRObjects Self; typedef MPRActors::TStyle TStyle; typedef MPRActors::TMouseCommand TMouseCommand; typedef MPRActors::TMouseWheelCommand TMouseWheelCommand; typedef MPRActors::TKeyCommand TKeyCommand; typedef MPRActors::TVoidCommand TVoidCommand; typedef MPRActors::TMouseMoveCommand TMouseMoveCommand; typedef MPRActors::TMouseClickCommand TMouseClickCommand; typedef MPRActors::TMouseDoubleClickCommand TMouseDoubleClickCommand; typedef MPRActors::TExposeCommand TExposeCommand; typedef MPRActors::TConfigureCommand TConfigureCommand; typedef MPRActors::TEnterCommand TEnterCommand; typedef MPRActors::TLeaveCommand TLeaveCommand; public: vtkTypeMacro( MPRObjects, vtkObject ); public: // Creation static MPRObjects* New( ); void SetRenderWindows( vtkRenderWindow* wx, vtkRenderWindow* wy, vtkRenderWindow* wz, vtkRenderWindow* w3D ); void AddImage( vtkImageData* image ); unsigned int GetNumberOfImages( ) const; void ClearAll( ); void ResetCamera( const int& id ); void ResetCameras( ); void Render( const int& id, const double& t ); void RenderAll( const double& t ); vtkRenderer* GetXRenderer( ); vtkRenderer* GetYRenderer( ); vtkRenderer* GetZRenderer( ); vtkRenderer* Get3DRenderer( ); const vtkRenderer* GetXRenderer( ) const; const vtkRenderer* GetYRenderer( ) const; const vtkRenderer* GetZRenderer( ) const; const vtkRenderer* Get3DRenderer( ) const; MPRActors* GetMPRActors( ); const MPRActors* GetMPRActors( ) const; double GetWindow( ) const; double GetLevel( ) const; protected: MPRObjects( ); virtual ~MPRObjects( ); private: // Purposely not implemented MPRObjects( const Self& ); Self& operator=( const Self& ); protected: // Inputs vtkSmartPointer< vtkRenderWindow > m_Windows[ 4 ]; // Internal pipelines vtkSmartPointer< MPRActors > m_MPRActors; vtkSmartPointer< vtkRenderer > m_Renderers[ 4 ]; }; } // ecapseman } // ecapseman #endif // __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__ // eof - $RCSfile$