Access serverside VTK Object with Python

Hi have a macro that I use to visualize my data with. What I do is take all sources, check whether they are vtkPVDReader and then analyze the data that was read by that reader. On client side this is simply done using

mb_source = source.SMProxy.GetClientSideObject().GetOutputDataObject(0)

where source is one of the vtkPVDReader sources and mb_source is just a vtkMultiBlockDataSet that I can then work with.

Now when using ParaView in client/server mode this no longer works as, without surprise, GetClientSideObject returns None. I did not manage to find a way to access the multiblock data on the server, so if anybody knows how to do that please let me know.

What I did try so far is to use source.SMProxy.GetOutputPort(0) and .GetClassName() reports vtkMultiBlockDataSet I can’t seem to figure out how to actually access the data.

Thanks in advance for your help,

servermanager.Fetch:servermanager Module β€” ParaView/Python 5.9.1 documentation

TBH you should avoid doing that, it is a costly call with big datasets.

Thanks Mathieu, I see what that does and I actually think I can get around it as I only really need the metadata at this point. I have a follow up question regarding that but I will be posting it in a new thread as it might be interesting as standalone question.

1 Like