Understanding ProxyListDomain
From ParaQ Wiki
Jump to navigationJump to search
Overview
This document describes the how the vtkSMProxyListDomain is used inside ParaView 3.0.
Server Manager
- vtkSMProxyListDomain is just like any other domain, as far as the server manager is concerned. It is defined in the configuration xml for any proxy property. The configuration defines the types (group, name) of all proxies that can be contained in the domain. eg:
<ProxyProperty name="ClipPlane" command="SetClipPlane"> <ProxyListDomain name="proxy_list"> <Proxy group="implicit_functions" name="Plane" /> <Proxy group="implicit_functions" name="Box" /> <Proxy group="implicit_functions" name="Sphere" /> </ProxyListDomain> </ProxyProperty>
- When the domain is instantiated and the configuration is loaded, (in other words when a proxy with this domain is created using vtkSMProxyManager::NewProxy()), the vtkSMProxyListDomain sets up its internal data structure to provide the list of allowed proxy types (group, name) as defined in the configuration. It does not create any proxies on its own.
- vtkSMProxyListDomain provides API to add instances of vtkSMProxy to the domain. These are to be added by the GUI, if at all.
- vtkSMProxyListDomain can seralize itself when state is saved/loaded. While loading is the proxy indicated in the state is missing, it simply skips the proxy. This allows the GUI to add non-registered proxies to any proxy list domain without breaking state loading/saving.
GUI
- ParaView GUI uses proxy list