[Paraview-developers] More server manager woes.

Moreland, Kenneth kmorel at sandia.gov
Wed Apr 20 12:51:39 EDT 2005


So, like the "Render" property in the RenderWindow server manager
object, I am having trouble with the "ForceUpdate" property in the
UpdateSuppressor.  The property is being updated on object creating in
my application because vtkProperty::ModifiedAtCreation is on, which is a
problem because at the time of the first update the input is not set
everywhere.  However, unlike "Render," "ForceUpdate" is actually used
elsewhere in the code.  So removing it is not an appropriate quick fix.
In response, I would like the ParaView developers to consider the
following two points, either one of which will probably resolve the
issues I am having.

(1) Should the ModifiedAtCreation flag really exist?  The point seems to
be to make sure that when the object is created, its state reflects the
default values specified in the xml.  Is that important?  Why would the
default values in the xml be more important than those in the class
itself?  Does it matter that they don't agree?  These are proxy objects
after all.  The programmer must know of the possibility that the state
does not match up perfectly.  ParaView turns this flag off.  Is there
any client that really needs it on?  Could it be replaced with a method
in vtkProxy that updates all properties regardless of the modified flag?

(2) Should everything in a proxy be a property?  A property, in my mind,
is just a piece of state.  Both "Render" and "ForceUpdate" are not
really properties in that sense.  They are commands that invoke some
sort of process.  They may change the state, but probably in ways far
outside those of other properties.  To me (and probably to most
programmers) setting a property named "ForceUpdate" seems far removed
from "update the upstream pipeline now."  Is this hokey mechanism better
than just using a client/server stream directly?  Should proxies also
have commands in addition to properties?  That would help prevent code
from blindly doing pipeline updates or renders when it thinks it's just
modifying some fields in a class.

-Ken

   ****      Kenneth Moreland
    ***      Sandia National Laboratories
***********  
*** *** ***  email: kmorel at sandia.gov
**  ***  **  phone: (505) 844-8919
    ***      fax:   (505) 845-0833



More information about the Paraview-developers mailing list