Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot build pvOSPray - cannot find vtkPVGenericRenderWindowInteractor.h #24

Closed
lyon-fnal opened this issue Oct 16, 2015 · 2 comments
Closed

Comments

@lyon-fnal
Copy link

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
Copy link
Collaborator

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 #24.

@lyon-fnal
Copy link
Author

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants