ParaView
vtkSMParaViewPipelineController.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: vtkSMParaViewPipelineController.h
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
21 #ifndef vtkSMParaViewPipelineController_h
22 #define vtkSMParaViewPipelineController_h
23 
24 #include "vtkSMObject.h"
25 
26 class vtkSMProxy;
27 class vtkSMSession;
29 
30 class VTKPVSERVERMANAGERCORE_EXPORT vtkSMParaViewPipelineController : public vtkSMObject
31 {
32 public:
35  void PrintSelf(ostream& os, vtkIndent indent);
36 
41  virtual bool InitializeSession(vtkSMSession* session);
42 
46  virtual vtkSMProxy* FindTimeKeeper(vtkSMSession* session);
47 
48  //---------------------------------------------------------------------------
54  virtual bool PreInitializeProxy(vtkSMProxy* proxy);
55 
66  virtual bool PostInitializeProxy(vtkSMProxy* proxy);
67 
72  {
73  return this->PreInitializeProxy(proxy) && this->PostInitializeProxy(proxy);
74  }
75 
82  virtual bool FinalizeProxy(vtkSMProxy* proxy);
83 
84  //---------------------------------------------------------------------------
85  // ******* Methods for Pipeline objects like sources/filters/readers ********
86 
100  virtual bool RegisterPipelineProxy(vtkSMProxy* proxy, const char* proxyname);
101  virtual bool RegisterPipelineProxy(vtkSMProxy* proxy)
102  {
103  return this->RegisterPipelineProxy(proxy, NULL);
104  }
105 
114  virtual bool UnRegisterPipelineProxy(vtkSMProxy* proxy);
115 
116  //---------------------------------------------------------------------------
117  // ******* Methods for Views/Displays *********
118 
125  virtual bool RegisterViewProxy(vtkSMProxy* proxy) { return this->RegisterViewProxy(proxy, NULL); }
126  virtual bool RegisterViewProxy(vtkSMProxy* proxy, const char* proxyname);
127 
137  virtual bool UnRegisterViewProxy(vtkSMProxy* proxy, bool unregister_representations = true);
138 
144  virtual bool RegisterRepresentationProxy(vtkSMProxy* proxy);
145 
152  virtual bool UnRegisterRepresentationProxy(vtkSMProxy* proxy);
153 
154  //---------------------------------------------------------------------------
155  // ******* Methods for Transfer functions *********
156 
161  virtual bool RegisterColorTransferFunctionProxy(vtkSMProxy* proxy, const char* proxyname);
163  {
164  return this->RegisterColorTransferFunctionProxy(proxy, NULL);
165  }
166 
170  virtual bool RegisterOpacityTransferFunction(vtkSMProxy* proxy, const char* proxyname);
172  {
173  return this->RegisterOpacityTransferFunction(proxy, NULL);
174  }
175 
176  //---------------------------------------------------------------------------
177  // ******* Methods for Animation *********
178 
182  virtual vtkSMProxy* FindAnimationScene(vtkSMSession* session);
183 
189  virtual vtkSMProxy* GetAnimationScene(vtkSMSession* session);
190 
194  virtual vtkSMProxy* FindTimeAnimationTrack(vtkSMProxy* scene);
195 
200  virtual vtkSMProxy* GetTimeAnimationTrack(vtkSMProxy* scene);
201 
206  virtual bool RegisterAnimationProxy(vtkSMProxy* proxy);
207 
215  virtual bool UnRegisterAnimationProxy(vtkSMProxy* proxy);
216 
217  //---------------------------------------------------------------------------
218  // ******* Methods for Settings *********
219  //
225  virtual void UpdateSettingsProxies(vtkSMSession* session);
226 
227  //---------------------------------------------------------------------------
228  // ****** Methods for cleanup/finalization/deleting ******
229  //
237  virtual bool UnRegisterProxy(vtkSMProxy* proxy);
238 
242  static vtkStdString GetHelperProxyGroupName(vtkSMProxy*);
243 
244 protected:
247 
252  vtkSMProxy* FindProxy(
253  vtkSMSessionProxyManager* pxm, const char* reggroup, const char* xmlgroup, const char* xmltype);
254 
256 
260  virtual bool CreateProxiesForProxyListDomains(vtkSMProxy* proxy);
261  virtual void RegisterProxiesForProxyListDomains(vtkSMProxy* proxy);
263 
267  virtual bool SetupGlobalPropertiesLinks(vtkSMProxy* proxy);
268 
273  virtual bool CreateAnimationHelpers(vtkSMProxy* proxy);
274 
279  virtual bool UnRegisterDependencies(vtkSMProxy* proxy);
280 
286  unsigned long GetInitializationTime(vtkSMProxy*);
287 
289 
293  void ProcessInitializationHelper(vtkSMProxy*, unsigned long initializationTimeStamp);
294 
295 private:
297  void operator=(const vtkSMParaViewPipelineController&) VTK_DELETE_FUNCTION;
299 
308  void HandleLZ4Issue(vtkSMProxy* renderViewSettings);
309 
310  class vtkInternals;
311  vtkInternals* Internals;
312 };
313 
314 #endif
bool InitializeProxy(vtkSMProxy *proxy)
Convenience method to call PreInitializeProxy and PostInitializeProxy.
virtual bool RegisterOpacityTransferFunction(vtkSMProxy *proxy)
void PrintSelf(ostream &os, vtkIndent indent)
vtkSMSession is the default ParaView session.
Definition: vtkSMSession.h:35
superclass for most server manager classes
Definition: vtkSMObject.h:31
The vtkSMSessionProxyManager is esponsible for creating and managing proxies for a given session...
virtual bool RegisterPipelineProxy(vtkSMProxy *proxy)
static vtkSMObject * New()
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:152
virtual bool RegisterColorTransferFunctionProxy(vtkSMProxy *proxy)
virtual bool RegisterViewProxy(vtkSMProxy *proxy)
Use this method after PreInitializeProxy() and PostInitializeProxy() to register a view proxy with th...