Commentary on View architecture for Custom Views: Difference between revisions
DaveDemarle (talk | contribs) (rough top level) |
DaveDemarle (talk | contribs) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 7: | Line 7: | ||
architecture not well documented | architecture not well documented | ||
hard to augment what is there without replacing | hard to augment what is there without entirely replacing | ||
parallel rendering, many cases many classes, hard to reuse code | |||
configuration independence hard to replicate | |||
== Example Custom Views == | == Example Custom Views == | ||
Line 14: | Line 18: | ||
change to XML parsing to do targetted replacement of parent proxy's subproxies/properties from | change to XML parsing to do targetted replacement of parent proxy's subproxies/properties from | ||
override attribute | |||
client side classes (GLRenderer) different from server (MantaRenderer) | client side classes (GLRenderer) different from server (MantaRenderer) | ||
Line 24: | Line 29: | ||
contained real view is controlled by parent view | contained real view is controlled by parent view | ||
written before xml override, so it used shared properties and dynamic swap at instantaion time | |||
Others?: | Others?: |
Latest revision as of 18:54, 23 April 2010
ParaView 3's view/representation and strategy architecture is a great improvement over ParaView 2's render module architecture. But there is room for improvement, especially regarding the creation of custom views. The following describes what the weaknesses of the current architecture are and how some existing custom views are implemented. The purpose of this page is to tabulating this information so that our next design may be even stronger.
Weaknesses
architecture complex, three independent class hierarchies (proxy definition, proxy, vtk)
architecture not well documented
hard to augment what is there without entirely replacing
parallel rendering, many cases many classes, hard to reuse code
configuration independence hard to replicate
Example Custom Views
Manta:
change to XML parsing to do targetted replacement of parent proxy's subproxies/properties from override attribute
client side classes (GLRenderer) different from server (MantaRenderer)
hacked IceT out to do composite and not use GL
Static Streaming Applications Views:
replacing behavior high up the ViewProxy class hierarchy without breaking them
contained real view is controlled by parent view
written before xml override, so it used shared properties and dynamic swap at instantaion time
Others?: