1. 16 Oct, 2012 2 commits
    • Utkarsh Ayachit's avatar
      Fixed warnings. · 469e20a1
      Utkarsh Ayachit authored
      Change-Id: Iacd01dec15644152eb9d0ff26963b34e798846b3
      469e20a1
    • Utkarsh Ayachit's avatar
      Fixed BUG #13525. Avoid rendering pipeline resets when playing animation. · 07671104
      Utkarsh Ayachit authored
      When playing animation, display lists are always discarded even if pipeline data
      didn't change with time. Although the geometry filter and the vtkPVCacheKeeper
      in vtkGeometryRepresentation didn't re-execute, the data was still treated as
      modified. This was due to the logic in vtkPVDataDeliveryManager::SetPiece(). The
      code was implemented to look at the DataTime provided by the pipeline. That was
      done so that we could detect the change in data object when representation type
      changes. However, the same can be done simply by comparing the data-object
      pointer. Doing that addresses this bug as well.
      
      Note however, in client-server mode, we still would force delivery for all
      representations when time changes irrespective of whether the data really
      changed.
      
      Change-Id: I1b41778a5e3fcfa041ff48860c5311245a5182a7
      07671104
  2. 25 Sep, 2012 2 commits
  3. 22 Sep, 2012 3 commits
    • Utkarsh Ayachit's avatar
      Cleaning up unused code. · 8359c178
      Utkarsh Ayachit authored
      Cleaning up unused code in vtkPVDataDeliveryManager. That logic has now moved to
      the representations themselves.
      8359c178
    • Utkarsh Ayachit's avatar
      Adding support for streaming in client/server configurations. · f8e2dbff
      Utkarsh Ayachit authored
      "AMR Blocks" streaming now works in client-server with local or remote
      rendering. This updates the logic for delivering streamed pieces to rendering
      nodes. Although both remote/local rendering are supported for streaming, if the
      rendering mode is changed in between, the streaming is not restarted (currently)
      and hence the blocks already delivered will not be available on the other
      processes.
      
      Tile display configuration also works.
      f8e2dbff
    • Utkarsh Ayachit's avatar
      Refactors AMR streaming framework. · 52c7392f
      Utkarsh Ayachit authored
      This commit refactors AMR streaming framework and add support for a mechanism
      for streaming composite datasets in general. To try out amr streaming, run all
      executables with "--enable-streaming" flag and open an AMR Flash or Enzo dataset
      and render as "AMR Blocks" or "Volume" (currently, only works in builtin mode,
      but will be supported in other modes soon).
      
      vtkAMROutlineRepresentation is a example class that demonstrates how a
      representation can leverage the streaming capabailities provided by
      vtkPVRenderView.
      
      vtkPVRenderView adds support to two new passes: REQUEST_STREAMING_UPDATE() and
      REQUEST_PROCESS_STREAMED_PIECE().  REQUEST_STREAMING_UPDATE() is a view pass in
      which the representations can update their data pipelines to request a certain
      "piece" of the data. REQUEST_PROCESS_STREAMED_PIECE() is called on
      representations to handle a "piece" just received by the process. This
      separation makes it possible for representations to be agnostic of where the
      data is processed and where it is rendered. It's the reposibility of the view
      (vtkPVDataDeliveryManager in particular) to deliver the data to the
      rendering nodes.
      
      vtkPVDataDeliveryManager doesn't currently support data delivery for streamed
      pieces, however. That's on the TODO list.
      52c7392f
  4. 27 Aug, 2012 1 commit
  5. 28 Jun, 2012 1 commit
  6. 06 Jun, 2012 1 commit
    • Utkarsh Ayachit's avatar
      Fixing Streaming-Delivery after view refactor. · 515827f6
      Utkarsh Ayachit authored
      vtkPVDataDeliveryManager's internal were changed as we were cleaning up the code
      so that all ParaView use-cases work with the new delivery mechanism. Fixing
      StreamingDeliver() to work after those changes. AMR streaming volume rendering
      now works again when streaming is enabled.
      515827f6
  7. 28 May, 2012 3 commits
  8. 25 May, 2012 1 commit
    • Utkarsh Ayachit's avatar
      Fixed Slice representation in client-server modes. · 41b198fe
      Utkarsh Ayachit authored
      vtkPVDataDeliveryManager was ending up not requesting new data when slice
      parameters were changed. This happened because the mtime we used in
      vtkPVDataDeliveryManager used the data-time, which clearly didn't change on the
      client after every update. Since vtkPVDataDeliveryManager::SetPiece() uses the
      executive's data-time to check if data was really updated, we shouldn't use the
      data mtime in vtkPVDataDeliveryManager's SetDataObject() call.
      41b198fe
  9. 20 May, 2012 1 commit
    • Utkarsh Ayachit's avatar
      Cleaned up ordered compositing code. · d2fe1dd8
      Utkarsh Ayachit authored
      * Reintroduced support for generating kdtree using image data extents.
      * Restructured code to ensure redistribution happens correctly for every render.
        The previous implementation required that the client triggered the
        redistribution in Delivery() call which was not possible esp. as
        representations were added/removed (since Delivery() is only called when data
        really needs to be delivered which is not the case when representations are
        removed).
      d2fe1dd8
  10. 19 May, 2012 1 commit
    • Utkarsh Ayachit's avatar
      Refactoring surface-selection mechanism. · ef2cf1ae
      Utkarsh Ayachit authored
      * Surface selection now works in local-rendering mode (as well as remote
        rendering mode). It expects the vtkPVGeometryFilter to generate process ids
        (vtkProcessId) array in parallel. When present, it is used to determine the
        process id.
      * Selection rendering passes now render the "original ids" rather than the
        point/cell ids. Thus representations no longer need to "convert" selection.
        They just need to ensure that they render the correct ids in the selection
        rendering passes.
      
      This makes it possible to determine the "selection" directly on the client.
      Thus, we no longer need to gather the selection from the server side.
      ef2cf1ae
  11. 18 May, 2012 15 commits