fw4spl
SVectorField.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2017.
3  * Distributed under the terms of the GNU Lesser General Public License (LGPL) as
4  * published by the Free Software Foundation.
5  * ****** END LICENSE BLOCK ****** */
6 
7 #ifndef __VISUVTKADAPTOR_SVECTORFIELD_HPP__
8 #define __VISUVTKADAPTOR_SVECTORFIELD_HPP__
9 
10 #include "visuVTKAdaptor/config.hpp"
11 
12 #include <fwData/Image.hpp>
13 
14 #include <fwDataTools/helper/MedicalImageAdaptor.hpp>
15 
16 #include <fwRenderVTK/IAdaptor.hpp>
17 
18 #include <vtkSmartPointer.h>
19 
20 class vtkPolyDataAlgorithm;
21 class vtkImageData;
22 class vtkGlyph3D;
23 
24 namespace visuVTKAdaptor
25 {
26 
44 class VISUVTKADAPTOR_CLASS_API SVectorField : public ::fwRenderVTK::IAdaptor
45 {
46 
47 public:
48 
50 
51  VISUVTKADAPTOR_API SVectorField() noexcept;
52 
53  VISUVTKADAPTOR_API virtual ~SVectorField() noexcept;
54 
55 protected:
56 
57  VISUVTKADAPTOR_API void configuring() override;
58  VISUVTKADAPTOR_API void starting() override;
59  VISUVTKADAPTOR_API void updating() override;
60  VISUVTKADAPTOR_API void stopping() override;
61 
69  VISUVTKADAPTOR_API virtual KeyConnectionsMap getAutoConnections() const override;
70 
71  virtual void buildPipeline();
72  virtual void destroyPipeline();
73 
74  vtkSmartPointer<vtkPolyDataAlgorithm> m_arrowSource;
75  vtkSmartPointer<vtkImageData> m_imageData;
76  vtkSmartPointer<vtkGlyph3D> glyphFilter;
77 
78 };
79 
80 } //namespace visuVTKAdaptor
81 
82 #endif // __VISUVTKADAPTOR_SVECTORFIELD_HPP__
This class is a helper to define the connections of a service and its data.
Definition: IService.hpp:454
The namespace visuVTKAdaptor contains the list of adaptors available for the generic scene...
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
This adaptor displays vector field contains in a fwData::Image.