[Paraview-developers] Get data from server to client (helper?)
Biddiscombe, John A.
biddisco at cscs.ch
Tue Oct 22 12:17:15 EDT 2013
Utkarsh
> Create a new vtkPVInformation subclass with following points to note:
>
> + Override GetRootOnly() to return 1. Thus ParaView will only gather
> the information from the root node.
> + Override CopyFromObject() to downcast to right type and call which
> every method you want to get the data
> + Override CopyToStream and CopyFromStream to serialize the data
> collected in CopyFromObject to/from a client-server stream.
> + AddInformation() is used to reduce the results in parallel. Since
> you don't need that, I believe you can leave that empty.
>
> Now, in your client code, to fetch the data you can do something as follows:
>
> vtkNew<vtkMyNewInformationClass> instance;
> repr->getProxy()->GatherInformation(instance.GetPointer())
When we do this, the GatherInformation call is executing on the client. I've experimented with
repr->getProxy()->GatherInformation(info.GetPointer(), vtkPVSession::RENDER_SERVER);
but the CopyFromObject() call inside the information is copying on the client, and so results are wrong. I had assumed it would CopyFromObject on the root node of the server, and then CopyToStream and on the client do a CopyDromStream.
Is there another step I need perhaps to trigger it to do this the way I expect?
thanks
JB
More information about the Paraview-developers
mailing list