TACC / pvOSPRay

Other
9 stars 4 forks source link

Cannot build pvOSPray - cannot find vtkPVGenericRenderWindowInteractor.h #24

Closed lyon-fnal closed 8 years ago

lyon-fnal commented 8 years ago

Hi! I'm trying to build ParaView 4.4 with your pvOSPray plugin. Unfortunately, I get a build failure...

/Users/lyon/Development/paraview/paraview/ParaView/Plugins/pvOSPRay/ParaView/vtkQtProgressiveRenderer.cxx:11:10: fatal error:
      'vtkPVGenericRenderWindowInteractor.h' file not found
#include "vtkPVGenericRenderWindowInteractor.h"

... for every file in pvOSPray that tries to include vtkPVGenericRenderWindowInteractor.h . This header does not seem to exist in ParaView 4.4. E.g. find ParaView -name 'vtkPVGenericRenderWindowInteractor.h' -print yields nothing.

In fact the file MajorAPIChanges.md says that vtkPVGenericRenderWindowInteractor has been removed. From that file...

###Removed vtkPVGenericRenderWindowInteractor, vtkPVRenderViewProxy###

ParaView was subclassing vtkRenderWindowInteractor to create
`vtkPVGenericRenderWindowInteractor` to handle interaction. That piece of code
was potentially derived from an older implementation of
vtkRenderWindowInteractor and hence did what it did. Current implementation of
vtkRenderWindowInteractor lets the vtkInteractionStyle (and subclasses) do all
the heavy lifting. ParaView did that to some extent (since it has a
vtkPVInteractorStyle), but will was relying on
`vtkPVGenericRenderWindowInteractor`, `vtkPVRenderViewProxy` to propagate
interaction/still renders and other things. This has been refactored. ParaView
no longer uses a special vtkRenderWindowInteractor. All logic is handled by
observers on the standard vtkRenderWindowInteractor.

This change was done to make it easier to enable interactivity in `pvpython`.

See also: vtkSMRenderViewProxy::SetupInteractor(). Subclasses of pqView now pass
the interactor created by QVTKWidget to this method to initialize it.

See also: vtkSMViewProxyInteractorHelper.

Is there an easy change to make this work for ParaView 4.4? Thanks!! -Adam

carsonbrownlee commented 8 years ago

hi Adam, the main repo for pvOSPRay is for 4.3. pvOSPRay has already been updated for 4.4 but lives in a separate branch called “4.4”. That code base hasn’t been tested very heavily, so please let me know if you run into any major issues. Carson

On Oct 16, 2015, at 12:45 PM, Adam Lyon notifications@github.com wrote:

Hi! I'm trying to build ParaView 4.4 with your pvOSPray plugin. Unfortunately, I get a build failure...

/Users/lyon/Development/paraview/paraview/ParaView/Plugins/pvOSPRay/ParaView/vtkQtProgressiveRenderer.cxx:11:10: fatal error: 'vtkPVGenericRenderWindowInteractor.h' file not found

include "vtkPVGenericRenderWindowInteractor.h"

... for every file in pvOSPray that tries to include vtkPVGenericRenderWindowInteractor.h . This header does not seem to exist in ParaView 4.4. E.g. "find ParaView -name 'vtkPVGenericRenderWindowInteractor.h' -print" yields nothing.

In fact the file MajorAPIChanges.md says that vtkPVGenericRenderWindowInteractor has been removed. From that file...

Removed vtkPVGenericRenderWindowInteractor, vtkPVRenderViewProxy

ParaView was subclassing vtkRenderWindowInteractor to create vtkPVGenericRenderWindowInteractor to handle interaction. That piece of code was potentially derived from an older implementation of vtkRenderWindowInteractor and hence did what it did. Current implementation of vtkRenderWindowInteractor lets the vtkInteractionStyle (and subclasses) do all the heavy lifting. ParaView did that to some extent (since it has a vtkPVInteractorStyle), but will was relying on vtkPVGenericRenderWindowInteractor, vtkPVRenderViewProxy to propagate interaction/still renders and other things. This has been refactored. ParaView no longer uses a special vtkRenderWindowInteractor. All logic is handled by observers on the standard vtkRenderWindowInteractor.

This change was done to make it easier to enable interactivity in pvpython.

See also: vtkSMRenderViewProxy::SetupInteractor(). Subclasses of pqView now pass the interactor created by QVTKWidget to this method to initialize it.

See also: vtkSMViewProxyInteractorHelper. Is there an easy change to make this work for ParaView 4.4? Thanks!! -Adam

— Reply to this email directly or view it on GitHub https://github.com/TACC/pvOSPRay/issues/24.

lyon-fnal commented 8 years ago

Ah - sorry I didn't look for a 4.4 branch. I will try it and will let you know if I see any issues. Thanks! -- Adam